Python 参数是什么;索引“;在Pandas.DataFrame.rename方法中?
Pandas DataFrame有一个重命名方法,该方法使用名为“index”的参数 我不理解文档中对参数的描述: 具体来说,我使用它就像文档网页上的示例:Python 参数是什么;索引“;在Pandas.DataFrame.rename方法中?,python,pandas,dataframe,rename,col,Python,Pandas,Dataframe,Rename,Col,Pandas DataFrame有一个重命名方法,该方法使用名为“index”的参数 我不理解文档中对参数的描述: 具体来说,我使用它就像文档网页上的示例: df.rename(index=str, columns={"A": "a", "B": "c"}) 我理解结果,但我不明白为什么要设置index=str 索引参数用于什么? 为什么示例设置了index=str?索引参数用于重命名索引,以示例中的df为例: df.index # RangeIndex(start=0, stop=3, s
df.rename(index=str, columns={"A": "a", "B": "c"})
我理解结果,但我不明白为什么要设置index=str
索引
参数用于什么?
为什么示例设置了index=str
?索引参数用于重命名索引,以示例中的df为例:
df.index
# RangeIndex(start=0, stop=3, step=1)
df.rename(index=str).index # converts index from int to str
# Index(['0', '1', '2'], dtype='object')
这是因为在rename函数中,还可以将函数传递给index和columns参数,该参数将应用于index和columns中的每个元素。这里str充当一个函数,将每个索引从int转换为str对象
另一个例子:
df.rename(index=lambda x: x*2).index
# Int64Index([0, 2, 4], dtype='int64')
好的,但是当我想重命名一个列时,为什么我们需要将索引中的每个元素转换为
str
?为什么df.rename(columns={A:“A”,“B:“c”})
不起作用呢?我相信文档试图告诉您如何使用索引参数(虽然可能不是一个清晰的方法),因为df.rename(columns={A:“A”,“B:“c”})
应该可以很好地工作。@user3731622您在注释中显示rename()
的方式实际上是有效的。您不需要指定索引,它是可选的。好的,谢谢。我一定有另一个问题b/c我想我试过了,但没用df.rename(列={“A”:“A”,“B”:“c”})
可以工作。