熊猫中的方法链接:str.replace 不起作用



我想在 excel 文件中读取,并使用方法链接将列名转换为小写并将任何空格替换为 _。 以下代码运行正常

def supp_read(number):
filename = f"supplemental-table{number}.xlsx"
df = (pd.read_excel(filename,skiprows=5)
.rename(columns = str.lower))
return df

但是下面的代码没有

def supp_read(number):
filename = f"supplemental-table{number}.xlsx"
df = (pd.read_excel(filename,skiprows=5)
.rename(columns = str.lower)
.rename(columns = str.replace(old=" ",new="_")))
return df

添加str.replace行后,出现以下错误:No value for argument 'self' in unbound method call.有人可以阐明我可以做些什么来修复此错误以及为什么上述方法不起作用吗?

此外,当我使用str.lower()时,我会收到相同的错误。为什么str.lower有效但不str.lower()

这是我经常使用的不同语法:

def supp_read(number):
filename = f"supplemental-table{number}.xlsx"
df = pd.read_excel(filename,skiprows=5)
df.columns = df.columns.str.lower().replace(" ", "_")
return df

最新更新