1. 程式人生 > >R的.Rhistory檔案和Stata的log檔案隨筆

R的.Rhistory檔案和Stata的log檔案隨筆

JWen
參考資料

Introduction_to_Scientific_Programming_and_Simulation_Using_R
對於R的作業應該收什麼檔案,第一念頭想到“不就是.R檔案嘛”。通常程式有三個部分:輸入、計算、輸出(有些可能會加入第四部分:程式說明)。.R檔案顯然是包含上面幾個部分的,不過是不是隻有.R檔案符合檢視作業的要求呢?不然。

R中我們所建立的物件一直儲存至我們刪除它們為止。可使用命令ls()或objects()列出當前所有已定義的物件,使用rm(x)移除物件x,使用rm(list = ls())移除當前已定義的全部物件。

使用save.image(file = “fname”)可將當前工作目錄中已存在的所有物件都儲存到一個名為fname的檔案中。使用save(x, y, file = “fname”)可將指定的物件(比如x和y)儲存起來。使用load(file = “fname”)載入某些儲存物件。退出R時,R詢問是否需儲存工作空間,若儲存,則所有已存在的物件都被儲存在當前工作目錄下的.RData檔案中。

R會將所有輸入的命令記錄下來,使用savehistory(file = “fname”)可儲存歷史記錄,載入歷史檔案fname時使用命令loadhistory(file = “fname”)即可。退出R時選擇儲存工作空間,則當前歷史記錄會儲存在當前工作目錄下的.Rhistory檔案中。

(參考Introduction_to_Scientific_Programming_and_Simulation_Using_R)

從上面這裡可以看出,交作業時交.Rhistory檔案也是可以的,要使用命令loadhistory()才能開啟。在R(或RStudio)中,使用命令loadhistory()調出先前savehistory()儲存的歷史記錄,咋看之下沒什麼反應,在console區按↑和↓鍵還是會出現歷史命令的,說明的的確確匯出了歷史記錄,可是這樣看是巨不方便的。可以藉助sublime text 3開啟,安裝好sublime text後右鍵.Rhistory檔案就可以看到R程式碼,而且還有註釋。所以老師檢查作業所要求的內容,.Rhistory檔案也是有的,只是。。。只是相比.R檔案,.Rhistory檔案的閱讀體驗實在不怎麼好。。。

引文提到的.RData檔案也是賊有用的(不僅僅在檢查作業中。。。更是在研究中!!!),我們可以這麼理解:把簡單變數、向量、矩陣和陣列都記為是變數(它們的名字是固定的但是取值是變化的),變數再加上使用者定義的函式就組成物件,物件儲存在.RData檔案中。所以以後我們處理過的資料可以存為.RData檔案,附帶.R檔案的命令,在回看的時候就不用把命令又跑一邊了,同時又能有.R檔案看程式碼修改(特別是那些跑要跑老半天的程式碼)

Stata的log檔案和R的.Rhistory檔案很是類似,不過Stata的log檔案裡面包含執行結果;.Rhistory檔案只有程式碼,沒有執行結果。

後記:正是因為“是否包含執行錯誤的warning資訊”這點。。。對上交作業的log檔案,為了不包含執行錯誤的warning資訊而顯得好看,又不想麻煩地從頭開始執行一次命令,有同學直接對log檔案進行修改[壞笑]。。。當上可以操縱log檔案的男人(/女人)。

-------------本文結束,感謝您的閱讀-------------