Python中文
首页
教程
问答
标签
搜索
登录
注册
在Pandas中添加新的DataFrame列不起作用
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>所以我有一个熊猫数据框,其中包含了2001年亚利桑那响尾蛇的击球统计数据。我对Python/Pandas非常陌生,所以我尝试使用类似于以下的lambda函数添加一些列</p> <pre><code>PA_lambda = lambda row: row.AB + row.BB + row.HBP + row.SH + row.SF OBP_lambda = lambda row: (row.H + row.BB + row.HBP) / (row.PA) if row.PA > 0 else 'NaN' AVG_lambda = lambda row: row.H / row.AB if row.AB > 0 else 'NaN' </code></pre> <p>以后,我想处理更多非常相似的数据,并且需要添加这些列,将来还要添加更多。因此,我制作了一个单独的python模块,其中包含函数、一个包含每个函数及其应具有的列名的列表,以及一个迭代列表并将列添加到数据帧末尾的函数:</p> <pre><code>import pandas as pd PA_lambda = lambda row: row.AB + row.BB + row.HBP + row.SH + row.SF OBP_lambda = lambda row: (row.H + row.BB + row.HBP) / (row.PA) if row.PA > 0 else 'NaN' AVG_lambda = lambda row: row.H / row.AB if row.AB > 0 else 'NaN' stat_functions = [['pa', PA_lambda], ['obp',OBP_lambda], ['avg', AVG_lambda]] def format_df(df): for func in stat_functions: df['func[0]'] = df.apply(func[1], axis=1) </code></pre> <p>我不确定是否需要pandas模块,但每当我将模块导入Jupyter笔记本并尝试调用format_df时,只有第一个函数<code>PA_lambda</code>运行,并将其保存到列标签“func”下的数据帧中。我认为创建一个包含列名和函数本身的列表是可行的,但一旦它尝试将OBP_lambda应用于df,它就会返回错误</p> <pre><code>AttributeError: 'Series' object has no attribute 'PA' </code></pre> <p>抱歉,这有点长,这是我在这里的第一篇文章,但如果你有一个解决方案,我非常渴望学习</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>在df中创建新列时,需要正确使用func项的label元素</p> <p>像这样:</p> <pre><code>for func in stat_functions: df[func[0]] = df.apply(func[1], axis=1) </code></pre> <p>请注意,在数据帧中创建新列时,此代码是如何引用<code>func[0]</code>的值而不是字符串<code>'func[0]'</code></p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在PyObj中使用respondsToSelector和performSelector
8 回答
如何在pyobj中停止线程
7 回答
如何在pyobj中生成线程
9 回答
如何在pyodbc中为记录集指定游标类型?
10 回答
如何在pyodbc中从用户处获取表名,同时避免SQL注入?
6 回答
如何在pyodbc中使用executemany运行多个SELECT查询
8 回答
如何在pyodbc中同时在n个游标上并行运行n个进程?
2 回答
如何在pyodbc中控制连接池的大小?
2 回答
如何在pyodbc中自动调用fetchall()而不进行异常处理?
5 回答
如何在pyODBC查询中参数化日期戳?
5 回答
如何在pyodbc输出转换器函数中解压sqlserver DATETIME?
6 回答
如何在pyodb中安装所有驱动程序
3 回答
如何在pyodb嵌套循环中调用不同的查询
6 回答
如何在pyomo.environ公司modu装置
7 回答
如何在Pyomoconstraints中建模逻辑或量词
9 回答
如何在Pyomo中为约束使用数组
10 回答
如何在pyomo中使用集和范围集的多级索引?
10 回答
如何在PYOMO中分配伪二进制变量
7 回答
如何在Pyomo中创建OR约束?
10 回答
如何在Pyomo中动态地将变量添加到列表中?
2 回答