作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我有一个数据框 df
有几十个识别变量(在列中)和只有几个测量变量(也在列中)。
为了避免为每个参数重复输入所有变量,我指定了识别和测量的名称 df
列到 df_id
和 df_measured
, 分别。输入这些向量以缩短 melt
的参数输入很容易。 ...
df.m <- melt(df, id.vars = df_id, measure.vars = df_measured)
formula =
参数在
dcast
使用相同的方法来指定我的 id 变量,因为它要求输入指向列的数字位置。
df_id
的数字位置向量?如果我的输入列按顺序更改,则可能会破坏我的程序功能,或者我可以按名称引用它们并以某种方式仍然让它在
formula =
中工作争论?谢谢。
最佳答案
您可以使用 as.formula
构造一个公式。
下面是一个例子:
library(reshape2)
## Example from `melt.data.frame`
names(airquality) <- tolower(names(airquality))
df_id <- c("month", "day")
aq <- melt(airquality, id = df_id)
## Constructing the formula
f <- as.formula(paste(paste(df_id, collapse = " + "), "~ variable"))
## Applying it....
dcast(aq, f, value.var = "value", fun.aggregate = mean)
关于r - 如何在 dcast (reshape2) 的公式参数中使用列名的字符向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28484696/
我是一名优秀的程序员,十分优秀!