-4
A
回答
3
使用dplyr
和tidyr
:
DF <- data.frame(ID = 1:3,
A = c(0, 1, 1),
B = c(1, 0, 0),
C = c(0, 0, 0),
D = c(1, 0, 1),
E = c(0, 1, 0))
library(dplyr)
library(tidyr)
out1 <-
gather(DF, letter, bit, A:E) %>%
filter(bit == 1) %>%
arrange(ID, letter)
out2 <-
out1 %>%
group_by(ID) %>%
summarise(output = paste0(letter, collapse = ","))
+0
感謝您的幫助。它的作用像魅力 – skw1990
相關問題
- 1. 重命名列重塑中的R
- 2. R data.table重塑數據
- 3. 重塑R中的數據幀
- 4. 重塑豬的數據 - 將行值更改爲列名稱
- 5. 重塑一列數據幀分成兩列中的R
- 6. 重塑中的R
- 7. 在R中重塑一個數據幀
- 8. 沒有idvar重塑數據幀 - R的
- 9. 重塑數據框以將因子轉換爲R中的列
- 10. 使用數據框標題/名稱重命名列名稱
- 11. 重塑數據幀,使一列中的觀察值爲列名稱,相應的列爲其中的值
- 12. 使用其數據框名稱重命名列表中的數據框列
- 13. R數據幀壓扁/重塑
- 14. 重塑數據框在R(融化?)
- 15. 重塑數據幀(有R或Python)
- 16. R中的重塑矩陣
- 17. 根據唯一值的數量在R中重塑數據幀
- 18. 如何根據使用R的組名稱添加列數據?
- 19. 重塑數據
- 20. 在使用pivot_table後重塑/合併Pandas數據框中的列
- 21. R +重塑:data.frame的列方差
- 22. R中重複列表名稱
- 23. R:從廣角重塑數據幀基於化合物列名長格式
- 24. 使用對象名稱作爲R中的列表名稱
- 25. 重塑一個數據幀中的R與非數值
- 26. 使用重塑()函數中的R - 從廣角到長
- 27. 重塑多列的熊貓數據幀
- 28. 的Python - 重組數據幀,將列名於行,重塑數據幀
- 29. R - 使用向量列表中的名稱的子集數據幀列
- 30. 重塑數據幀
嘗試'cbidn(DF1 [1],OUTPUT =申請(DF1 [-1],函數(X)的toString(X [X = 0])))' – akrun
@akrun,我不確定你打算在這裏。我無法讓你的代碼工作。如果你的意思是'lapply'或'apply'(如果'apply'你錯過了'MARGIN'的參數),我不清楚,並且我無法獲得所需的輸出,並且這些選項有任何明顯的排列。 (也,你拼錯'cbind') – Benjamin
我有一些錯別字,你說得對。我的意思是'cbind(DF [1],OUTPUT = apply(DF [-1],1,FUN = function(x)toString(names(x)[x!= 0])))' – akrun