在R中使用FFT比较多个信号

在R中使用FFT比较多个信号,r,cluster-analysis,fft,hierarchical-clustering,R,Cluster Analysis,Fft,Hierarchical Clustering,我想使用快速傅里叶变换分析多个信号,并尝试将具有相似模式的信号分组 我想知道如何处理这个问题 我的数据的一个子集: df <- dput(tst1) structure(list(var_1 = c(0.238942, 0.265, 0.190338, 0.245714, 0.208872, 0.266648, 0.1909, 0.291751, 0.259681, 0.270592), var_2 = c(0.236594, 0.262115, 0.188282, 0.243209,

我想使用快速傅里叶变换分析多个信号,并尝试将具有相似模式的信号分组

我想知道如何处理这个问题

我的数据的一个子集:

df <- dput(tst1)
structure(list(var_1 = c(0.238942, 0.265, 0.190338, 0.245714, 
0.208872, 0.266648, 0.1909, 0.291751, 0.259681, 0.270592), var_2 = c(0.236594, 
0.262115, 0.188282, 0.243209, 0.206064, 0.26483, 0.187436, 0.289571, 
0.256675, 0.268209), var_3 = c(0.234762, 0.260603, 0.188161, 
0.240466, 0.204413, 0.262256, 0.1863, 0.288058, 0.254225, 0.266186
), var_4 = c(0.232489, 0.258214, 0.186727, 0.238468, 0.201748, 
0.260584, 0.184533, 0.285398, 0.251934, 0.263722), var_5 = c(0.230015, 
0.255756, 0.186592, 0.235875, 0.199746, 0.258097, 0.18314, 0.283392, 
0.249769, 0.262319), var_6 = c(0.227892, 0.253624, 0.186194, 
0.233518, 0.197826, 0.255778, 0.181736, 0.281578, 0.247566, 0.260859
), var_7 = c(0.225756, 0.251379, 0.185813, 0.231679, 0.195496, 
0.253272, 0.180961, 0.27873, 0.244901, 0.259456), var_8 = c(0.223464, 
0.249673, 0.185515, 0.229863, 0.193899, 0.251128, 0.180393, 0.276851, 
0.243248, 0.257856), var_9 = c(0.221471, 0.24726, 0.184834, 0.227454, 
0.191849, 0.248769, 0.179127, 0.273859, 0.240625, 0.255606), 
    var_10 = c(0.21952, 0.245511, 0.184278, 0.225988, 0.190593, 
    0.246434, 0.178072, 0.271144, 0.238321, 0.253885), var_11 = c(0.218228, 
    0.243789, 0.184485, 0.224337, 0.189168, 0.245093, 0.177002, 
    0.268688, 0.23696, 0.251804), var_12 = c(0.216438, 0.241876, 
    0.184569, 0.222695, 0.187973, 0.243475, 0.175195, 0.266073, 
    0.235168, 0.250305), var_13 = c(0.215116, 0.240005, 0.184283, 
    0.220832, 0.186319, 0.24159, 0.173557, 0.263756, 0.232819, 
    0.248114), var_14 = c(0.213016, 0.237224, 0.18444, 0.21831, 
    0.18518, 0.240112, 0.17209, 0.261131, 0.230609, 0.245875), 
    var_15 = c(0.211184, 0.23517, 0.18475, 0.216627, 0.183275, 
    0.238314, 0.171204, 0.258135, 0.228459, 0.243731), var_16 = c(0.208855, 
    0.232755, 0.184906, 0.215249, 0.181248, 0.236821, 0.169593, 
    0.256136, 0.226637, 0.241915), var_17 = c(0.207139, 0.230857, 
    0.185459, 0.21385, 0.180094, 0.235208, 0.168155, 0.254205, 
    0.22486, 0.240045), var_18 = c(0.205077, 0.228666, 0.185522, 
    0.211764, 0.178778, 0.233662, 0.166491, 0.251451, 0.222678, 
    0.237376), var_19 = c(0.203173, 0.226569, 0.185825, 0.209949, 
    0.176726, 0.231828, 0.165068, 0.248426, 0.220556, 0.235003
    ), var_20 = c(0.201251, 0.224366, 0.186176, 0.207974, 0.175703, 
    0.230081, 0.163141, 0.246262, 0.218654, 0.232062), var_21 = c(0.199265, 
    0.221885, 0.186458, 0.205793, 0.174502, 0.228247, 0.161569, 
    0.24376, 0.216408, 0.229642), var_22 = c(0.197004, 0.219585, 
    0.186486, 0.203886, 0.173065, 0.226032, 0.160078, 0.241633, 
    0.214141, 0.227404), var_23 = c(0.19512, 0.216987, 0.186782, 
    0.201754, 0.171262, 0.223991, 0.158268, 0.239415, 0.212232, 
    0.225068), var_24 = c(0.193056, 0.21441, 0.186593, 0.199443, 
    0.169317, 0.221896, 0.156727, 0.237254, 0.209865, 0.222927
    ), var_25 = c(0.190861, 0.211877, 0.186553, 0.19689, 0.168172, 
    0.219797, 0.155611, 0.235068, 0.207387, 0.220559)), row.names = c(22743L, 
6535L, 59032L, 61113L, 16944L, 60773L, 3235L, 19567L, 20560L, 
42516L), class = "data.frame")
df
f <- apply(df, 1, function(x){abs(fft(x))})