A <- c(1,6)
B <- c(2,7)
C <- c(3,8)
D <- c(4,9)
E <- c(5,0)
df <- data.frame(A,B,C,D,E)
df
A B C D E
1 1 2 3 4 5
2 6 7 8 9 0
我想有這樣的:改變data.frame列到行中的R
df
1 2
A 1 6
B 2 7
C 3 8
D 4 9
E 5 0
A <- c(1,6)
B <- c(2,7)
C <- c(3,8)
D <- c(4,9)
E <- c(5,0)
df <- data.frame(A,B,C,D,E)
df
A B C D E
1 1 2 3 4 5
2 6 7 8 9 0
我想有這樣的:改變data.frame列到行中的R
df
1 2
A 1 6
B 2 7
C 3 8
D 4 9
E 5 0
如果你的數據幀確實是這種格式,那麼你所有的載體將是特徵向量。或者,你基本上有一個字符矩陣,你可以這樣做:
data.frame(t(df))
這將是更好,不過,只是把它定義你想要的方式得到去
df <- data.frame(c('A','B','C','D','E'),
c(1, 2, 3, 4, 5),
c(6, 7, 8, 9, 0))
你也可以做到這一點
df <- data.frame(LETTERS[1:5], 1:5, c(6:9, 0))
如果你想給的列名,你可以這樣做
df <- data.frame(L = LETTERS[1:5], N1 = 1:5, N2 = c(6:9, 0))
有時候,如果我使用Excel數據的read.DIF,數據會被轉置。這是你如何獲得原始數據?如果是這樣,您可以撥打
read.DIF(filename, transpose = T)
以正確的方向獲取數據。
我真的建議data.table
方法無需手動步驟becauce它們是容易出錯的
A <- c(1,6)
B <- c(2,7)
C <- c(3,8)
D <- c(4,9)
E <- c(5,0)
df <- data.frame(A,B,C,D,E)
df
library('data.table')
dat.m <- melt(as.data.table(df, keep.rownames = "Vars"), id.vars = "Vars") # https://stackoverflow.com/a/44128640/54964
dat.m
輸出
A B C D E
1 1 2 3 4 5
2 6 7 8 9 0
Vars variable value
1: 1 A 1
2: 2 A 6
3: 1 B 2
4: 2 B 7
5: 1 C 3
6: 2 C 8
7: 1 D 4
8: 2 D 9
9: 1 E 5
10: 2 E 0
R:3.4.0(反向移植)
OS:Debian的8.7
你是如何將數據轉化爲R的? – adamleerich