0 votes
1 view
in Data Science by (30.7k points)

I have a Python DataFrame with multiple columns.

2u    2s    4r     4n     4m   7h   7v

0     1     1      0      0     0    1

0     1     0      1      0     0    1

1     0     0      1      0     1    0

1     0     0      0      1     1    0

1     0     1      0      0     1    0

0     1     1      0      0     0    1

What I want to do is to convert this pandas.DataFrame into a list like following

X = [

     [0, 0, 1, 1, 1, 0],

     [1, 1, 0, 0, 0, 1],

     [1, 0, 0, 0, 1, 1],

     [0, 1, 1, 0, 0, 0],

     [0, 0, 0, 1, 0, 0],

     [0, 0, 1, 1, 1, 0],

     [1, 1, 0, 0, 0, 1]

    ]

2u 2s 4r 4n 4m 7h 7v are column headings. It will change in different situations, so don't bother about it.

1 Answer

0 votes
by (68k points)

It just looks like a transposed matrix:

df.values.T.tolist()

[list(l) for l in zip(*df.values)]

[[0, 0, 1, 1, 1, 0],

 [1, 1, 0, 0, 0, 1],

 [1, 0, 0, 0, 1, 1],

 [0, 1, 1, 0, 0, 0],

 [0, 0, 0, 1, 0, 0],

 [0, 0, 1, 1, 1, 0],

 [1, 1, 0, 0, 0, 1]]

This returns a list of a list.

This code above could be apparently modified to list(df.values.T.flatten()) so the values will be kept by column.

If you wish to Learn more about Pandas visit this Pandas Tutorial.

Welcome to Intellipaat Community. Get your technical queries answered by top developers !


Categories

...