首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么pandas 1.1中更改了pandas apply()函数?

为什么pandas 1.1中更改了pandas apply()函数?
EN

Stack Overflow用户
提问于 2020-09-03 11:38:54
回答 1查看 31关注 0票数 0

考虑以下示例:

代码语言:javascript
运行
复制
import pandas as pd
def test_func(row):
    row['c'] = str(row['a']) + str(row['b'])
    row['d'] = row['a'] + 1
    return row

df = pd.DataFrame({'a': [1,2,3], 'b': ['i','j', 'k']})
df.apply(test_func, axis=1)

上面的代码在pandas 1.1.0返回上运行:

代码语言:javascript
运行
复制
   a  b   c  d
0  1  i  1i  2
1  1  i  1i  2
2  1  i  1i  2

而在pandas 1.0.5中,它返回:

代码语言:javascript
运行
复制
   a   b    c  d
0  1   i   1i  2
1  2   j   2j  3
2  3   k   3k  4

为什么pandas在两个版本中更改了apply()函数的行为,而没有更新文档?

EN

回答 1

Stack Overflow用户

发布于 2020-09-03 13:36:59

在以前的版本中,pd.apply()将多次计算第一行/第一列。

而在v1.1.0中,它只对第一行/第一列求值一次。

它在Pandas Doc: Whats New v1.1.0上列出了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63716448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档