第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

合并熊貓 groupBy 對象

合并熊貓 groupBy 對象

回首憶惘然 2021-06-15 13:12:26
我有一個 CSV 格式的 2.92 億行 (6GB) 的龐大數(shù)據(jù)集。Panda 的read_csv功能不適用于這么大的文件。因此,我正在使用以下代碼以迭代方式讀取小塊(1000 萬行)中的數(shù)據(jù):for chunk in pd.read_csv('hugeData.csv', chunksize=10**7):       #something ...在#something 中,我根據(jù)某些列對行進行分組。所以在每次迭代中,我都會得到新的 groupBy 對象。我無法合并這些 groupBy 對象。一個較小的虛擬示例如下:這dummy.csv是一個 28 行的 CSV 文件,是某年某些國家之間的貿(mào)易報告。sitc是一些產(chǎn)品代碼,export是出口金額在十億美元左右。(請注意,數(shù)據(jù)是虛構(gòu)的)year,origin,dest,sitc,export2000,ind,chn,2146,22000,ind,chn,4132,72001,ind,chn,2146,32001,ind,chn,4132,102002,ind,chn,2227,72002,ind,chn,4132,72000,ind,aus,7777,192001,ind,aus,2146,302001,ind,aus,4132,122002,ind,aus,4133,302000,aus,ind,4132,62001,aus,ind,2146,82001,chn,aus,1777,92001,chn,aus,1977,312001,chn,aus,1754,122002,chn,aus,8987,72001,chn,aus,4879,32002,aus,chn,3489,72002,chn,aus,2092,302002,chn,aus,4133,132002,aus,ind,0193,62002,aus,ind,0289,82003,chn,aus,0839,92003,chn,aus,9867,312003,aus,chn,3442,32004,aus,chn,3344,172005,aus,chn,3489,112001,aus,ind,0893,17我將它分成兩個 14 行的數(shù)據(jù),并根據(jù)年份、來源、目的地對它們進行分組。 for chunk in pd.read_csv('dummy.csv', chunksize=14):       xd = chunk.groupby(['origin','dest','year'])['export'].sum();       print(xd)結(jié)果 :origin  dest  yearaus     ind   2000     6              2001     8chn     aus   2001    40ind     aus   2000    19              2001    42              2002    30        chn   2000     9              2001    13              2002    14Name: export, dtype: int64origin  dest  yearaus     chn   2002     7              2003     3              2004    17              2005    11        ind   2001    17              2002    14chn     aus   2001    15              2002    50              2003    40Name: export, dtype: int64如何合并兩個 GroupBy 對象?合并它們會不會再次在大數(shù)據(jù)中產(chǎn)生內(nèi)存問題?通過看數(shù)據(jù)的性質(zhì)來預測,如果正確合并行數(shù)肯定會減少至少 10-15 倍?;灸繕耸牵鸿b于原產(chǎn)國和目的地國,我需要繪制它們之間每年的總出口量。每次對整個數(shù)據(jù)進行查詢都需要花費大量時間。xd = chunk.loc[(chunk.origin == country1) & (chunk.dest == country2)]因此,我想通過一次以 groupBy 方式排列它們來節(jié)省時間。任何建議都非常感謝。
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號