df.apply()如何给func传参数,请举例
时间: 2024-05-04 21:17:45 浏览: 87
有两种方法可以给 `df.apply()` 中的 `func` 函数传递参数:
1. 使用 `args` 参数:将参数以元组的形式传递给 `args` 参数。
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 定义一个函数,将DataFrame中的每个元素乘以参数x
def multiply_by_x(x, element):
return x * element
# 使用apply,将每个元素乘以3
df.apply(lambda x: multiply_by_x(3, x), args=(3,))
```
输出结果为:
```
A B
0 9 12
1 18 15
2 27 18
```
2. 使用 `**kwargs` 参数:将参数以字典的形式传递给 `**kwargs` 参数。
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 定义一个函数,将DataFrame中的每个元素乘以参数x
def multiply_by_x(element, x=1):
return x * element
# 使用apply,将每个元素乘以3
df.apply(lambda x: multiply_by_x(x, x=3))
```
输出结果为:
```
A B
0 3 12
1 6 15
2 9 18
```
阅读全文