2013-05-25 35 views
0

当我粘贴代码并在其中执行时,R控制台有时会表现得非常奇怪。在执行创建输出文件的代码之后,控制台从此开始只会生成特定的输出,而不管我是否更改代码。R控制台不响应代码更改

该问题可以用下面的代码作为例子来解释。 dataframeAdataframeB两种CSV格式的电子表格中的内容当我改变的内容与read.csv

>CombinedCols <- data.frame(dataframeA, dataframeB) 
>write.table(CombinedCols, file = "/Users/Username/Results.csv", 
       append = TRUE, sep = ",") 

读取dataframeAdataframeB和在控制台重新执行代码Results.csv将被精确地生成的文件就好像我对数据帧A或B没有做任何修改。

我不知道这种情况甚至称为什么。 有没有人有任何关于这个问题的见解?

+0

您需要添加您用于“更改dataframeA和dataframeB的内容”的特定代码。 – joran

+1

我注意到你正在使用'append = TRUE',所以每次你调用'write.table'时,它都会在你的文件底部写入更多的东西。也许你只是扫描文件的顶部,因此没有注意到任何改变......也许你应该删除该选项,如果这不是你想要的。 – flodel

+0

> append = TRUE只是让我可以更容易地跟踪更改代码的效果(或缺少效果)。使参数为FALSE不会影响我遇到的这个问题。 – jmdeamer

回答

2

通过组合数据帧A和B,创建了一个新对象CombinedCols。之后,CombinedCols与其原始对象(数据帧A和B)之间没有链接。因此,数据帧A中的任何更改都不会反映在CombinedCols中。

为了使数据帧A中的变化反映在CombinedCols中,您需要使用新的已编辑数据帧重新创建它。

+0

当我阅读它时,OP指的是重新运行完整的代码(包括'CombinedCols'的生成)。 – Thomas

+4

嗯,那么我们需要更多来自OP的细节,包括一个可重现的例子。 –