[問題] groupby之後怎麼存到excel不同sheet

作者: Brahms5566 (Brahms)   2018-07-14 11:42:14
板上的各位大大好
最近剛開始接觸程式語言,挫折感好強烈@@..
請問對dataframe做groupby分群之後,我想要把每個分類儲存到excel的不同sheet
sheet的名字是分類的名字,例如:形容詞、動詞、名詞
目前的寫法如下,覺得寫的很笨..好像比直接用excel還要慢...
grouped = df2.groupby('詞性')
g1 = grouped.get_group(name = '介系詞')
g2 = grouped.get_group(name = '代名詞')
g3 = grouped.get_group(name = '冠詞')
writer = pd.ExcelWriter('爬蟲-基本1200字詞.xls')
g1.to_excel(writer, sheet_name='介系詞')
g2.to_excel(writer, sheet_name='代名詞')
g3.to_excel(writer, sheet_name='冠詞')
writer.save()
如果group裡面有20個不同的分類,照現在的寫法必須要複製20行定義變數,
然後再對20個變數設定儲存sheet,而且sheet的名字還要手動key進去
請問要怎麼寫會比較好..
謝謝讀完的板友們!!
作者: f496328mm (為什麼會流淚)   2018-07-14 17:31:00
有一種東西叫做for
作者: Brahms5566 (Brahms)   2018-07-14 23:44:00
有試過for 可是不知道要怎麼將變數用迴圈寫@@請問可以提供我一些方向嗎
作者: iphone2003 (307)   2018-07-15 00:40:00
先用types = df2['詞性'].unique()取得所有詞性種類然後for t in types:group = grouped.get(name=t)group.to_excel(writer, sheet_name=t)不過其實用不著做groupby就是了...
作者: OnePiecePR (OPPR)   2018-07-15 00:46:00
iphone 好強
作者: iphone2003 (307)   2018-07-15 01:15:00
啊啊我打錯了 不是.get是.get_group 抱歉
作者: Brahms5566 (Brahms)   2018-07-15 23:55:00
感謝iphone大大!成功了!但想再請教為什麼您說不用做groupby呢?
作者: iphone2003 (307)   2018-07-16 03:18:00
如果只是想挑出相同詞性的,那df2[df2['詞性'] == '名詞']這樣就可以了
作者: Brahms5566 (Brahms)   2018-07-16 08:56:00
原來如此 謝謝~

Links booklink

Contact Us: admin [ a t ] ucptt.com