Pandas的Apply函数具体使用

  • Post category:Python

Pandas中的Apply函数是一种非常有用的函数,它能够执行一些复杂的操作,帮助我们更方便地操作数据。下面我们来详细讲解如何使用Pandas的Apply函数。

Apply函数的基本使用

Apply函数的基本语法如下:

df.apply(func, axis=0)

其中,df是指我们的数据框,func是我们要执行的函数,axis=0表示按列执行函数,axis=1表示按行执行函数。

我们通常会使用lambda表达式定义一个函数作为Apply函数的参数。例如,以下代码对数据框df中的每一列进行求和操作,将结果保存到新的数据框df_sum中。

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df_sum = df.apply(lambda x: sum(x))

Apply函数的高级使用

除了基本语法外,Apply函数还有一些高级用法,以下是两个示例:

示例一:对每个元素进行操作

有时我们需要对数据框中的每个元素进行操作。在这种情况下,我们可以使用applymap()函数。以下代码将数据框df中的每个元素都乘以2。

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df_double = df.applymap(lambda x: x*2)

示例二:根据列的值生成新的列

有时我们需要根据某一列的值生成一些新的列,可以使用apply()函数。以下代码根据数据框df中的‘b’列的值,生成新的列‘b_square’。

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df['b_square'] = df['b'].apply(lambda x: x**2)

完整示例程序

import pandas as pd

# 示例1:对每个元素进行操作
df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df_double = df.applymap(lambda x: x*2)
print(df_double)

# 示例2:根据列的值生成新的列
df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df['b_square'] = df['b'].apply(lambda x: x**2)
print(df['b_square'])

以上就是Pandas的Apply函数的具体使用攻略,希望对您有所帮助。