Создать фрейм данных из нескольких списков одинаковой длины - PullRequest
0 голосов
/ 17 июня 2020

У меня есть такой список,

l1=[1,2,3,4,5]
l2=[6,7,8,9,10]
l3=[11,12,13,14,15]
l4=[16,17,18,19,20]

Теперь я хочу создать фрейм данных из приведенного выше списка, где l1, l2, l3, l4 будут строками, а элементы этих строк будут значений столбцов, поэтому окончательный фрейм данных будет выглядеть так:

col1    col2    col3    col4    col5
  1       2       3       4       5
  6       7       8       9       10
  11      12      13      14      15
  16      17      18      19      20

Я мог бы сделать это, используя для l oop в каждом списке и поэлементный выбор для каждого столбца, но время выполнения будет больше, глядя для некоторых pandas ярлыков, чтобы сделать это более эффективно

Ответы [ 2 ]

0 голосов
/ 17 июня 2020
>>> l1=[1,2,3,4,5]
>>> l2=[6,7,8,9,10]
>>> l3=[11,12,13,14,15]
>>> l4=[16,17,18,19,20]
>>> data = [l1,l2,l3,l4]
>>> import pandas as pd
>>> df = pd.DataFrame(data=data, columns=[f'col_{i}' for i in range(1, len(data)+2)])
>>> df
   col_1  col_2  col_3  col_4  col_5
0      1      2      3      4      5
1      6      7      8      9     10
2     11     12     13     14     15
3     16     17     18     19     20
0 голосов
/ 17 июня 2020

Вот как:

import pandas as pd

l1=[1,2,3,4,5]
l2=[6,7,8,9,10]
l3=[11,12,13,14,15]
l4=[16,17,18,19,20]

d = {'col1':l1,'col2':l2,'col3':l3,'col4':l4}

df = pd.DataFrame(d)

print(df.to_string(index=False))

Вывод:

 col1  col2  col3  col4
    1     6    11    16
    2     7    12    17
    3     8    13    18
    4     9    14    19
    5    10    15    20
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...