为什么numpy中的.T会改变矩阵的形状并使代码起作用?

问题描述 投票:0回答:2

[我正在跟踪此tutorial online from kaggle,但我无法理解为什么.T改变矩阵的形状。这是我停留的部分:third line of code

我基本上在射击代码时遇到了麻烦,并尝试了此:

 cm = np.corrcoef(df_train[cols].values)
 cm.shape

返回1460x1460的矩阵

输入时

 cm = np.corrcoef(df_train[cols].values.T)
 cm.shape

它返回一个10x10的矩阵

有人知道为什么这样做吗?我不知道。

python pandas numpy
2个回答
0
投票

从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

之间的相关性。

0
投票

相关性为您提供了数据帧的所有“列”之间的协方差矩阵的归一化

© www.soinside.com 2019 - 2024. All rights reserved.