Chris
Chris

Reputation: 31206

pandas automatically create dataframe from list of series with column names

I have a list of pandas series objects. I have a list of functions that generate them. How do I create a dataframe of the objects with the column names being the names of the functions that created the objects?

So, to create the regular dataframe, I've got:

pandas.concat([list of series objects],axis=1,join='inner')

But I don't currently have a way to insert all the functionA.__name__, functionB.__name__, etc. as column names in the dataframe.

How would I preserve the same conciseness, and set the column names?

Upvotes: 2

Views: 2017

Answers (2)

Fabio Lamanna
Fabio Lamanna

Reputation: 21552

IIUC, given your concat dataframe df you can:

df = pandas.concat([list of series objects],axis=1,join='inner')

and then assign the column names as a list of functions names:

df.columns = [functionA.__name__, functionB.__name__, etc.]

Hope that helps.

Upvotes: 2

Mike Müller
Mike Müller

Reputation: 85442

You can set the column names in a second step:

df = pandas.concat([list of series objects],axis=1,join='inner')
df.columns = [functionA.__name__, functionB.__name__]

Upvotes: 2

Related Questions