第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

R用tidyr傳播多個列

R用tidyr傳播多個列

天涯盡頭無女友 2019-08-08 10:39:07
R用tidyr傳播多個列拿這個樣本變量df <- data.frame(month=rep(1:3,2),                 student=rep(c("Amy", "Bob"), each=3),                 A=c(9, 7, 6, 8, 6, 9),                 B=c(6, 7, 8, 5, 6, 7))我可以使用spread從tidyr將其更改為寬格式。> df[, -4] %>% spread(student, A)  month Amy Bob1     1   9   82     2   7   63     3   6   9但我怎么能傳播兩個值,例如既A和B,使得輸出是一樣的東西  month Amy.A Bob.A Amy.B Bob.B1     1     9     8     6     52     2     7     6     7     63     3     6     9     8     7
查看完整描述

1 回答

?
瀟瀟雨雨

TA貢獻1833條經(jīng)驗 獲得超4個贊

這是一個簡單而有效的解決方案 data.table


library(data.table) ## v >= 1.9.6

dcast(setDT(df), month ~ student, value.var = c("A", "B")) 

#    month Amy_A Bob_A Amy_B Bob_B

# 1:     1     9     8     6     5

# 2:     2     7     6     7     6

# 3:     3     6     9     8     7

或者可能的tidyr解決方案


df %>% 

  gather(variable, value, -(month:student)) %>%

  unite(temp, student, variable) %>%

  spread(temp, value)


#   month Amy_A Amy_B Bob_A Bob_B

# 1     1     9     6     8     5

# 2     2     7     7     6     6

# 3     3     6     8     9     7


查看完整回答
反對 回復(fù) 2019-08-08
  • 1 回答
  • 0 關(guān)注
  • 451 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號