使用Grep为列中的每一行创建平均值

使用Grep为列中的每一行创建平均值,r,R,我想创建R中列的复合变量平均值,但我想使用grep或一些自动分组变量的方法。因为列标题与x1x2x3类似。所以我想做一些类似的事情 for(i in 1:length(df$x)){ df$x[i]<- mean(grep("facet_x", names(df), value=TRUE)[i]) } 有没有更好的方法可以做到这一点,对不起,我是一个新来R的人。如果我们用有facet_x的名称对列进行子集划分,以获得平均值,然后使用rowMeans 工作得很漂亮! df$

我想创建R中列的复合变量平均值,但我想使用grep或一些自动分组变量的方法。因为列标题与x1x2x3类似。所以我想做一些类似的事情

  for(i in 1:length(df$x)){
    df$x[i]<- mean(grep("facet_x", names(df), value=TRUE)[i])
  }

有没有更好的方法可以做到这一点,对不起,我是一个新来R的人。

如果我们用有facet_x的名称对列进行子集划分,以获得平均值,然后使用rowMeans


工作得很漂亮!
df$x <- rowMeans(df[grep("facet_x", names(df))], na.rm = TRUE)