首页 > 解决方案 > 在多个熊猫数据帧上应用相同的函数来获取数据帧

问题描述

我正在尝试将相同的函数应用于多个熊猫数据框,但结果是一个对象,而我需要数据框作为结果。我也尝试过使用“广播”,但这并没有太大帮助

以下是基本上为索引列分配名称的函数:

def assign_name(name_df):
  name_df.index.name="Fields"

&我将其应用于唯一性和偏度数据帧,该数据帧基本上由每个字段和偏度的唯一值数量组成:

uniques,skewness = (df.apply(assign_name)for df in [uniques,skewness])

唯一性和偏度的数据类型是对象:

dtype: object

任何人都可以帮我解决这个问题吗?

标签: pythonpandasapply

解决方案


函数保持不变,只是添加了一个返回: def assign_name(name_df): name_df.index.name="Fields" return(name_df) 将所有数据帧存储为列表并在列表上应用函数:
list_df = [uniques, skewness, df1_transposed,coltypes] list_df = [df.pipe(assign_name) for df in list_df] 像访问列表元素一样访问每个数据帧:list_df[3]


推荐阅读