r语言 - 如何将 fft 函数正确应用于数据帧



为什么在将fft(快速傅立叶变换)应用于数据框时出现此错误?如果我在每个变量上单独使用相同的函数,则没有错误。

df<-read.table(text="pregnant glucose blood skin INSULIN MASS  DIAB AGE CLASS  predict_probability 
1     106    70   28     135 34.2 0.142  22     0       0.15316285       
1      91    54   25     100 25.2 0.234  23     0       0.05613959       
4     136    70    0       0 31.2 1.182  22     1       0.54034794       
9     164    78    0       0 32.8 0.148  45     1       0.64361578       
3     173    78   39     185 33.8 0.970  31     1       0.79185196       
11     136    84   35     130 28.3 0.260  42     1       0.31927737       
0     141    84   26       0 32.4 0.433  22     0       0.41609308       
3     106    72    0       0 25.8 0.207  27     0       0.10460090       
9     145    80   46     130 37.9 0.637  40     1       0.67061324       
10     111    70   27       0 27.5 0.141  40     1       0.16152296       
",header=T)

如果我写fft(df$pregnant)我会得到所需的结果,但我尝试在整个数据帧上使用它,fft(df)出现此错误:

fft(df) 中的错误:非数字参数

仅使用数字列:

apply(df,2,function(x) fft(as.numeric(x)))

最新更新