我有一个创建的数据帧:
df1 = pd.DataFrame({'key': ['b','b','a','c','b'],'year':[2000,2001,1998,1999,2000]})
具体如下:
key year 0 b 2000 1 b 2001 2 a 1998 3 c 1999 4 a 1998 5 a 1998 6 b 2000
key year frequency b 2000 2 b 2001 1 a 1998 3 c 1999 1
解决方法
通过做
df1.groupby(['key','year']).size().reset_index()
你得到…
key year 0 0 a 1998 3 1 b 2000 2 2 b 2001 1 3 c 1999 1
如您所见,该列尚未命名,因此您可以执行类似的操作
mydf = df1.groupby(['key','year']).size().reset_index() mydf.rename(columns = {0: 'frequency'},inplace = True) mydf key year frequency 0 a 1998 3 1 b 2000 2 2 b 2001 1 3 c 1999 1
(如果需要,可以省略.reset_index(),但在这种情况下,您需要将mydf转换为数据帧,如下所示:mydf = pd.DataFrame(mydf),然后才重命名列)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。