在 R 中写入 CSV 时追加不起作用

Ada*_*min 2 r

我有以下 R 脚本:

target <- c("Autocorrelation","InformationContent_zero","InformationContent_one","InformationContent_two",
            "InformationContent_four","PartialIC_zero","PartialIC_one","PartialIC_two","PartialIC_four",
            "DBI_zero","DBI_one","DBI_two","DBI_four")

for (tar in target){
  AC_data <- subset(data, select=c(tar))
  AC <- aggregate(AC_data , list(class=data$TARGET_CLASS), mean)
  ordered_AC <- AC[order(-AC[tar]),]
  write.csv(ordered_AC,file="/home/nasser/Desktop/Experiments/evosuite-report/finalData.csv",append=TRUE)
}
Run Code Online (Sandbox Code Playgroud)

当我使用处理的数据运行脚本时,我得到以下结果:

                    class Autocorrelation
16    SomeExternalClass11      0.26582445
3     MoreMethodsModified      0.21295785
10  MultiPlateauxModified      0.19942221
1             DoublePeaks      0.19534564
                    class InformationContent_zero
2             MoreMethods              0.17936452
7              MultiPeaks              0.13527150
12 NeedleInHaystackNoParm              0.11714634
6    MultiMethodsModified              0.07180512
                    class InformationContent_one
2             MoreMethods             0.17936452
7              MultiPeaks             0.13527150
12 NeedleInHaystackNoParm             0.11714634
6    MultiMethodsModified             0.07180512
Run Code Online (Sandbox Code Playgroud)

问题是写入 CSV 文件的唯一数据是最后一组,即class InformationContent_one

这意味着前两组被覆盖。您知道如何解决此问题并将所有数据写入 CSV 文件吗?

Jam*_*mes 6

在 的帮助中write.table,它指出:

write.csv 和 write.csv2 提供了用于写入 CSV 文件的便捷包装器。

...

这些包装器故意不灵活:它们旨在确保使用正确的约定来写入有效的文件。更改append、col.names、sep、dec 或qmethod 的尝试将被忽略,并显示警告。

如果要附加,则需要write.table显式使用。