我想讀取一個大小低於110,000,000行和8列的ido文件。這些列由2個整數列和6個邏輯列組成。文件中使用分隔符"|"
。我嘗試使用read.big.matrix
,它花了很長時間。我也試過dumpDf
,它用完了RAM。我試過ff
,我聽說這是一個很好的軟件包,我正在努力解決錯誤。如果我能以某種方式閱讀,我想對此表做一些分析。如果任何人有任何建議,將是偉大的。 親切的問候, 洛爾肯在r中的大文本文件中讀取
4
A
回答
8
謝謝你的一切建議。我設法弄清楚爲什麼我不能讓錯誤工作。我會給你所有的答案和建議,所以沒有人可以再犯我愚蠢的錯誤。
首先,給我的數據中包含一些錯誤,所以我一開始就註定要失敗。直到有一位同事在另一個軟件中遇到它時,我才意識到這一點。在包含整數的列中有一些字母,這樣當read.table.ff
包試圖讀取數據集時,它會以某種方式感到困惑或者我不知道。儘管我得到了另一個數據樣本,但有1600萬行和8列有正確的條目,並且工作得很完美。我跑的代碼如下,歷時約30秒,以閱讀:
setwd("D:/data test")
library(ff)
ffdf1 <- read.table.ffdf(file = "test.ido", header = TRUE, sep = "|")
謝謝大家的時間,如果你對回答任何問題隨時問,我會盡我所能來幫助。
2
你真的需要所有的數據爲您的分析?也許你可以聚合你的數據集(比如說從分鐘值到日平均值)。這個聚合只需要完成一次,並且希望可以分塊完成。通過這種方式,您需要將所有數據一次加載到內存中。
可以使用scan
來完成塊的讀取,重要參數是skip
和n
。或者,將您的數據放入數據庫中並以這種方式提取塊。你甚至可以使用plyr
包中的函數並行運行塊,例如我的this blog post。
相關問題
- 1. 讀取R中的大型csv文件
- 2. 重新分配在C中的大文本文件中讀取
- 3. 從一個純文本文件中讀取數字中的R
- 4. R從文本文件讀取數據
- 5. R:用粘貼功能在文本文件中讀取
- 6. 在R編程中使用SQL讀取文本文件
- 7. 在R中反轉讀取.txt文件
- 8. 讀取包含R中的數值的文本文件
- 9. 在C#中讀取和寫入非常大的文本文件
- 10. 在R中的文件夾中讀取多個本地html文件
- 11. 如何讀取R中的文本文件作爲一行
- 12. 在java中讀取文本文件
- 13. 在J2ME中讀取文本文件
- 14. 在MATLAB中讀取文本文件?
- 15. 在Matlab中讀取文本文件
- 16. 在android中讀取文本文件
- 17. 在C++中讀取文本文件
- 18. 在Lua中讀取文本文件
- 19. 在Android應用程序中讀取大型10mb文本文件
- 20. 在C++中高效地讀取大文本文件
- 21. 如何在java中高效地讀取大文本文件
- 22. 在Java中讀取和處理大文本文件?
- 23. 如何讀取大文本文件?
- 24. php讀取大文本文件日誌
- 25. 讀大xls文件爲R
- 26. C#從讀取文本文件中讀取二進制文件
- 27. 從C#中的文本文件讀取#
- 28. 讀取C中的文本文件
- 29. 從C中的文本文件讀取
- 30. 讀取xcode中的文本文件
看看[this](http://stackoverflow.com/a/1820610/986817)。 – Ryogi 2012-08-02 16:46:42
你能提供一個文件樣本(第5-10行)嗎? – 2012-08-02 16:57:54
包含ff的代碼和錯誤 – mdsumner 2012-08-02 20:57:56