Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何放置;我";在循环之前和之后$_R - Fatal编程技术网

R 如何放置;我";在循环之前和之后$

R 如何放置;我";在循环之前和之后$,r,R,我正在尝试编写一个小for循环来帮助我加载一些数据并为对象赋值。 但我偶然发现了一个问题。我不知道如何在for循环中正确地将“I”放置在符号$之前和之后 下面是一个小例子: 假设我想加载一些特定的.RData文件,在加载这些文件后,我想添加一个新的列,其中填充值为“NULL” 这段代码只是创建了名为Group1$new_c的新对象 我还想知道如何通过从列表中分配来放置“I” 例如: for( i in c(1,2,3,4,5)){ assign(paste("Group", i, sep="

我正在尝试编写一个小for循环来帮助我加载一些数据并为对象赋值。 但我偶然发现了一个问题。我不知道如何在for循环中正确地将“I”放置在符号$之前和之后

下面是一个小例子:

假设我想加载一些特定的.RData文件,在加载这些文件后,我想添加一个新的列,其中填充值为“NULL”

这段代码只是创建了名为Group1$new_c的新对象

我还想知道如何通过从列表中分配来放置“I”

例如:

for( i in c(1,2,3,4,5)){
  assign(paste("Group", i, sep=""), List$`i`)
}

有人知道我问题的答案吗


谢谢。

这可能会有帮助。它不漂亮,但我认为它做得很好

a <- list(a=2,b=3,c=4)
i = "b"
eval(parse(text=paste0("a$",i)))
[1] 3

a尽可能避免
for

data <- c(1,2,3,4,5)
data <- paste0("Group:",data)

如果要动态使用列名,请不要使用
$
-例如使用
[[

for(df in list_of_data_frames) df[["new_c"]] <- NULL

<代码> >(在ListSofOfDATAJFraseFrase]中,DF [ [ [ NexYC ] ] ]代码> EVE解析文本组合通常在R编程中被反对。在本实例中它们不必要,如果列名不符合预期(R-注入攻击不是攻击向量,但仍然),则可能导致意外的代码执行。
for (i in c(1,2,3,4,5)) {
  assign(paste("Group", i, sep=""),i)
}
for(df in list_of_data_frames) df[["new_c"]] <- NULL