GroupBy と DataFrame をリストの辞書に変換
構造化データを含む Excel ファイルが与えられた場合、目標はデータを抽出してグループ化することです特定の列ごとに取得し、値としてリストを使用して Python 辞書に保存します。 Excel シートのデータ形式は次のとおりです。
Column1 | Column2 | Column3 |
---|---|---|
0 | 23 | 1 |
1 | 5 | 2 |
1 | 2 | 3 |
1 | 19 | 5 |
2 | 56 | 1 |
2 | 22 | 2 |
3 | 2 | 4 |
3 | 14 | 5 |
4 | 59 | 1 |
5 | 44 | 1 |
5 | 1 | 2 |
5 | 87 | 3 |
解決策 1: groupby.apply().to_dict()
データを目的の辞書に変換するには
<code class="python">import pandas as pd excel = pd.read_excel(r"e:\test_data.xlsx", sheetname='mySheet', parse_cols='A,C') result = excel.groupby('Column1')['Column3'].apply(list).to_dict() print(result)</code>
解決策 2: 辞書内包表記
または、辞書内包表記を使用して同じ結果を得ることができます:
<code class="python">result = {k: list(v) for k, v in excel.groupby('Column1')['Column3']} print(result)</code>
両方のソリューションの出力は次のようになります:
{0: [1], 1: [2, 3, 5], 2: [1, 2], 3: [4, 5], 4: [1], 5: [1, 2, 3]}
以上がPython で DataFrame を列ごとにグループ化し、リストの辞書に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。