0

我的循环采用两个数据框列“日期”和“时间”作为其参数。

由于在每个数据帧合并到其他数据后如何构造循环,因此不清楚日期和时间将显示在列表中元素 [[i]] 的组合数据帧的列位置中的位置。因此,我需要按参数位置分配 Null,即 DF[[Date]],DF[[Time]],但是,我不确定如何在 OptData 列表中引用这些列。所以 OptData[[i]][,4:5] 是一个不好的例子,因为日期和时间的列位置会随着 OptData 的每个 Dataframe 元素而改变。我修改后的问题是:如何将 null 分配给

for(i in 1:ncol(ADHR)) {...

  OptData[[i]]<-join(BEST[[i]],DataObjects[[i]], by="Date", type="left" )

即我认为它将是 OptData[[i]][,4:5]<-NULL 非常感谢任何帮助。谢谢

4

1 回答 1

1

正如阿南达所提到的,您很可能需要替换为list(NULL). 如果替换为 just NULL,则会出现错误,因为在您的示例中,您要求替换两列(即 4:5),但尚不清楚 R 如何回收该替换向量。如果您根据 R 文档提供一个明确的列表:

对于 [ ,替换值可以是一个列表:列表的每个元素用于替换(部分)一列,必要时回收列表。如果创建了由 number 指定的列,则使用相应列表元素的名称(如果有)来命名列。如果替换不是选择行,列表值可以包含 NULL 元素,这将导致相应的列被删除。(参见示例。)

于 2013-10-14T18:09:08.317 回答