簡體   English   中英

如何使用dplyr將數據框和平均數據跨行拆分?

[英]How can I split a dataframe and average across rows using dplyr?

我試圖將下面的行(r1)分成3個長的段,然后平均第1行和第2行。我試圖使用dplyr軟件包只是因為我想學習它。 有人可以指出我正確的方向嗎?

r1<-rbind(c(1,2,3,4,5,6,7,8,9),c(11,21,31,41,51,61,71,81,91))
colnames(r1)<-c("a","b","c","d","e","f","g","h","i")
library(dplyr)
test<-r1 %>% group_by("a","b","c")

目標:

avg(1+11),avg(2+21),avg(3+31)
avg(4+41),avg(5+51),avg(6+61)
avg(7+71),avg(8+81),avg(9+91)

dplyr軟件包主要用於對數據幀進行分組操作。 您在那里有一個矩陣,它實際上不是分組操作。 您只想重新排列列均值。 為此,我們可以執行以下操作。

matrix(colMeans(r1), 3, byrow = TRUE)
#      [,1] [,2] [,3]
# [1,]  6.0 11.5 17.0
# [2,] 22.5 28.0 33.5
# [3,] 39.0 44.5 50.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM