Python Pandas DataFrame 用户定义函数转换
Python Pandas DataFrame User Defined Function Transformations
我有几个 DataFrame,我正在清理数据。以下代码独立工作(在函数之外),但是,我必须将它应用于许多 DataFrame 并希望通过用户定义的函数清理此过程。
您能否帮助修复以下问题,以便它可以用于我的所有数据帧。
def format_df(df):
df.columns = df.columns.str
df.dropna(thresh=1, axis='columns',inplace = True)
df.dropna(thresh=80,axis=0,inplace = True)
df.columns = df.iloc[0]
df = df.iloc[1:].reset_index(drop=True)
df.columns = df.columns.str.replace(' ','',regex=False)
df.columns = df.columns.str.replace('($)','',regex=False)
df.columns = df.columns.str.replace('(Y/N)','Flag',regex=False)
df.columns = df.columns.str.replace('(x)','',regex=False)
df.columns = df.columns.str.replace('-','',regex=False)
return df
行 df.columns = df.columns.str
不会到 运行 因为 df.columns.str 是一个字符串方法而 df.columns 是一个索引。相反,您可以使用 astype 方法:
df.columns = df.columns.astype(str)
我有几个 DataFrame,我正在清理数据。以下代码独立工作(在函数之外),但是,我必须将它应用于许多 DataFrame 并希望通过用户定义的函数清理此过程。 您能否帮助修复以下问题,以便它可以用于我的所有数据帧。
def format_df(df):
df.columns = df.columns.str
df.dropna(thresh=1, axis='columns',inplace = True)
df.dropna(thresh=80,axis=0,inplace = True)
df.columns = df.iloc[0]
df = df.iloc[1:].reset_index(drop=True)
df.columns = df.columns.str.replace(' ','',regex=False)
df.columns = df.columns.str.replace('($)','',regex=False)
df.columns = df.columns.str.replace('(Y/N)','Flag',regex=False)
df.columns = df.columns.str.replace('(x)','',regex=False)
df.columns = df.columns.str.replace('-','',regex=False)
return df
行 df.columns = df.columns.str
不会到 运行 因为 df.columns.str 是一个字符串方法而 df.columns 是一个索引。相反,您可以使用 astype 方法:
df.columns = df.columns.astype(str)