使用mapper时,pandas DataFrame.rename意外的关键字参数"axis"

Dan*_*Dan 7 python pandas

大熊猫文档之后,我尝试了以下内容(逐字逐出文档):

df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]})
df.rename(str.lower, axis='columns')
Run Code Online (Sandbox Code Playgroud)

但我收到了错误

TypeError:rename()得到一个意外的关键字参数"axis"

我也试过了

df.rename(mapper=str.lower, axis='columns')
Run Code Online (Sandbox Code Playgroud)

但后来我得到:

TypeError:rename()得到了一个意外的关键字参数"mapper"

我在看旧版本的文档吗?

cs9*_*s95 8

我在看旧版本的文档吗?

不,事实恰恰相反.您正在查看最新版本(0.21截至目前).我很确定你有一个旧版本的熊猫.

在旧版本中,一些函数用于axis指定索引/列,而其他函数使用index=...columns=....为了缓解这种情况,开发人员对许多API进行了彻底检查,以使它们彼此更加一致.rename是其中之一.

您所使用的代码在最新版本上运行得很好,但不是更老的代码,因为mapper并且axis已经引入0.21.

作为参考,在旧版本中,以下替代方案都有效 -

df.columns = df.columns.str.lower()
Run Code Online (Sandbox Code Playgroud)

和,

df = df.rename(columns=dict(zip(df.columns, df.columns.str.lower())))
Run Code Online (Sandbox Code Playgroud)