How to Create Pandas DataFrame from Series (With Examples)


Often you may want to create a pandas DataFrame from one or more pandas Series.

The following examples show how to create a pandas DataFrame using existing series as either the rows or columns of the DataFrame.

Example 1: Create Pandas DataFrame Using Series as Columns

Suppose we have the following three pandas Series:

import pandas as pd

#define three Series
name = pd.Series(['A', 'B', 'C', 'D', 'E'])
points = pd.Series([34, 20, 21, 57, 68])
assists = pd.Series([8, 12, 14, 9, 11])

We can use the following code to convert each series into a DataFrame and then concatenate them all into one DataFrame:

#convert each Series to a DataFrame
name_df = name.to_frame(name='name')
points_df = points.to_frame(name='points')
assists_df = assists.to_frame(name='assists')

#concatenate three Series into one DataFrame
df = pd.concat([name_df, points_df, assists_df], axis=1)

#view final DataFrame
print(df)

  name  points  assists
0    A      34        8
1    B      20       12
2    C      21       14
3    D      57        9
4    E      68       11

Notice that the three series are each represented as columns in the final DataFrame.

Example 2: Create Pandas DataFrame Using Series as Rows

Suppose we have the following three pandas Series:

import pandas as pd

#define three Series
row1 = pd.Series(['A', 34, 8])
row2 = pd.Series(['B', 20, 12])
row3 = pd.Series(['C', 21, 14])

We can use the following code to combine each of the Series into a pandas DataFrame, using each Series as a row in the DataFrame:

#create DataFrame using Series as rows
df = pd.DataFrame([row1, row2, row3])

#create column names for DataFrame
df.columns = ['col1', 'col2', 'col3']

#view resulting DataFrame
print(df)

	col1	col2	col3
0	A	34	8
1	B	20	12
2	C	21	14

Notice that the three series are each represented as rows in the final DataFrame.

Additional Resources

The following tutorials explain how to perform other common operations in Python:

How to Convert Pandas Series to DataFrame
How to Convert Pandas Series to NumPy Array
How to Convert NumPy Array to Pandas DataFrame

Leave a Reply

Your email address will not be published.