3 回答

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個(gè)贊
這更多是一種解決方法,但可以使用
iris %>% mutate(sumVar = rowSums(.[1:4]))
如注釋中所寫,您還可以使用selectmutate內(nèi)部來(lái)獲取要匯總的列,例如
iris %>%
mutate(sumVar = rowSums(select(., contains("Sepal")))) %>%
head
要么
iris %>%
mutate(sumVar = select(., contains("Sepal")) %>% rowSums()) %>%
head

TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
我正在使用這個(gè)簡(jiǎn)單的解決方案,它是對(duì)Davide Passaretti的回答的更強(qiáng)大的修改:
iris %>% select(Sepal.Length:Petal.Width) %>%
transmute(sumVar = rowSums(.)) %>% bind_cols(iris, .)
(但是,這需要定義的行順序,這應(yīng)該很好,除非您可能使用遠(yuǎn)程數(shù)據(jù)集。)

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
您也可以使用grep代替containsor matches,以防萬(wàn)一您需要熟悉正則表達(dá)式(matches根據(jù)我的經(jīng)驗(yàn),這似乎不太像否定的前瞻之類)。
iris %>% mutate(sumVar = rowSums(select(., grep("Sepal", names(.)))))
- 3 回答
- 0 關(guān)注
- 1264 瀏覽
添加回答
舉報(bào)