Pandas Melt 関数は、データフレームを再形成し、幅の広いデータを長く整った形式に変換するための強力なツールです。これにより、データの分析と操作が容易になります。
次のデータフレームとディクショナリについて考えてみましょう:
df = pd.DataFrame([[2, 4, 7, 8, 1, 3, 2013], [9, 2, 4, 5, 5, 6, 2014]], columns=['Amy', 'Bob', 'Carl', 'Chris', 'Ben', 'Other', 'Year']) d = {'A': ['Amy'], 'B': ['Bob', 'Ben'], 'C': ['Carl', 'Chris']}
目標は、データフレームを次のように再形成することです。追加の列を含むきちんとした形式:
Group Name Year Value 0 A Amy 2013 2 1 A Amy 2014 9 2 B Bob 2013 4 ... 10 Other 2013 3 11 Other 2014 6
melt 関数だけでは変換は完了しません。望ましい結果を得るには、辞書も操作する必要があります。
m = pd.melt(df, id_vars=['Year'], var_name='Name') d2 = {} for k, v in d.items(): for item in v: d2[item] = k m['Group'] = m['Name'].map(d2)
最後に、「Other」を「Name」列から「グループ」列:
mask = m['Name'] == 'Other' m.loc[mask, 'Name'] = '' m.loc[mask, 'Group'] = 'Other'
結果のデータフレームは、目的の形式と一致します。メルト関数と追加の操作を組み合わせることで、データフレームを柔軟かつ効率的に再形成する方法が提供されます。
以上がPandas Melt とディクショナリ操作は、どのようにして広いデータフレームを整理された形式に再形成できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。