📜  Python|熊猫 Series.combine()

📅  最后修改于: 2022-05-13 01:55:24.294000             🧑  作者: Mango

Python|熊猫 Series.combine()

Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas就是其中之一,它使导入和分析数据变得更加容易。

Pandas Series.combine()是一系列数学运算方法。这用于将两个系列合二为一。输出系列的形状与调用者系列相同。元素由作为参数传递给combine()方法的函数决定。两个系列的形状必须相同,否则会引发错误。

示例 #1:

在此示例中,使用 .Series() 方法制作了两个列表并将其转换为熊猫系列。使用 lambda 生成一个函数,该函数检查两个系列中哪个值较小,并返回较小的值。

# importing pandas module
import pandas as pd
  
# creating first series
first =[1, 2, 5, 6, 3, 7, 11, 0, 4]
  
# creating second series
second =[5, 3, 2, 1, 3, 9, 21, 3, 1]
  
# making series
first = pd.Series(first)
  
# making seriesa
second = pd.Series(second)
  
# calling .combine() method
result = first.combine(second, (lambda x1, x2: x1 if x1 < x2 else x2))
  
# display
result

输出:
如输出图像所示,返回的系列在两个系列中的值都较小。
示例 #2:

在此示例中,也使用Numpy.nan方法传递 Null 值。由于系列包含空值,因此将 5 传递给 fill_value 参数以将空值替换为 5。传递了一个 lambda函数,该函数将比较两个系列中的值并返回较大的值。

# importing pandas module
import pandas as pd
  
# importing numpy module
import numpy as np
  
# creating first series
first =[1, 2, np.nan, 5, 6, 3, np.nan, 7, 11, 0, 4, 8]
  
# creating second series
second =[5, 3, 2, np.nan, 1, 3, 9, 21, 3, np.nan, 1, np.nan]
  
# making series
first = pd.Series(first)
  
# making seriesa
second = pd.Series(second)
  
# calling .combine() method
result = first.combine(second, func =(lambda x1, x2: x1 if x1 > x2 else x2), fill_value = 5)
  
# display
result

输出:
如输出所示,在组合系列之前,系列中的 NaN 值已替换为 5。

0      5.0
1      3.0
2      2.0
3      5.0
4      6.0
5      3.0
6      9.0
7     21.0
8     11.0
9      5.0
10     4.0
11     8.0
dtype: float64