行相关后对列进行排序

时间:2017-03-14 00:11:34

标签: python correlation

我有一个包含两行或更多行和42列的pandas数据帧。通过转置和绘图,我得到行的配置文件。

df.T.plot()

enter image description here

我想对列进行排序,因此首先有列,其中行是强相关的(类似的配置文件,值在同一方向)和后面的列,其中行具有弱相关性(相反的配置文件) ,价值相反的方向)。

我可以在列上运行集群算法,但集群并不是我想要的。

我认为一种解决方案是按照线性回归线的点距离进行排序? enter image description here

1 个答案:

答案 0 :(得分:0)

相关性是一种描述两个变量之间关系的度量,而不是特定点。您为排序所描述的指标不是相关性,而是两行中列值之间的绝对差异。 (通过转置操作,两行变为两列,并且它们在您生成的图表上的线将朝相反的方向前进#34;当两列中的值彼此远离时。)

使用您描述的数据框实现此目标将类似于:

df_T = df.T
df_T['sort_column'] = df_T.panB - df_T.panC
df_T.sort_values('sort_column', inplace=True)
df_T.drop('sort_column', inplace=True)
df_T.plot()