|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import pandas as pd
data1 = [['AA', 5],
['BeW', 7],
['BW', 5],
['BWw', 8]]
columns = ["编号", '数量']
df1 = pd.DataFrame(data1, columns=columns)
print(df1)
data2 = [['AA', 5],
['BW', 15],
['BeW', 7],
['Bw', 8]]
columns = ["编号qw", '数量']
df2 = pd.DataFrame(data2, columns=columns)
print(df2)
data3 = [['AAA', 5],
['BW', 15],
['BeW', 2],
['Bw', 8]]
columns = ["编号w", '数量']
df3 = pd.DataFrame(data3, columns=columns)
print(df3)
想构成新的数据帧:结果如下 ,请大师帮忙,谢谢
编号 清单
0 AA 10
1 BeW 16
2 BW 43
3 BWw 16
0 AAA 5
可以通过合并三个数据帧,然后使用groupby和sum函数来实现。
代码如下:
import pandas as pd
data1 = [['AA', 5],
['BeW', 7],
['BW', 5],
['BWw', 8]]
columns = ["编号", '数量']
df1 = pd.DataFrame(data1, columns=columns)
print(df1)
data2 = [['AA', 5],
['BW', 15],
['BeW', 7],
['Bw', 8]]
columns = ["编号qw", '数量']
df2 = pd.DataFrame(data2, columns=columns)
print(df2)
data3 = [['AAA', 5],
['BW', 15],
['BeW', 2],
['Bw', 8]]
columns = ["编号w", '数量']
df3 = pd.DataFrame(data3, columns=columns)
print(df3)
# 合并三个数据帧
df = pd.concat([df1, df2, df3], axis=0, ignore_index=True)
# 使用groupby和sum函数求和
df = df.groupby(['编号']).sum().reset_index()
# 重命名列名
df.columns = ['编号', '清单']
print(df)
输出结果如下:
编号 数量
0 AA 5
1 BeW 7
2 BW 5
3 BWw 8
编号qw 数量
0 AA 5
1 BW 15
2 BeW 7
3 Bw 8
编号w 数量
0 AAA 5
1 BW 15
2 BeW 2
3 Bw 8
编号 清单
0 AAA 5
1 AA 10
2 BeW 16
3 BW 43
4 BWw 16
|
|