Преобразовать матрицу в список пар

У меня есть эта матрица взаимной информации:

 X1053_at   X117_at X121_at X1255_g_at  X1294_at    X1316_at    X1320_at
X1053_at    0   0.00040833  0.052000448 0.101470422 0.00040833  0.223143551
X117_at     0.00040833  0   0.00040833  0.174561677 0.174561677 0.034204976
X121_at     0.052000448 0.00040833  0   0.020410997 0.010309644 0.034204976
X1255_g_at  0.101470422 0.174561677 0.020410997 0   0.020410997 0.174561677
X1294_at    0.00040833  0.174561677 0.010309644 0.020410997 0   0.101470422
X1316_at    0.223143551 0.034204976 0.034204976 0.174561677 0.101470422 0
X1320_at    0.074226329 0.134540323 0.052000448 0.00368703  0.020410997 0.101470422

затем я хочу создать матрицу с разделителями вкладок списка генов в R, например:

 
geneX    geneY  weight   
geneX    geneY  weight   
geneX    geneY  weight   
geneX    geneY  weight   
geneX    geneY  weight   
geneX    geneY  weight  

может ли кто-нибудь помочь мне в этом? на самом деле я хочу экспортировать эту матрицу, а затем импортировать с помощью Cytoscape или Gephi или ... спасибо


person Sadegh    schedule 19.03.2014    source источник


Ответы (1)


Следующий хак может помочь:

x <- as.matrix(read.table(textConnection("X1053_at   X117_at X121_at X1255_g_at  X1294_at    X1316_at    X1320_at
X1053_at    0   0.00040833  0.052000448 0.101470422 0.00040833  0.223143551
X117_at     0.00040833  0   0.00040833  0.174561677 0.174561677 0.034204976
X121_at     0.052000448 0.00040833  0   0.020410997 0.010309644 0.034204976
X1255_g_at  0.101470422 0.174561677 0.020410997 0   0.020410997 0.174561677
X1294_at    0.00040833  0.174561677 0.010309644 0.020410997 0   0.101470422
X1316_at    0.223143551 0.034204976 0.034204976 0.174561677 0.101470422 0
X1320_at    0.074226329 0.134540323 0.052000448 0.00368703  0.020410997 0.101470422"), header=TRUE, row.names=1))

# not sure if this is correctly aligned as you have 7 column names for 6 columns

as.data.frame(as.table(x))

Результат:

         Var1       Var2       Freq
1    X1053_at    X117_at 0.00000000
2     X117_at    X117_at 0.00040833
3     X121_at    X117_at 0.05200045
4  X1255_g_at    X117_at 0.10147042
5    X1294_at    X117_at 0.00040833
person lebatsnok    schedule 19.03.2014
comment
@lebatsnok спасибо, отлично, я немного изменился, и он работал с поданной матрицей следующим образом: x = as.matrix(имя файла матрицы MIM) as.data.frame(as.table(x)) - person Sadegh; 19.03.2014