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.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics