python - 使用 lamdba 函数根据其他列将列添加到 df > 列已生成,但值为 1:全部相同,2:内存编号
问题描述
我找到了一些答案,但他们没有给我正确的答案。
我有一个 df:lijst_df。看起来像这样(总共 355 行):
gemeente totaal 2016
0 AA EN HUNZE 64122320
1 AALSMEER 63209533
2 AALTEN 68151665
3 ACHTKARSPELEN 65699126
我想添加一个新列。新列中的值成为所有现有列中总和的百分比:total 2016。
我写了这个。不给出错误,创建我想要的新列,但给出的值可以在代码下方看到:
for index, value in lijst_df.gemeente.items():
lijst_df['% van totaal'] = lambda x: (df['totaal 2016']) / (int((lijst_df['totaal 2016'].sum()))) * 100
输出:
gemeente totaal 2016 % van totaal
0 AA EN HUNZE 64122320 <function <lambda> at 0x000001D5A5C029D0>
1 AALSMEER 63209533 <function <lambda> at 0x000001D5A5C029D0>
2 AALTEN 68151665 <function <lambda> at 0x000001D5A5C029D0>
3 ACHTKARSPELEN 65699126 <function <lambda> at 0x000001D5A5C029D0>
显然出了点问题……我想念什么?再次感谢!!
解决方案
这更像是sum
问题
# when you with pandas we should try not use for loop
df['% van totaal'] = df['totaal 2016'] / df['totaal 2016'].sum()
推荐阅读
- elasticsearch - 使用非规范化或连接字段对弹性搜索数据库建模
- java - Android/Java,如何在某些字段中处理带有换行符和逗号的csv文件?
- python - 在 Django 和 MySQL 中为每个模型/表设置排序规则和字符集
- python - AttributeError:“NoneType”对象没有属性“next”
- mediawiki - 如何在不登录的情况下使用域用户名?
- firefox - Firefox中不同的Referer Header设置导致网站损坏
- quill - Quill中图像标签的数据属性
- php - 为什么我的 Wordpress 网站上的所有链接都显示主页?
- sql-server - 如何从逗号分隔列表中创建多条记录
- excel - 如何将最近添加的单元格值从不同的工作表复制到活动的工作表?