我試圖獲得單個列與資料框的其余數字列之間的相關性,但我被卡住了。
我正在嘗試這樣做:
corr = IM['imdb_score'].corr(IM)
但我得到了錯誤
運算元無法與形狀一起廣播
我認為這是因為我試圖找到向量(我的imdb_score列)與幾列的資料框之間的相關性。
如何解決這個問題?
uj5u.com熱心網友回復:
我認為您可以只使用.corr它回傳所有列之間的所有相關性,然后僅選擇您感興趣的列。
所以,像
IM.corr()['imbd_score']
應該管用。
uj5u.com熱心網友回復:
它使用的最有效方法corrwith。
例子:
df.corrwith(df['A'])
示例資料的設定:
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randint(10, size=(5, 5)), columns=list('ABCDE'))
# A B C D E
# 0 7 2 0 0 0
# 1 4 4 1 7 2
# 2 6 2 0 6 6
# 3 9 8 0 2 1
# 4 6 0 9 7 7
輸出:
A 1.000000
B 0.526317
C -0.209734
D -0.720400
E -0.326986
dtype: float64
uj5u.com熱心網友回復:
與計算所有相關性并保留感興趣的相關性不同,計算感興趣相關性的子集在計算上可能更有效:
import pandas as pd
df = pd.DataFrame()
df['a'] = range(10)
df['b'] = range(10)
df['c'] = range(10)
pd.DataFrame([[c, df['a'].corr(df[c])] for c in df.columns if c!='a'], columns=['var', 'corr'])
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/393332.html
上一篇:如何將多個資料幀相互合并?
