【发布时间】:2013-06-13 02:13:15
【问题描述】:
我有一个数据框,其中包含一组变量的观察结果:
mydata <- data.frame(Sample = c("A", "B", "C", "D"),
V1 = c(25, 27, 18, 29),
V2 = c(32, 45, 28, 30),
V3 = c(16, 32, 29, 22),
V4 = c(27, 29, 28, 32))
我需要根据一个变量特定的常量E来转换每一列的数据,我已经将它存储在另一个数据框中:
e <- data.frame(Var = c("V1", "V3", "V2", "V4"), E = c(2, 1.4, 1.7, 1.8))
我想要一个新数据框,其中包含 mydata 中数据的转换值,该值基于 e 中每个变量的正确常量,其中新值为
=1/E^(value in mydata)
我知道如何使用lapply循环遍历mydata中的每一列,我只是不知道如何指定每一列的E值需要来自e,基于变量姓名。 (e 中的值与mydata 中的列的顺序不同,并且在某些情况下,e 中会有未使用的行,即 E 的值表示 mydata 中不存在的变量。
如何根据变量名和不同数据框中的 E 对应值,对一个数据框的每一列应用我的数据转换?
【问题讨论】: