Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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-在循环中将数据写入CSV_R_Loops_Csv_For Loop_Export To Csv - Fatal编程技术网

R-在循环中将数据写入CSV

R-在循环中将数据写入CSV,r,loops,csv,for-loop,export-to-csv,R,Loops,Csv,For Loop,Export To Csv,我有一个循环,它遍历变量列表(在csv中),访问数据库并提取相关数据。它在4个不同的时间段(取决于变量)执行此操作 我试图让R将此数据写入csv,但目前我只能让它将最后一个变量的数据存储在4个不同的csv文件中,因为它每次都会覆盖前一个变量 我希望这些变量的所有数据都在同一个文件/表格中。(4张工作表或4个csv文件,其中包含所有数据)这是因为在将变量输入脚本的下一个循环之前,我需要对变量进行一些数据操作 我希望它是这样的东西,但需要4个单独的表/文件,以便我可以涵盖每个时间段 date/tim

我有一个循环,它遍历变量列表(在csv中),访问数据库并提取相关数据。它在4个不同的时间段(取决于变量)执行此操作

我试图让R将此数据写入csv,但目前我只能让它将最后一个变量的数据存储在4个不同的csv文件中,因为它每次都会覆盖前一个变量

我希望这些变量的所有数据都在同一个文件/表格中。(4张工作表或4个csv文件,其中包含所有数据)这是因为在将变量输入脚本的下一个循环之前,我需要对变量进行一些数据操作

我希望它是这样的东西,但需要4个单独的表/文件,以便我可以涵盖每个时间段

date/time  | var1 | var2 |  ...  | varn
我会发布代码,但即使只发布相关的循环,周围的代码也不会有150行我对R不熟悉(我可以按照脚本操作,但很难编写自己的代码),我继承了这个项目,并且没有太长时间去做它

注意:每个变量以不同的频率记录-一些每小时只有一个数据点,其他每分钟只有一个数据点,因此需要根据记录的时间(精确到分钟)匹配这些数据点


编辑:我希望我已经足够清楚地解释了这一点

四个不同的.csv文件将是最简单的,因为您可以在循环中执行以下操作:

outfile.name <- paste('Sales', year.of.data, sep='')
write.csv(outfile.name, out.filepath, row.names=FALSE)

outfile.name你试过写.csv(…,append=T)吗?@Henk说了什么。或者,您可以使用连接来避免每次打开/关闭的开销。您是要将所有内容写入一个文件还是四个不同的文件?也许您只能发布写入文件的代码,而不能发布数据读取部分。@Heroka目前在循环结束时是一个简单的
write.csv(VarS,file=“DataS.csv”)
。@Henk,append=T似乎没有做任何不同的事情,最后一个变量是仍然保存的唯一变量。明白,4个文件。我不确定如何将其追加到数据帧中,这是否能够匹配数据点的时间?如果文件的格式都相同,且具有相同的变量名,则可以读入并重新绑定(即追加或堆叠)。如果你需要更多的细节,我会编辑你的文章,包括你的一些数据(通过使用dput)。此外,欢迎使用SO-如果您发现答案有用,请进行升级投票,如果它最终解决了您的问题,您可以将其标记为正确。这几乎是正确的。但是,数据中存在差距(不同的采样率),目前它正在平铺数据以填补差距(例如,一个变量只有10个数据项,而另一个变量只有60个,那么这10个数据项将重复6次)我想,如果我能以某种方式匹配时间戳,我可以避免这种情况?不看数据很难判断,但这听起来像是另一个问题。如果我解决了上面的问题,我希望投票,甚至将答案标记为正确,然后你可以用其他数据打开另一个问题。它在最上面的主帖子中。