Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

List to dataframe without any indexes or NaNs

I have a list of lists that I like to convert to a Pandas data frame.
My list looks like this:

[1 25
2 35
3 45
4 55
5 65
Name: a, Length: 5, dtype: int
6 75 
7 85
8 95
9 105
10 115
Name: b, Length: 5, dtype: int
11 125
12 135
13 145
14 155
15 165
Name: c, Length: 5, dtype: int]

My code to change it to a data frame is:

df = pd.DataFrame(list, index=None, columns=None)

the result looks like this:

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

enter image description here

But I want it to be like this:

enter image description here

Any help please?

>Solution :

Assuming that you have a list of series, you could reset the indices to make it so that the dataframe is constructed properly.

For instance, consider the following.

import pandas as pd

lst = [
    pd.Series([25,35,45,55,65], index = range(1,6)),
    pd.Series([75,85,95,105,115], index = range(6,11)),
    pd.Series([125,135,145,155,165], index = range(11,16))
]
result = pd.DataFrame([s.reset_index(drop = True) for s in lst])

The result:

     0    1    2    3    4
0   25   35   45   55   65
1   75   85   95  105  115
2  125  135  145  155  165

Also, if you’d prefer to have your columns 1-indexed instead of 0-indexed (as is the default), you can use the command

result = result.rename(columns = lambda x:x+1)
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading