2014-02-10 69 views
7

我有多個大型(> 10GB)SAS數據集,我想轉換爲用於熊貓,最好使用HDF5。有許多不同的數據類型(日期,數字,文本),一些數字字段對於缺失值也有不同的錯誤代碼(即值可以是.E,.C等)。我希望保留列名並標記元數據。有沒有人找到一個有效的方法來做到這一點?將大型SAS數據集轉換爲hdf5

我試着使用MySQL作爲兩者之間的橋樑,但轉移時,我得到了一些超出範圍錯誤,再加上它是慢得令人難以置信。我也嘗試以Stata .dta格式從SAS導出,但SAS(9.3)導出的舊Stata格式與pandas中的read_stat()不兼容。我也嘗試了sas7bdat軟件包,但是從描述中沒有經過廣泛測試,所以我想以另一種方式加載數據集並比較結果以確保一切正常。

額外的細節:我正在尋找轉換的數據集是那些來自CRSP,標普數據庫,IBES和TFN從WRDS。

回答

1

我在過去沒有太多運氣。我們(我工作的地方)只是使用Tab分隔的文件在SAS和Python之間進行傳輸 - 而且我們做了很多。

這就是說,如果你是在Windows上,你可以嘗試建立一個ODBC連接並寫入文件的方式。

+1

對於csv /分隔的某種文件可能是最好的選擇。 SAS在預防互操作性方面擁有既得利益,所以我不喜歡你獲得高效轉移的機會。雖然是一個商業產品,但我聽到了有關使用此程序的人的良好報告:https://www.stattransfer.com/stattransfer/formats.html – thelatemail