转置数据框

时间:2016-11-13 21:21:02

标签: r genetics

我试图在R中转置一个数据帧,但运气很少。

数据框包含表观遗传数据集,第一列中有300,000多个CpG位点。另外74个柱在对照组和实验组之间分开(癌症= 69,正常= 5)。

我已将数据帧转换为矩阵,因此我可以转置数据并将其转换回数值。但是,每次我尝试将数据转换回数据帧时,它最终都会作为列表。

我试图执行以下操作:

  1. 将第一列设为标题。
  2. 将标题的名称设为第一列中的值(X除外,我想删除)。

      

    数据[1:10,1:10]

        X Tumor.33 Normal.01 Tumor.01 Tumor.34 Tumor.35 Tumor.02 Tumor.03
    
    
    cg00000029  0.29224   0.32605  0.58762  0.32397  0.23482  0.24012  0.22941
    
    cg00000108  0.91243   0.89785  0.92337  0.90080  0.91220  0.92256  0.92709
    
    cg00000109  0.77676   0.73910  0.81545  0.73603  0.76276  0.85808  0.85142
    
    cg00000165  0.34261   0.30960  0.56392  0.32363  0.33980  0.61755  0.70855
    
    cg00000236  0.84688   0.80654  0.84423  0.80935  0.85600  0.87766  0.83509
    
    cg00000289  0.61535   0.60874  0.62496  0.66421  0.60556  0.66824  0.65243
    
    cg00000292  0.72491   0.63333  0.55031  0.69690  0.73547  0.71826  0.62223
    
    cg00000321  0.31650   0.29422  0.37737  0.28428  0.28417  0.70437  0.34829
    
    cg00000363  0.26309   0.31460  0.29135  0.26339  0.20117  0.60604  0.60548
    
    cg00000622  0.03325   0.02190  0.03293  0.04032  0.02815  0.03494  0.04126
    

2 个答案:

答案 0 :(得分:4)

使用t()函数转置矩阵或数据框。在后一种情况下,行名称变为可变(列)名称。

  

df>数据[1:10,1:10]

     

T(DF)

来源:https://www.r-statistics.com/tag/transpose/

答案 1 :(得分:3)

  

data< - as.data.frame(t(data))

这可确保数值不会转换为字符串值。