以下代码将对虹膜数据框中每一行的第1列到第4列求和。
library(dplyr)
iris %>% mutate(sumVar = rowSums(.[1:4]))
如何计算虹膜数据帧中每一行的相同四列的标准差?我想避免使用列名并坚持使用列号。每次查询数据时,我的列名通常都会更改。这不起作用:
library(dplyr)
iris %>% mutate(stDev = sd(.[1:4]))
答案 0 :(得分:2)
我们可以将其转换为matrix
,然后从rowSds
matrixStats
library(matrixStats)
library(dplyr)
iris %>%
mutate(stDev = rowSds(as.matrix(.[1:4])))
答案 1 :(得分:2)
这应该可以解决问题。
iris %>% mutate(stDev = apply(.[(1:4)],1,sd))
答案 2 :(得分:1)
这个基础 R 应该可以解决问题吗?
apply(iris[ ,1:4],1,sd)