我正在学习熊猫,我想为我的数据创建一个新的列(我使用的是国家名称数据)。在
我只是用了1880年和1881年。在
name sex births year
0 Mary F 7065 1880
1 Anna F 2604 1880
2 Emma F 2003 1880
3 Elizabeth F 1939 1880
4 Worthy M 5 1880
5 Wright M 5 1880
6 York M 5 1880
7 Zachariah M 5 1880
8 Mary F 6919 1881
9 Anna F 2698 1881
10 Emma F 2034 1881
11 Elizabeth F 1852 1881
12 Wilton M 5 1881
13 Wing M 5 1881
14 Wood M 5 1881
15 Wright M 5 1881
我正在创建总出生数据:
^{pr2}$它给出了:
sex F M
year
1880 13611 20
1881 13503 20
现在,我想在数据中创建另一列,我将把每年的出生人数与每年总出生人数的比率放在一起。在
例如:
name sex births year ratio
Mary F 7065 1880 7065/13611
Wilton M 5 1881 5/13503
我正在尝试:
new = (names.groupby(['year', 'sex'])).assign(ratio= (names.groupby(['year','sex'])).names['births'] / total_births )
它给出了:
AttributeError: Cannot access callable attribute 'assign' of 'DataFrameGroupBy' objects, try using the 'apply' method
或者
我试图打破:
ratio = names.groupby(['year','sex'])
ratio1 = ratio.loc[:,'births']
但它给出了:
AttributeError: Cannot access callable attribute 'loc' of 'DataFrameGroupBy' objects, try using the 'apply' method
我想您需要^{} 与^{}
^{pr2}$sum
,然后除以{a3}:带^{} 的溶液:
相关问题 更多 >
编程相关推荐