比较数据框中的多列并生成相似度矩阵

时间:2019-03-25 04:09:12

标签: python pandas dataframe

假设我有一个由四列 Col1,Col2,Col3和Col4 组成的数据框。 每列有100个条目(假定时间戳记),因此数据框的整体形状为(100,4)。 对于给定的特定时间戳,这些列具有相似的值,因此使它们的总体随时间变化非常相似。 现在,我想生成一个4x4矩阵,其值在[0,1]范围内的这些列中提供相似度,其中1告诉您数据是完全相同的(沿着对角线)。

有人可以帮助我吗?预先感谢。

1 个答案:

答案 0 :(得分:1)

import pandas as pd
import numpy as np
Fs = 100
f = 5
sample = 100
x = np.arange(sample)
y = np.sin(2 * np.pi * f * x / Fs)
y1 = np.sin(3 * np.pi * f * x / Fs)
y2 = np.sin(4 * np.pi * f * x / Fs)
y3 = np.sin(5 * np.pi * f * x / Fs)
data=pd.DataFrame({"c":y,"c1":y1,"c2":y2,"c3":y3})
data.cov()

您可以使用data.cov()

参考:-

  1. data.cov()