【发布时间】:2020-09-03 22:42:35
【问题描述】:
我这样做了,但我没有得到预期的结果,因为它没有按要求分组
df1=pd.read_csv('https://cocl.us/sanfran_crime_dataset')
df1.drop(df1.columns.difference(['PdDistrict']),1,inplace=True)
df1=df1.rename(columns={'PdDistrict':'Neighborhood'})
df1['Counts']=df1.groupby('Neighborhood')['Neighborhood'].count()
df1
第 4 行代码有什么问题?如果我不将 groupby 分配为列,则 groupby 可以正常工作,但是当我将其分配为列时,它甚至不起作用。
预期输出
【问题讨论】:
-
请输入您的代码、数据和输出。不要不要将它们粘贴为图片。
-
我已经粘贴了我使用的代码。请帮忙!
-
原表行数为150500,结果行数为9,你期望它们如何匹配?
-
当我简单地这样做时: df1.groupby('Neighborhood')['Neighborhood'].count() 它将 150500 行分组为 9 行,并在它旁边显示我想要的频率.但是当我将此操作分配给添加名为“Counts”的新列时,我无法做到。
-
您希望如何将 150,500 行表和 9 行表并排组合?
标签: python python-3.x pandas dataframe pandas-groupby