我有一个包含4个变量的数据集(轴承1至轴承4),并且20152319没有观测值。看起来像这样:
现在,我正在尝试查找4个变量的相关矩阵。我使用的代码是这样:
corr_mat = Data.corr(method = 'pearson')
print(corr_mat)
但是,在结果中,我仅获得方位2与方位4的相关性信息。方位1无处可见。我在下面提供了结果的快照:
我尝试从每个变量中删除NULL值,还尝试寻找缺失的值,但没有任何效果。有趣的是,如果我分离出前两个变量(轴承1和轴承2),然后尝试找到它们之间的相关矩阵,轴承1不会出现,并且该矩阵是只有轴承2的1x1矩阵。 >
任何关于为什么发生这种情况以及如何解决的解释将不胜感激。
答案 0 :(得分:2)
尝试查看第一列“轴承1”是否为数字。
cannot convert from 'Nest.PropertiesDescriptor<object>' to 'System.Func<Nest.PropertiesDescriptor<object>, Nest.IPromise<Nest.IProperties>>'
现在应用您的计算,
Data.dtypes # This will show the type of each column
cols = Data.columns # Saving column names to a variable
Data[cols].apply(pd.to_numeric, errors='coerce') # Converting the columns to numeric
答案 1 :(得分:1)
Dtype
是object
,因此熊猫默认情况下会省略它。解决方案是将其转换为数字:
Data['Bearing 1'] = Data['Bearing 1'].astype(float)
或者如果某些非数字值将to_numeric
与errors='coerce'
结合使用,将这些值解析为NaN
s:
Data['Bearing 1'] = pd.to_numeric(Data['Bearing 1'], errors='coerce')
如果要将所有列都转换为数字:
Data = Data.astype(float)
或者:
Data = Data.apply(pd.to_numeric, errors='coerce')