将函数应用于整个DataFrame的Pandas方法

时间:2018-06-24 07:34:00

标签: python pandas function dataframe apply

我创建了一个函数,该函数需要传递数据框以获得形状并返回df.head()

    def shape_of_df(df):
        tup = df.shape
        print('Shape of df  is Rows :{0[0]},column:{0[1]}'.format(tup))
        return df.head()

现在,当我使用items.apply(shape_of_df)调用函数时,出现错误,但是如果我调用函数并将df作为参数传递,则可以正常工作。请让我知道,当我使用df.apply()在文档中找不到

时,我缺少了一些非常基本的内容
   shape_of_df(items) # this works fine prints shape and df.head()

1 个答案:

答案 0 :(得分:1)

文档的第一行说明DataFrame.apply将“沿DataFrame的轴应用功能”(即沿行或沿列)。

您想在整个dataFrame上应用函数,因此,如果要链接函数,则应查看DataFrame.pipe。用法类似:

items.pipe(shape_of_df)

只要满足shape_of_df接受一个DataFrame作为输入并相应地返回一个作为输出的条件。