pythonbeginner
Pandas Wide to Long (melt)
Transform a wide-format DataFrame into long format using pd.melt for analytics and visualisation.
pythonPress ⌘/Ctrl + Shift + C to copy
import pandas as pd
df_wide = pd.DataFrame({'country':['USA','UK','DE'],'sales_2022':[100,80,90],'sales_2023':[120,85,95],'sales_2024':[130,90,100]})
df_long = df_wide.melt(id_vars='country', var_name='year_col', value_name='sales')
df_long['year'] = df_long['year_col'].str.extract(r'(\d{4})').astype(int)
df_long = df_long.drop(columns='year_col')
print(df_long)Use Cases
- pivot table conversion
- tidy data
- BI tool compatibility
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
pythonintermediate
Pandas Pivot and Unpivot Reshaping
Reshape DataFrames between wide and long formats using pivot, melt, and stack operations.
Best for: Reshaping data for reporting dashboards
#pandas#pivot
pythonintermediate
Pandas MultiIndex Stack & Unstack
Work with hierarchical MultiIndex DataFrames: pivoting with stack/unstack and cross-sectional slicing.
Best for: panel data
#pandas#multiindex
pythonintermediate
Polars Pivot and Unpivot
Reshape a Polars DataFrame from long to wide (pivot) and wide to long (unpivot/melt).
Best for: data reshaping
#polars#pivot
pythonintermediate
Pandas SwapLevel MultiIndex
Swap and sort MultiIndex levels in a hierarchical DataFrame for flexible aggregation.
Best for: hierarchical reporting
#pandas#multiindex