我有一个熊猫数据框架,看起来像这样:
Site City ... Year_Built Heritage_Site
a Paris ... 1887 Yes
b London ... 1858 No
c Paris ... 1202 Yes
d New York ... 1930 Yes 然后,我使用以下语句来计算每个城市的一些变量的平均值
df_mean = df.groupby('City').mean()然而,我还想在第二个数据帧的末尾添加一列,它基本上统计了每个城市出现“Yes”的次数(在Heritage_Count列中)。如下所示:
City ... Heritage_Count
Paris ... 4
London ... 2
New York ... 0执行此操作的最有效方法是什么?
发布于 2018-01-16 08:06:20
IIUC
df.groupby('City').agg({'Year_Built':'mean','Heritage_Site':lambda x : sum(x=='Yes')})
Out[489]:
Year_Built Heritage_Site
City
London 1858.0 0
NewYork 1930.0 1
Paris 1544.5 2https://stackoverflow.com/questions/48272318
复制相似问题