如何在 R 中按行建立資料框值向量?


若要按行建立資料框值向量,我們可以在使用 t 轉置資料框之後使用 c 函式。例如,如果我們有一個包含許多列的資料框 df,則可以使用 c(t(df)) 將 df 值轉換成一個向量,這將按行列印資料框的值。

示例 1

線上演示

set.seed(798)
x1<−rnorm(20,5,2)
x2<−rnorm(20,5,3)
df1<−data.frame(x1,x2)
df1

輸出

      x1       x2
1 2.786103 −3.098242
2 8.533086 5.943967
3 10.291147 5.841057
4 5.449163 3.989173
5 5.810170 6.463880
6 4.479613 8.594108
7 7.569711 2.420207
8 8.058095 4.875600
9 3.827098 5.239763
10 5.807293 6.416752
11 4.431298 5.827411
12 4.140034 4.705993
13 6.643332 1.450062
14 1.787068 11.405792
15 5.356992 5.258035
16 5.027659 6.665030
17 3.617873 4.955072
18 8.190755 2.514271
19 4.675561 6.849762
20 10.532212 6.050328
Vector_df1<−c(t(df1))
Vector_df1
[1] 2.786103 −3.098242 8.533086 5.943967 10.291147 5.841057 5.449163
[8] 3.989173 5.810170 6.463880 4.479613 8.594108 7.569711 2.420207
[15] 8.058095 4.875600 3.827098 5.239763 5.807293 6.416752 4.431298
[22] 5.827411 4.140034 4.705993 6.643332 1.450062 1.787068 11.405792
[29] 5.356992 5.258035 5.027659 6.665030 3.617873 4.955072 8.190755
[36] 2.514271 4.675561 6.849762 10.532212 6.050328
is.vector(Vector_df1)
[1] TRUE

示例 2

線上演示

y1<−rpois(20,10)
y2<−rpois(20,5)
y3<−rpois(20,3)
df2<−data.frame(y1,y2,y3)
df2

輸出

y1 y2 y3
1 6 7 1
2 7 7 4
3 16 6 3
4 12 4 4
5 9 4 3
6 10 3 4
7 8 4 1
8 12 4 0
9 9 4 4
10 15 4 5
11 4 6 5
12 10 4 2
13 8 9 2
14 7 4 5
15 9 7 3
16 8 3 7
17 9 6 3
18 6 3 3
19 11 6 7
20 7 2 0
Vector_df2<−c(t(df2))
Vector_df2
[1] 6 7 1 7 7 4 16 6 3 12 4 4 9 4 3 10 3 4 8 4 1 12 4 0 9
[26] 4 4 15 4 5 4 6 5 10 4 2 8 9 2 7 4 5 9 7 3 8 3 7 9 6
[51] 3 6 3 3 11 6 7 7 2 0
is.vector(Vector_df2)
[1] TRUE

示例 3

z1<−letters[1:20]
z2<−rexp(20,1.98)
z3<−runif(20,1,5)
df3<−data.frame(z1,z2,z3)
df3

輸出

   z1       z2       z3
1 a 0.30649942 2.581508
2 b 0.49573688 1.005800
3 c 0.32632915 1.582261
4 d 0.16866850 2.364847
5 e 0.49920925 4.822604
6 f 0.48753521 2.516127
7 g 1.11453076 1.369764
8 h 0.03852521 3.055764
9 i 0.43320666 4.336745
10 j 1.53110506 1.253256
11 k 1.02885841 3.401008
12 l 0.93749136 1.272466
13 m 0.05544727 1.839311
14 n 0.06982751 3.857567
15 o 0.03554147 2.816643
16 p 0.27870340 4.920266
17 q 0.30576924 1.781030
18 r 0.13628651 2.365232
19 s 1.23068290 4.879601
20 t 0.31617628 1.026273
Vector_df3<−c(t(df3))
Vector_df3
[1] "a" "0.30649942" "2.581508" "b" "0.49573688"
[6] "1.005800" "c" "0.32632915" "1.582261" "d"
[11] "0.16866850" "2.364847" "e" "0.49920925" "4.822604"
[16] "f" "0.48753521" "2.516127" "g" "1.11453076"
[21] "1.369764" "h" "0.03852521" "3.055764" "i"
[26] "0.43320666" "4.336745" "j" "1.53110506" "1.253256"
[31] "k" "1.02885841" "3.401008" "l" "0.93749136"
[36] "1.272466" "m" "0.05544727" "1.839311" "n"
[41] "0.06982751" "3.857567" "o" "0.03554147" "2.816643"
[46] "p" "0.27870340" "4.920266" "q" "0.30576924"
[51] "1.781030" "r" "0.13628651" "2.365232" "s"
[56] "1.23068290" "4.879601" "t" "0.31617628" "1.026273"
is.vector(Vector_df3)
[1] TRUE

更新於: 07-11-2020

6K+ 瀏覽

開啟你的 職業生涯

完成課程即可獲得證書

開始入門
廣告
© . All rights reserved.