使用R中向量的值

时间:2014-03-31 20:25:20

标签: r

假设我有一个向量x=c(3,2,1)。我有一个数据框d。我想在该数据框中添加一列,以便x取值3,然后新列取值1,否则取值0。它可以通过使用简单的" ifelse"来完成。但我的问题是我希望新的矢量名称为" var_3" (显然没有引号)我将从3中提取x[1]

我试过了:

d$paste("var",x[1],sep="_")=ifelse(d$x==x[1],1,0)

给出了错误:赋值目标扩展为非语言对象。因为粘贴给了我想要的var_3但是带引号。我也试过了无报价,但没有运气。

1 个答案:

答案 0 :(得分:1)

这不适用于$运算符,但使用[下标运算符:

d[, paste("var", x[1], sep="_")] <- ifelse(d$x == x[1], 1, 0)