johnmy
例如:airquality中的前四行。
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
现在需要进行的数据变换是第一行数据所有列的数据了除以41,第二行除以36,第三行除以12,第四行除以18,得到一个新的数据框。
我知道搞一个循环很容易实现。
请问有没有现成的函数或包具有这个功能。
doubletang
library(dplyr)
mutate_each(df, funs(./c(41,36,12,18)))
doubletang
如果不熟悉dplr包也可以这样:
sweep(df,1,c(41,36,12,18),'/')
johnmy
3x
从别的地方问的,
datNormed <- t(apply(dat, 1, function(x) x / x[1]))
就可以
airquality/airquality[,1]更简洁