0
如何轉換一個數據表的列,例如:如何轉換表爲列[R
AB CD EF JK LM
X 6 0 5 0 0
Y 0 7 0 0 0
Z 0 0 8 0 0
A 0 0 0 9 0
B 0 0 0 6 10
到
V1 V2
X AB 6
X EF 5
Y CD 7
Z EF 8
A JK 9
B LM 10
B JK 6
如何轉換一個數據表的列,例如:如何轉換表爲列[R
AB CD EF JK LM
X 6 0 5 0 0
Y 0 7 0 0 0
Z 0 0 8 0 0
A 0 0 0 9 0
B 0 0 0 6 10
到
V1 V2
X AB 6
X EF 5
Y CD 7
Z EF 8
A JK 9
B LM 10
B JK 6
一種選擇是將「data.frame」轉換爲'矩陣',melt
it和subset
'值'不是'0'。
library(reshape2)
subset(melt(as.matrix(df1)), value!=0)
或者
library(dplyr)
library(tidyr)
add_rownames(df1, 'rn') %>%
gather(V1, V2, -rn) %>%
filter(V2!=0)