【问题标题】:Feed new ID into script repeatedly反复将新 ID 输入脚本
【发布时间】:2014-06-19 12:41:19
【问题描述】:

我为我的问题寻找了一段时间的解决方案,但没有找到可以解决的问题。基本上我有以下情况:

我将一个文件读入一个名为 df1 的数据框中,该数据框有很多 id(每个 id 可以在文件中出现 80-120 次)、日期和数字数据。

我有一个脚本,它会执行大量计算,然后导出一个 csv 文件,其中的标题是我创建的分类、下划线和如下所示的 id。每个文件仅包含 1 个唯一 id,但通常是 80+ 行。

write.table(df,
            file = paste(unique(df$classification), "_", unique(df$id), ".csv"),
            sep = ",", row.names = FALSE)

我希望做的是,在我读入文件后,获取一个唯一的 id 值列表(我假设这将是一个列表?),然后将其输入到脚本的其余部分中一次。所以本质上,我会获取 df1 中的第一个唯一 ID,将其输入到子集函数中,进行大量计算,然后导出文件。转到第二个唯一 ID,将其输入子集,进行大量计算,导出文件。冲洗并重复。这似乎微不足道,但我一直在努力寻找解决方案。任何帮助将不胜感激!

我假设我可以在下面的行之前放置一个循环,然后让它循环遍历整个脚本,每次都用新的 id 替换 xxxxxxxxx?

df <- subset(df1, id == xxxxxxxxxxxxxxx) 

【问题讨论】:

    标签: r loops subset


    【解决方案1】:

    如果我正确理解你的问题,你应该可以这样循环:

    for(i in unique(df1$id)){
       df <- df1[df1$id == i,]
       ...
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-07
      • 1970-01-01
      • 2020-02-22
      • 2020-05-18
      • 1970-01-01
      • 2017-05-16
      • 2021-08-22
      • 2016-10-02
      相关资源
      最近更新 更多