0
Q
支點和計數會員
A
回答
1
使用dcast從reshape2
df1 %>% reshape2::dcast(var2~var1)
reshape2::dcast(df1,var2 ~ var1)
1
library(dplyr)
library(tidyr)
set.seed(1)
df1 <- data.frame(id = letters[seq(from = 1, to = 20)],
var1 = sample(1:5,20,replace=T),
var2 = sample(1:5,20,replace=T))
df1
# id var1 var2
# 1 a 2 5
# 2 b 2 2
# 3 c 3 4
# 4 d 5 1
# 5 e 2 2
# 6 f 5 2
# 7 g 5 1
# 8 h 4 2
# 9 i 4 5
# 10 j 1 2
# 11 k 2 3
# 12 l 1 3
# 13 m 4 3
# 14 n 2 1
# 15 o 4 5
# 16 p 3 4
# 17 q 4 4
# 18 r 5 1
# 19 s 2 4
# 20 t 4 3
df1 %>%
count(var1,var2) %>% # count how many times you have each combination
ungroup %>%
mutate(var1 = paste0("var1_",var1)) %>% # update variable values
spread(var1,n, fill=0) %>% # reshape dataset
mutate(var2 = paste0("var2_",var2)) %>% # update variable values
print() -> df2
# # A tibble: 5 × 6
# var2 var1_1 var1_2 var1_3 var1_4 var1_5
# <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
# 1 var2_1 0 1 0 0 3
# 2 var2_2 1 2 0 1 1
# 3 var2_3 1 1 0 2 0
# 4 var2_4 0 1 2 1 0
# 5 var2_5 0 1 0 2 0
如果你真的喜歡有var2
值作爲行名稱,而不是作爲一列添加此
df2 = data.frame(df2)
row.names(df2) = df2$var2
df2$var2 = NULL
df2
# var1_1 var1_2 var1_3 var1_4 var1_5
# var2_1 0 1 0 0 3
# var2_2 1 2 0 1 1
# var2_3 1 1 0 2 0
# var2_4 0 1 2 1 0
# var2_5 0 1 0 2 0
相關問題
- 1. 關於Mysql會員計數
- 2. 會員訪問設計(訪問會員)
- 3. 會員數量總和
- 4. 數據庫架構幫助 - 創建創建會員站點的會員站點
- 5. 計數會員編號記錄
- 6. Python函數計算會員價
- 7. Google會員的字數統計?
- 8. 會員計劃的第三方支付網關
- 9. 計數和點心
- 10. web.config和會員
- 11. MySQL的支點與多個計數
- 12. 的Sql支點與多個計數
- 13. 顯示會員和價值會員
- 14. SSAS已計算的會員
- 15. 會員路線與設計
- 16. MDX計算會員問題
- 17. Asp.net MVC會員設計
- 18. MDX計算每月會員
- 19. 會員統計在Drupal
- 20. 數組作爲類成員和計數
- 21. 在海灣合作委員會,Python和Google計算器中對大浮點數進行錯誤計算
- 22. 計數成員
- 23. SubSonic不支持會員<some column>
- 24. 支持RavenDB的MVC4會員系統
- 25. ASP.NET身份與簡單會員優點和缺點?
- 26. ASP.Net MVC和會員
- 27. .NET會員和Cookies?
- 28. 並行旅行推銷員計劃使用分支和綁定
- 29. 蟒蛇如果和其他語句計算員工支付
- 30. Rails 3.1協會和計數?
請添加您的預期輸出。另外,使用'set.seed'進行再現。 –
試試'table(df1 [-1])' –