代码之家  ›  专栏  ›  技术社区  ›  Christian

将R代码转换为R样式

r
  •  3
  • Christian  · 技术社区  · 14 年前

    有没有办法更有效地写下以下陈述? Accel是一个数据帧。

    accel[[2]]<- accel[[2]]-weighted.mean(accel[[2]])
    accel[[3]]<- accel[[3]]-weighted.mean(accel[[3]])
    accel[[4]]<- accel[[4]]-weighted.mean(accel[[4]])
    
    2 回复  |  直到 14 年前
        1
  •  4
  •   Marek    14 年前

    替代方案

    accel[2:4] <- lapply(accel[2:4], function(x) x-weighted.mean(x))
    
        2
  •  2
  •   csgillespie Carl Witthoft    14 年前

    这是一种方法。

    accel[,2:4] = t(t(accel[,2:4]) - apply(accel[,2:4], 2, weighted.mean))
    

    修正了马雷克的观点-谢谢。

    士气: 在过账前务必检查您的R代码!