[我正在跟踪此tutorial online from kaggle,但我无法理解为什么.T改变矩阵的形状。这是我停留的部分:
我基本上在射击代码时遇到了麻烦,并尝试了此:
cm = np.corrcoef(df_train[cols].values)
cm.shape
返回1460x1460的矩阵
输入时
cm = np.corrcoef(df_train[cols].values.T)
cm.shape
它返回一个10x10的矩阵
有人知道为什么这样做吗?我不知道。
从corrcoef的numpy documentation:
x : array_like
A 1-D or 2-D array containing multiple variables and observations.
Each row of x represents a variable, and
each column a single observation of all those variables. Also see rowvar below.
请注意,每个row代表一个变量,在第一种情况下,您有1460行10列,在第二种情况下,您有10行有1460列。
因此,当您转置NumPy数组时,您的基本变化是从1460个变量(每个变量具有10个值)到10个变量(每个变量具有1460个值。)>
如果您正在处理熊猫,则可以使用内置的.corr()方法来计算columns
之间的相关性。相关性为您提供了数据帧的所有“列”之间的协方差矩阵的归一化