I have a DF similar to the below. What I want to do is to take the SKUs from SKU1 and SKU2 and create a separate DF with all possible SKU values. It seems simple but I’m having some trouble.
DF
| SKU1 | SKU2 |
|---|---|
| 66FS | 6dhs |
| b87w | ssftv |
| yy5hf | |
| y346d |
Desired Output
| All_SKUs |
|---|
| 66FS |
| b87w |
| yy5hf |
| 6dhs |
| ssftv |
| y346d |
Advertisement
Answer
If order doesn’t matter, stack:
out = df.stack().droplevel(1).to_frame(name='All_SKUs')
output:
All_SKUs 0 66FS 0 6dhs 1 b87w 1 ssftv 2 yy5hf 3 y346d
Else, melt:
out = df.melt(value_name='All_SKUs').dropna().drop(columns='variable')
output:
All_SKUs 0 66FS 1 b87w 2 yy5hf 4 6dhs 5 ssftv 7 y346d