Beth Hooper
Beth Hooper

Reputation: 27

Merging 3 datasets together

I have 3 datasets (csv.) that I need to merge together inorder to make a motion chart. they all have countries as the columns and the year as rows.

The other two datasets look the same except one is population and the other is income. I've tried looking around to see what I can find to get the data set out like I'd like but cant seem to find anything.

I tried using pd.concat but it just lists it all one after the other not in separate columns.

merge all 3 data sets in preperation for making motionchart using pd.concat mc_data = pd.concat([df2, pop_data3, income_data3], sort = True)

Any sort of help would be appreciated

EDIT: I have used the code as suggested, however I get a heap of NaN values that shouldn't be there

mc_data = pd.concat([df2, pop_data3, income_data3], axis = 1, keys = ['df2', 'pop_data3', 'income_data3'])

EDIT2: when I run .info and .index on them i get these results. Could it be to do with the data types? or the column entries?

python output

Upvotes: 0

Views: 532

Answers (1)

hongsy
hongsy

Reputation: 1576

From this answer:

You can do it with concat (the keys argument will create the hierarchical columns index):

pd.concat([df2, pop_data3, income_data3], axis=1, keys=['df2', 'pop_data3', 'income_data3'])

Upvotes: 1

Related Questions