Как найти пересечение серий в пандах
Вы можете использовать следующий базовый синтаксис, чтобы найти пересечение двух серий в пандах:
set (series1) & set ( series2 )
Помните, что пересечение двух наборов — это просто набор значений, которые связываются в обоих наборах.
Следующие примеры показывают, как на практике рассчитать пересечение между сериями pandas.
Пример 1: вычислить пересечение двух серий Pandas
Следующий код показывает, как вычислить пересечение двух серий pandas:
import pandas as pd #create two Series series1 = pd. Series ([4, 5, 5, 7, 10, 11, 13]) series2 = pd. Series ([4, 5, 6, 8, 10, 12, 15]) #find intersection between the two series set (series1) & set (series2) {4, 5, 10}
В результате получается набор, содержащий значения 4 , 5 и 10 .
Это единственные три значения, которые относятся как к первой, так и ко второй серии.
Также обратите внимание, что этот синтаксис работает с сериями pandas, содержащими строки:
import pandas as pd
#create two Series
series1 = pd. Series (['A', 'B', 'C', 'D', 'E'])
series2 = pd. Series (['A', 'B', 'B', 'B', 'F'])
#find intersection between the two series
set (series1) & set (series2)
{'A', 'B'}
Единственные строки, которые принадлежат как первой, так и второй серии, — это A и B.
Пример 2: вычислить пересечение трех серий Pandas
Следующий код показывает, как вычислить пересечение трех серий панд:
import pandas as pd #create three Series series1 = pd. Series ([4, 5, 5, 7, 10, 11, 13]) series2 = pd. Series ([4, 5, 6, 8, 10, 12, 15]) series3 = pd. Series ([3, 5, 6, 8, 10, 18, 21]) #find intersection between the three series set (series1) & set (series2) & set (series3) {5, 10}
В результате получается набор, содержащий значения 5 и 10 .
Это единственные значения, присутствующие во всех трёх сериях.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции с сериями в pandas:
Как преобразовать серию Pandas в DataFrame
Как преобразовать серию Pandas в массив NumPy
Как объединить две или более серий в Pandas