Используя список вместо вектора, мы можем добиться этого в цикле:
output_mtcars <- list("double", ncol(mtcars))
for(i in seq_along(mtcars)) {
output_mtcars[[i]] <- mean(mtcars[[i]])
names(output_mtcars[[i]]) <- names(mtcars[i])
}
> output_mtcars
[[1]]
mpg
20.09062
[[2]]
cyl
6.1875
[[3]]
disp
230.7219
[[4]]
hp
146.6875
[[5]]
drat
3.596563
....
Или вы можете просто переименовать вектор после цикла:
output_mtcars <- vector("double")
for(i in seq_along(mtcars)) {
output_mtcars[[i]] <- mean(mtcars[[i]])
}
names(output_mtcars)<-names(mtcars)
> output_mtcars
mpg cyl disp hp drat wt qsec
20.090625 6.187500 230.721875 146.687500 3.596563 3.217250 17.848750
vs am gear carb
0.437500 0.406250 3.687500 2.812500