Skip to content
Related Articles

Related Articles

Converting Series of lists to one Series in Pandas

View Discussion
Improve Article
Save Article
  • Last Updated : 01 Oct, 2021

Let us see how to convert a Series of lists to a single Series in Pandas.

First of all let us create a Series of lists. For this problem we have created a Series of list having 12 elements, each list is of length 3 and there are 4 lists hence total elements are 12. When the Series of list will be converted to one it will have 12 elements.

Python3




import pandas as pd
data = [[1, 2, 3], [4, 5, 6], [5, 6, 7], [9, 1, 2]]
 
s = pd.Series(data)
print(s)


Output:

Method 1: Using the extend() method

In this method, we iterate over each element of the Series and add it to a list, note that we are using the extend() method.

Python3




ls = []
 
for i in s:
    ls.extend(i)
 
s1 = pd.Series(ls)
print(s1)


Output: 

Method 2 : Using pd.concat() method

We iterate through each list in the series and convert it to Series object then we concatenate all the series along the rows to form the final Series. We also need to reset the index. 

Python3




ls = []
for i in s:
    ls.append(pd.Series(i))
 
s1 = pd.concat([*ls]).reset_index(drop = True)
 
print(s1)


Output:

Method 3: Using the apply() method. 

The Series object has an apply() method which takes in a function as an argument and applies it to every element. We then stack all the elements and reset the index .

Python3




s1 = s.apply(pd.Series).stack().reset_index(drop = True)
print(s1)


Output: 


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!