R:如果某个列值与之前的值不同,则将数据帧拆分为不同的数据帧?

时间:2013-09-30 14:18:01

标签: r apply

我有一个Excel文件,它会自动从某个系统中保存,包含某些股票的各种参数。该文件看起来像这样(简化: - )

Stock Date PE Volume ...
AAPL 01.01.2013 12 1'000'000
AAPL 02.01.2013 11 1'000'000
MSFT 01.01.2013 11 ...
MSFT 02.01.2013 ...

现在我想在自己的数据帧中拆分AAPL,MSFT等。那么有一个函数或应用函数应该如何在股票代码发生变化时将整个文件拆分成不同的数据框?

1 个答案:

答案 0 :(得分:7)

...如果你想导出它,那么直接做它可能会更好

dfs <- split(df, f=df[, "Stock"])
lapply(dfs, function(x) write.table(x, file=paste0(x[1,1], ".csv")))

(对不起,我没有excel,因此我使用.csv)