這個問題在這里已經有了答案: 將 data.frame 從寬格式重塑為長格式 8 個答案 10 小時前關閉。
我有一個關于在 r 中更改資料框形狀的問題。
資料框:
trig
X0 AGE DIA5AV BMI
1 0 -0.8347722 -19.58455 -5.064827
2 0 -0.8383630 -21.10540 -5.846960
3 0 -1.4297019 -19.93591 -5.388825
4 0 -0.7980213 -18.11637 -5.530097
5 0 -0.7980763 -19.77284 -3.798506
我怎樣才能使列作為行放入單個列中,并且每列中的行值合并到一行中?
任何幫助將不勝感激!
編輯:
使用 t 轉置后,我得到以下資訊:
[,1] [,2] [,3] [,4] [,5]
X0 0.0000000 0.000000 0.000000 0.0000000 0.0000000
AGE -0.8347722 -0.838363 -1.429702 -0.7980213 -0.7980763
DIA5AV -19.5845495 -21.105396 -19.935912 -18.1163677 -19.7728362
BMI -5.0648265 -5.846960 -5.388825 -5.5300974 -3.7985064
我怎樣才能轉換它,使它看起來像下面的輸出:
[,1]
X0 0.0000000
AGE -0.8347722
DIA5AV -19.5845495
BMI -5.0648265
X0 0.000000
AGE -0.838363
DIA5AV -21.105396
BMI -5.846960
行繼續。[,1] 應包含所有值。
謝謝!
uj5u.com熱心網友回復:
使用pivot_longer將生成具有所需輸出的 ??2 列資料框:
trig %>%
tidyr::pivot_longer(everything())
# A tibble: 20 x 2
name value
<chr> <dbl>
1 X0 0
2 AGE -0.835
3 DIA5AV -19.6
4 BMI -25.6
5 X0 0
6 AGE -0.838
7 DIA5AV -21.1
8 BMI -25.6
9 X0 0
10 AGE -1.43
11 DIA5AV -19.9
12 BMI -25.6
13 X0 0
14 AGE -0.798
15 DIA5AV -18.1
16 BMI -25.6
17 X0 0
18 AGE -0.798
19 DIA5AV -19.8
20 BMI -25.6
由于行名應該是唯一的,這可能比使用具有復制行名的單列資料框更干凈。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/430469.html
標籤:r
上一篇:提取R中'\r'之間的值
