使用一列dataframe创建命名结构

时间:2017-09-18 16:07:13

标签: r dataframe

我有这个结构,data

    req_ID effort satisfaction
1     r01      1           62
2     r02      4           55
3     r03      2           29
4     r04      3           41

我想用第一列创建一个0s的命名向量,是否有其他方法可以创建它而不是这个?:

mochila <- (rep(0, nrow(data)))
names(mochila) <- c(data$req_ID)

结果:

> mochila
r01 r02 r03 r04 
  0   0   0   0   

2 个答案:

答案 0 :(得分:0)

不确定它是否更好,但你可以这样做:

mochila <- vector(length = nrow(data), mode = "integer")

然后是同一个names命令

答案 1 :(得分:0)

我们可以使用numericsetNames函数在一行中执行此操作:

mochila <- setNames(numeric(nrow(data)), data$req_ID)

# r01 r02 r03 r04 
#   0   0   0   0