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