遍历R数据框架对象并添加列



我有一些数据帧作为R对象,以前缀和数字命名。每个数据框的列名和编号与行名相同。

我正在尝试添加基于对象迭代的列。我正在尝试以下操作:

x <- 1
repeat{
get(paste0('prefix', x))$iteration <- x-1
x = x + 1
}

但是,我得到以下错误:

target of assignment expands to non-language object

你能解释为什么这不起作用并提出解决方案吗?

谢谢。

获取以'prefix'开头的任意数字的对象的值到list('lst1')中,然后使用Map通过从对象名称的数字部分('v1')中减去1来创建一个新列,使用list2env来反映全局环境中原始对象的变化

lst1 <- mget(ls(pattern = '^prefix\d+$'))
v1 <- as.numeric(sub("prefix", "", names(lst1))) -1
lst1 <- Map(cbind, lst1, iteration = v1)
list2env(lst1, .GlobalEnv)

相关内容

  • 没有找到相关文章

最新更新