2017-08-22 28 views
0

嗯,我很好奇一個問題,如果不是世界末日,這將是有幫助和省時的。分區R腳本和/或R會話(環境)

我研究了一下,但我找不到我真正想要的。此外, Running multiple R scripts/sessions 我檢查了這個鏈接,但它再次沒有幫助我很多。

這種情況是我有一個很大的數據集(我嘗試使用的測試數據大約有6.5m行和50列,我在將數據集實現到R時也有困難,我現在使用60k行進行分析,統計模型(我試圖瞭解數據如何被操縱並理解其行爲,並希望我能夠整合這些模型並操縱我對大數據集所做的所有事情,即使不是所有的6.5m行,1m都是對我來說,如果可以的話)

不管怎麼說,另一個大問題是我的R環境,因爲數據太龐大了,需要努力工作,代碼腳本就像3500行,甚至不到15%工作問題是通過創建新的數據集,分配新模型,模型充分性檢查和新模型,等等都會花費我在環境中的新東西,而我的環境就像750MB(R會話/配置文件)。如果我劃分R腳本或環境,我希望可以減少環境內容(配置文件)的大小。

任何想法都會很棒。 Appriciated任何幫助。

編輯:創建一個乾淨的腳本,並啓動一個乾淨的環境後,數據庫實現發生沒有錯誤。以防萬一遇到像我這樣的執行問題。不過,這並不是唯一確切的方法。

+1

「我的環境就像750mb」,這是相當小的。你的問題並不十分清楚,有點漫無目的。我建議你考慮構建一個包(這也會迫使你遵循功能性編程範例,這可能有助於解決混亂的全球環境)。 – Roland

+1

650萬x 50並不是真的很大。如果這已經給你帶來麻煩,我建議你去電子商店快速購買更多的內存。 – Roland

+0

我同意,我有單個陰謀對象的大小爲多GB。在R中處理大數據時,您至少需要16GB RAM。 – LAP

回答

0

對於這個問題,我通常會編寫產生特定工作區的腳本,然後保留包含所有腳本和保存工作區的路徑的另一個腳本。

想象一下這個腳本:

## Dataset x 
# Run script to create dataset x 
source("pathtoscript.R") 

# Save dataset x environment 
save.image("pathtodatasetx.Rdata") 

# Load dataset x environment 
load("pathtodatasetx.Rdata") 

這樣我可以快速運行和保存環境,如果我所做的任何更改,或者只是將其加載到我的當前會話。