我有多个数据框:
df1, df2, df3,..., dfn
他们拥有相同类型的数据,但来自无法合并的不同描述符组。现在我需要手动将相同的函数应用于每个数据框。
如何将相同的函数应用于多个数据框?
pipe
+ 列表推导式如果你的数据框包含相关数据,就像这个例子一样,你应该将它们存储在一个list
中(如果数字排序足够),或者在一个dict
中(如果你需要为每个数据框提供自定义标签)。然后,你可以通过列表推导式将每个数据框通过函数foo
传递给pipe
。
df_list = [df1, df2, df3]
df_list = [df.pipe(foo) for df in df_list]
然后通过 df_list[0]
, df_list[1]
等访问您的数据框。
df_dict = {'first': df1, 'second': df2, 'third': df3}
df_dict = {k: v.pipe(foo) for k, v in df_dict.items()}
然后通过 df_dict['first']
,df_dict['second']
等方式访问您的数据框。
concat
到单个数据框中,但如果列不同,则没有真正“智能”的方法来执行此操作:df1, df2, df3 = (df.apply(...) for df in [df1, df2, df3]) # or either .map or .applymap