R使用gsub并循环数据框列名

时间:2016-10-20 20:40:09

标签: r loops gsub

我正在尝试遍历我的数据帧的某些列,用1替换任何字符(并忽略空白行)。

数据:

df <- structure(list(Participant = 1:3, A = c("a", "a", ""), B = c("", "b", "b"), C = c("c", "c", "c")), .Names = c("Participant", "Q1_1", "Q1_2", "Q1_3"), row.names = c(NA, -3L), class = "data.frame")

如果要循环的列是:

columns <- c("Q1_1", "Q1_3")

为什么这不起作用?

for (i in columns) {
  df$i <- gsub(".+", 1, df$i, perl=TRUE)
}

我收到了错误:

"Error in `$<-.data.frame`(`*tmp*`, "i", value = character(0)) :replacement has 0 rows, data has 3 

0 个答案:

没有答案