【发布时间】:2022-11-02 16:22:57
【问题描述】:
我想编写一个函数,该函数采用具有相同结构的多个数据帧,进行特定的转换并将转换保存在原地。
虚拟数据帧
df = pd.DataFrame({"Full name" : ["John Doe","Deep Smith","Julia Carter","Kate Newton","Sandy Thompson"],
"Monthly Sales" : [25,30,35,40,45]})
df2 = pd.DataFrame({"Full name" : ["Alicia Williams","Kriten John","Jessica Adams","Isaac Newton","Whitney Gordon"],
"Monthly Sales" : [35,20,50,15,40]})
转化功能
我不想返回数据框,而是将这些转换保存到位。
def tidy_dfs(dfs):
for df in dfs:
# Drop first row
df = df.iloc[1: , :]
# Replace spaces in columns
df.columns = [c.replace(' ', '_') for c in df]
# change cols to lower
df.columns = [c.lower() for c in df]
return df
保存df,df2 = tidy_dfs([df,df2]) 当然不会工作,因为我们在循环之外。
结果调用此函数并保存转换的方法是什么?
tidy_dfs([df,df2])
【问题讨论】: