w3resource

Pandas DataFrame: Combining two series into a DataFrame


Write a Pandas program to combining two series into a DataFrame.

Sample data:
Data Series:
0 100
1 200
2 python
3 300.12
4 400
dtype: object
0 10
1 20
2 php
3 30.12
4 40
dtype: object
New DataFrame combining two series:
0 1
0 100 10
1 200 20
2 python php
3 300.12 30.12
4 400 40

Sample Solution :

Python Code :

import pandas as pd
import numpy as np
s1 = pd.Series(['100', '200', 'python', '300.12', '400'])
s2 = pd.Series(['10', '20', 'php', '30.12', '40'])
print("Data Series:")
print(s1)
print(s2)
df = pd.concat([s1, s2], axis=1)
print("New DataFrame combining two series:")
print(df)

Sample Output:

          Data Series:
0       100
1       200
2    python
3    300.12
4       400
dtype: object
0       10
1       20
2      php
3    30.12
4       40
dtype: object
New DataFrame combining two series:
        0      1
0     100     10
1     200     20
2  python    php
3  300.12  30.12
4     400     40        

Explanation:

The above code creates two Pandas Series ‘s1’ and ‘s2’ with five elements each. The elements in the two series are a mix of integer, string, and float values.

df = pd.concat([s1, s2], axis=1): This code concatenates the two series along axis 1 using the pd.concat() function to create a new DataFrame df. Since the axis is 1, the two series are stacked horizontally as columns.

The resulting DataFrame will have 5 rows and 2 columns.

Python-Pandas Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Pandas program to divide a DataFrame in a given ratio.
Next: Write a Pandas program to shuffle a given DataFrame rows.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.