-3
A
回答
1
dat <- data.frame(letter = c("A", "A", "A", "A",
"B", "B", "B", "C",
"C", "C", "C", "D"),
number = c(2, 3, 4,5, 4, 5, 6, 1, 3, 5, 7, 1))
我想提供一個R基本的解決方案(也許只是爲了好玩...),基於矩陣的索引。
lev <- unique(dat[[1L]]); k <- length(lev) ## unique levels
x <- dat[[2L]]; p <- max(x) ## column position
z <- matrix(0L, nrow = k, ncol = p, dimnames = list(lev, seq_len(p))) ## initialization
z[cbind(match(dat[[1L]], lev), dat[[2L]])] <- 1L ## replacement
z ## display
# 1 2 3 4 5 6 7
#A 0 1 1 1 1 0 0
#B 0 0 0 1 1 1 0
#C 1 0 1 0 1 0 1
#D 1 0 0 0 0 0 0
2
這是使用tidyr
包最容易實現:
library(tidyr)
dat <- data.frame(letter = c("A", "A", "A", "A",
"B", "B", "B", "C",
"C", "C", "C", "D"),
number = c(2, 3, 4,5, 4, 5, 6, 1, 3, 5, 7, 1),
value = 1)
spread(dat, number, value)
相關問題
- 1. 變化數據幀結構中的R
- 2. 長期交易結構化方法
- 3. 在R結構中隨機化結構中的值
- 4. 結構化,非結構化和半結構化數據
- 5. 重構期間結構體是否安全集合初始化?
- 6. Facebook競選結構變化
- 7. 訪問R中的結構
- 8. R結構中的節數
- 9. 初始化其他結構的結構
- 10. 結構化JSON對象
- 11. 初始化結構對象++
- 12. 類結構中的變量初始化
- 13. 結構中的結構
- 14. R:不明結構
- 15. 初始化對結構的內部結構
- 16. 初始化結構體包含對結構體的引用
- 17. 使用typedef結構化值結構
- 18. 初始化結構和嵌套結構
- 19. 類對象中的結構初始化
- 20. 初始化在C長嵌套結構
- 21. 映射非結構化架構元素爲結構化
- 22. 顯示R對象的內部結構
- 23. 結構內結構,能夠改變內部結構類型
- 24. 如何引用可變長度結構
- 25. CQRS體系結構優化和變化
- 26. golang用來初始化內部結構對象嵌套結構
- 27. 從Matlab結構導出變量到R
- 28. 結構初始化 - 代碼安全
- 29. 用兩個結構變量對結構數組進行排序?
- 30. 結構對齊
想要'table(df $ v1,df $ v2)'?順便說一下,請閱讀R標籤說明 - 他們要求您輸入數據,而不是僅顯示屏幕截圖。 –
您正在尋找R'reshape'軟件包 – abhiieor