簡體   English   中英

將行轉換為列 R

[英]convert rows into columns R

我有一個包含 2 列的數據框:

a<-c(1, 3, 4, 6, 8.7, 9, 10, 12, 19.3, 20)
b<-c(10, 30, 40, 60, 87, 90, 100, 120, 190, 200)
df<-data.frame(a=a, b=b)
> df
      a   b
1   1.0  10
2   3.0  30
3   4.0  40
4   6.0  60
5   8.7  87
6   9.0  90
7  10.0 100
8  12.0 120
9  19.3 190
10 20.0 200

拜托,我的目標是有 1 行 10 列 a 和 10 列 b

預期結果

    a1 a2   ...   a10  b1 b2 ... b10
1   1.0 3.0 ...   20.0 10 30 ... 200

我試過t()但它沒有給我想要的結果

嘗試unlistas.data.frame(t(unlist(.))) ,取決於您需要什么,向量或數據框。

unlist(df)
# a1    a2    a3    a4    a5    a6    a7    a8    a9   a10    b1    b2    b3    b4    b5    b6    b7    b8    b9   b10 
# 1.0   3.0   4.0   6.0   8.7   9.0  10.0  12.0  19.3  20.0  10.0  30.0  40.0  60.0  87.0  90.0 100.0 120.0 190.0 200.0 
as.data.frame(t(unlist(df)))
#   a1 a2 a3 a4  a5 a6 a7 a8   a9 a10 b1 b2 b3 b4 b5 b6  b7  b8  b9 b10
# 1  1  3  4  6 8.7  9 10 12 19.3  20 10 30 40 60 87 90 100 120 190 200

unlist()可以解決這個問題:

unlist(df)
   a1    a2    a3    a4    a5    a6    a7    a8    a9   a10    b1    b2    b3    b4    b5    b6 
  1.0   3.0   4.0   6.0   8.7   9.0  10.0  12.0  19.3  20.0  10.0  30.0  40.0  60.0  87.0  90.0 
   b7    b8    b9   b10 
100.0 120.0 190.0 200.0 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM