Imran Mohammed
Imran Mohammed

Reputation: 17

How to merge Column cells within same DataFrame?

Header A Header B Header B Header B Header B Header C
Ship Mode First Class Second Class Third Class Premium
Order ID
order 1 20.00 30.00 40.00 50.00 sum
order 2 40.00 30.00 40.00 50.00 sum

I need to merge the header B to 4 column but the data I have is:


Header A Header B Unnamed:1 Unnamed:2 Unnamed3 Header C
Ship Mode First Class Second Class Third Class Premium -
Order ID
order 1 20.00 30.00 40.00 50.00 sum
order 2 40.00 30.00 40.00 50.00 sum


I tried np.Concatenation, but I'm not getting the same format!

Upvotes: 0

Views: 52

Answers (1)

Naveed
Naveed

Reputation: 11650

here is one way to do it


# turn the column heading into a series, brings column-names in a columnar form
# replace columns starting with Unnam to np.nan
# ffill the previous row value
# reassign to the datafram

# df2 refers to your starting dataframe

df2.columns=pd.Series(df2.columns).replace(r'Unnam*',np.nan, regex=True).ffill()
df2
    Header A    Header B    Header B     Header B    Header B   Header C
0   Ship Mode   First Class Second Class Third Class Premium    -
1   Order ID    NaN         NaN          NaN             NaN    NaN
2   order 1     20.00       30.00        40.00         50.00    sum
3   order 2     40.00       30.00        40.00         50.00    sum

Upvotes: 1

Related Questions