使用熊貓的“大數據”工作流程幾個月來,我一直在努力想出這個問題的答案,同時學習熊貓。我在日常工作中使用SAS,這是非常棒的,因為它是核心外的支持。然而,SAS作為一個軟件是可怕的,因為許多其他原因。有一天,我希望用蟒蛇和熊貓來代替我對SAS的使用,但我目前缺乏一個大型數據集的核心工作流程。我說的不是需要分布式網絡的“大數據”,而是文件太大,無法容納內存,但足夠小,無法在硬盤上使用。我的第一個想法是用HDFStore要在磁盤上保存大型數據集,并僅將所需的數據片段提取到數據中進行分析。其他人提到MongoDB是一種更容易使用的替代方案。我的問題是:完成以下工作的最佳實踐工作流是什么?將平面文件加載到永久的磁盤上數據庫結構中。查詢該數據庫以檢索數據以輸入到熊貓數據結構中。在處理熊貓作品后更新數據庫現實世界的例子將是非常感謝的,特別是誰使用大熊貓的“大數據”。編輯-一個我希望它如何工作的例子:迭代地導入一個大型平面文件并將其存儲在一個永久的磁盤上數據庫結構中。這些文件通常太大,無法容納內存。為了使用Pandas,我想讀取這些數據的子集(通常一次只有幾列),這些數據可以放在內存中。我將通過對所選列執行各種操作來創建新列。然后,我必須將這些新列附加到數據庫結構中。我正在努力尋找一種最佳實踐的方法來執行這些步驟。閱讀有關熊貓和比目表的鏈接,似乎增加一個新的專欄可能是一個問題。編輯-專門回答杰夫的問題:我正在建立消費者信用風險模型。數據類型包括電話、SSN和地址特征、財產價值、犯罪記錄、破產等貶損信息等。我每天使用的數據集平均有1,000到2,000個混合數據類型的字段:數字和字符數據的連續變量、名義變量和序數變量。我很少追加行,但我確實執行了許多創建新列的操作。典型操作包括使用條件邏輯將幾個列組合成一個新的復合列。例如,if var1 > 2 then newvar = 'A' elif var2 = 4 then newvar = 'B'..這些操作的結果是為數據集中的每條記錄創建一個新列。最后,我想將這些新列添加到磁盤上的數據結構中.我會重復第2步,使用交叉數據和描述性統計來探索數據,試圖找到與模型的有趣、直觀的關系。一個典型的項目文件通常大約是1GB。文件被組織成這樣一種方式:一行由使用者數據的記錄組成。每一行對于每條記錄都有相同的列數。永遠都是這樣。在創建新列時,我很少會逐行子集。但是,在創建報表或生成描述性統計信息時,我通常會在行上進行子集。例如,我可能想為特定的業務創造一個簡單的頻率,比如說零售信用卡。要做到這一點,除了我想報告的任何列之外,我只選擇那些業務=零售的記錄。但是,在創建新列時,我將提取所有數據行,并且只提取操作所需的列。建模過程要求我分析每一列,使用某些結果變量尋找有趣的關系,并創建描述這些關系的新的復合列。我探索的列通常是在小集合中完成的。例如,我將集中討論一組例如20列,只處理屬性值,并觀察它們與貸款違約的關系。一旦對這些內容進行了探索,并創建了新的列,然后我將轉到另一組專欄,比如大學教育,并重復這個過程。我正在做的是創建候選變量來解釋我的數據和某些結果之間的關系。在這個過程的最后,我應用了一些學習技巧,用這些復合列創建了一個等式。我很少會將行添加到數據集中。我幾乎總是創建新的列(統計/機器學習術語中的變量或特性)。
3 回答

素胚勾勒不出你
TA貢獻1827條經驗 獲得超9個贊
添加回答
舉報
0/150
提交
取消