本文所用数据表格内容如下:
1.apply()函数与applymap()函数
python中有一个map函数,在DataFrame中有两个与map函数类似的函数,即apply()函数与applymap()函数
1.1 apply()函数
apply()函数主要用于对DataFrame中的某一列或者某一行的元素执行相同的操作
import pandas as pd
user_df = pd.read_excel(r'C:\Users\viruser.v-desktop\Desktop\用户信息表.xlsx')
print(user_df['7月销量'].apply(lambda x: x*2))
result:
0 130
1 90
2 24
3 120
4 112
Name: 7月销量, dtype: int64
1.2 applymap()函数
applymap()函数主要用于对DataFrame中的每一个元素都执行相同的操作
user_df = pd.read_excel(r'C:\Users\viruser.v-desktop\Desktop\用户信息表.xlsx')
print(user_df.applymap(lambda x: x*2))
result:
用户id 等级 区域 城市 7月销量 8月销量 9月销量
0 2 AA 华东华东 上海上海 130 134 156
1 4 BB 华中华中 武汉武汉 90 108 116
2 6 BB 东北东北 大连大连 24 68 92
3 8 DD 华南华南 广东广东 120 144 156
4 10 CC 华中华中 长沙长沙 112 134 148
2.插入新的行或列
2.1 插入行
python中没有专门插入行的方法,可以把带插入的行看作一个新的表,让将两个表进行纵向合并,关于表的纵向拼接,可以参考pandas系列之表的纵向拼接
2.2 插入列
2.2.1 使用insert方法插入
python中有insert方法刻印用来直接插入列,insert()方法要指明插入的位置、插入后新的列名以及要插入的数据
import pandas as pd
user_df = pd.read_excel(r'C:\Users\viruser.v-desktop\Desktop\用户信息表.xlsx')
user_df.insert(2, '商品类别', ['水果', '图书', '五金', '家电', '首饰'])
print(user_df)
result:
用户id 等级 商品类别 区域 城市 7月销量 8月销量 9月销量
0 1 A 水果 华东 上海 65 67 78
1 2 B 图书 华中 武汉 45 54 58
2 3 B 五金 东北 大连 12 34 46
3 4 D 家电 华南 广东 60 72 78
4 5 C 首饰 华中 长沙 56 67 74
2.2.2 使用索引插入
import pandas as pd
user_df = pd.read_excel(r'C:\Users\viruser.v-desktop\Desktop\用户信息表.xlsx')
user_df['商品类别'] = ['水果', '图书', '五金', '家电', '首饰']
print(user_df)
result:
用户id 等级 区域 城市 7月销量 8月销量 9月销量 商品类别
0 1 A 华东 上海 65 67 78 水果
1 2 B 华中 武汉 45 54 58 图书
2 3 B 东北 大连 12 34 46 五金
3 4 D 华南 广东 60 72 78 家电
4 5 C 华中 长沙 56 67 74 首饰