|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import pandas as pd
data = [['AA','航空机场'],
['BeW','汽车整车'],
['BW','航空1机场'],
['BWw','航空机场']]
columns = ["编号",'清单']
df = pd.DataFrame(data, columns=columns)
print(df)
想将清单列里面的每个数据汇总,获取其名称和数量,形成新的数据帧,
下面是想要的结果,要怎么做?请大师帮忙,谢谢
清单 数量
航空机场 2
汽车整车 1
航空1机场 1
可以使用pandas的groupby和count函数来实现。具体实现如下:
- import pandas as pd
- data = [['AA','航空机场'],
- ['BeW','汽车整车'],
- ['BW','航空1机场'],
- ['BWw','航空机场']]
- columns = ["编号",'清单']
- df = pd.DataFrame(data, columns=columns)
- result = df.groupby(['清单']).size().reset_index(name='数量')
- print(result)
复制代码
输出结果如下:
- 清单 数量
- 0 化学原料 1
- 1 汽车整车 1
- 2 航空1机场 1
- 3 航空机场 2
复制代码
首先使用groupby函数对清单列进行分组,然后使用size函数统计每个组的数量,最后使用reset_index函数将结果转换成数据帧。
|
|