如何从R中的输出结果创建.csv表?

时间:2019-04-19 09:41:14

标签: r csv

我正在运行Flexmix代码,它会像这样返回BIC和AIC的值。

    set.seed(1)

    mp8<-initFlexmix(. ~ .|id, data=op18, k=8, model=list(Model_tc1,Model_1), nrep=100)

    BIC(mp2,mp3,mp4,mp5,mp6,mp7,mp8)
    AIC(mp2,mp3,mp4,mp5,mp6,mp7,mp8)


    result
    > BIC(mp2,mp3,mp4,mp5,mp6,mp7,mp8)
             df      BIC
     mp2  50.03105 84912.01
     mp3  78.11906 78081.28
     mp4 108.32396 74303.05
     mp5 137.38793 72677.82
     mp6 165.54544 71368.86
     mp7 190.11087 69935.62
     mp8 194.56414 70693.15
    > AIC(mp2,mp3,mp4,mp5,mp6,mp7,mp8)
             df      AIC
     mp2  50.03105 84496.94
     mp3  78.11906 77433.18
     mp4 108.32396 73404.36
     mp5 137.38793 71538.02
     mp6 165.54544 69995.46
     mp7 190.11087 68358.42
     mp8 194.56414 69079.00

我想将结果转换为excel或csv文件,以便以后使用。我有什么可能性?

2 个答案:

答案 0 :(得分:2)

如果数据集很大,则可能要考虑将表转换为data.table,然后使用fwrite将其写入.csv。

来自?fwrite

  

与“ write.csv”一样,但速度要快得多(例如2秒对1分钟),而且灵活。现代机器几乎肯定有一个以上的CPU,因此'fwrite'使用它们。在包括Linux,Mac和Windows在内的所有操作系统上均可使用。

data.table是一个软件包,可让您处理,浏览和管理数据。同样,来自?data.table

  

“ data.table”(继承自)来自“ data.frame”。它提供了快速而高效的内存:文件读写器,聚合,更新,   简短,灵活的语法中的等值,非等值,滚动,范围和间隔联接,可加快开发速度。

     

它受R中“ A [B]”语法的启发,其中“ A”是一个矩阵,而“ B”是一个2列矩阵。由于“ data.table” “ data.frame”,因此它与R函数和仅接受 的包兼容   “ data.frame”。

您可能要检查其vignette(package = "data.table")

答案 1 :(得分:1)

要将其保存在csv中,可以使用write.csvwrite.tablewrite.table更具灵活性。 看起来像这样

write.table(mydata, file = "mycsv.csv", sep = ",", dec = ".", row.names = F)

有关更多信息,请参见?write.table

要将其保存到xlsx中,可以使用openxlsx软件包:

library(openxlsx)
write.xlsx(mydata, file = "myxlsx.xlsx")