Як використовувати corrwith() у pandas (з прикладами)
Ви можете використовувати функцію corrwith() у pandas, щоб обчислити попарну кореляцію між числовими стовпцями з однаковою назвою в двох різних DataFrames pandas.
Ця функція використовує такий базовий синтаксис:
df1. corrwith (df2)
Примітка . Ця функція відрізняється від функції corr() , яка обчислює кореляцію між двома числовими стовпцями в одному DataFrame.
У наступному прикладі показано, як використовувати функцію corrwith() на практиці.
Приклад: як використовувати corrwith() у Pandas
Припустімо, що ми маємо наступні два panda DataFrames:
import pandas as pd #create first DataFrame df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'], ' points ': [18, 22, 29, 25, 14, 11], ' assists ': [4, 5, 5, 4, 8, 12], ' rebounds ': [10, 6, 4, 6, 3, 5]}) print (df1) team points assists rebounds 0 to 18 4 10 1 B 22 5 6 2 C 29 5 4 3 D 25 4 6 4 E 14 8 3 5 F 11 12 5 #create second DataFrame df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'], ' points ': [22, 25, 27, 35, 25, 20], ' assists ': [15, 13, 8, 8, 5, 8], ' rebs ': [4, 11, 12, 8, 7, 10]}) print (df2) team points assists rebs 0 A 22 15 4 1 B 25 13 11 2 C 27 8 12 3 D 35 8 8 4 E 25 5 7 5 F 20 8 10
Ми можемо використовувати функцію corrwith() , щоб обчислити кореляцію між числовими стовпцями з однаковими іменами в двох DataFrames:
#calculate correlation between numeric columns with same names in each DataFrame
df1. corrwith (df2)
points 0.677051
assists -0.478184
NaN rebounds
rebs NaN
dtype:float64
З результату ми бачимо:
- Кореляція між значеннями стовпців точок двох DataFrames становить 0,677 .
- Кореляція між значеннями допоміжних стовпців у двох DataFrames становить -0,478 .
Оскільки назви стовпців bounces і rebs не існували в обох DataFrames, значення NaN повертається для кожного з цих стовпців.
Примітка №1 : за умовчанням функція corrwith() обчислює коефіцієнт кореляції Пірсона між стовпцями, але ви також можете вказати method=’kendall’ або method=’spearman’, щоб обчислити інший тип коефіцієнта замість кореляції.
Примітка №2 : Ви можете знайти повну документацію для функції corrwith() тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:
Як розрахувати кореляцію за групою в Pandas
Як розрахувати ковзну кореляцію в пандах
Як обчислити кореляцію між двома стовпцями в Pandas