Добавить списки Python в столбцы DataFrame - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть несколько списков Python.Но я хочу собрать каждый список в столбцы Dataframe.

new_list=pd.DataFrame([])

for i in range(0,4):
    new_list.append(my_list[i])

Затем я получаю сообщение об ошибке, TypeError: cannot concatenate object of type "<class 'numpy.ndarray'>"; only pd.Series, pd.DataFrame, and pd.Panel (deprecated) objs are valid.

my_list=([3.50913843e-05,1.64190123e-04, 4.19101449e-04, 4.40226697e-04, 3.11362684e-04],[4.573843e-05,6.795123e-04, 3.219e-04, 1.557897e-04, 3.11362684e-04], [7.0543e-05,1.64190123e-04, 2.154e-04, 4.40226697e-04, 3.11362684e-04])

Результат, который я хочу получить:

3.50913843e-05     4.573843e-05     7.0543e-05
1.64190123e-04     6.795123e-04     1.64190123e-04
4.19101449e-04     3.219e-04     2.154e-04
4.40226697e-04     1.557897e-04     4.40226697e-04
3.11362684e-04     3.11362684e-04     3.11362684e-04

Есть идеи, что происходит и как я могу это исправить?

Ответы [ 2 ]

0 голосов
/ 05 декабря 2018

Итак, используя

pd.DataFrame(np.array(my_list).T)
Out[929]: 
          0         1         2
0  0.000035  0.000046  0.000071
1  0.000164  0.000680  0.000164
2  0.000419  0.000322  0.000215
3  0.000440  0.000156  0.000440
4  0.000311  0.000311  0.000311
0 голосов
/ 05 декабря 2018

Вам не нужно итеративно создавать DataFrame - просто передайте его сразу.Либо передайте список списков и транспонируйте:

pd.DataFrame(list(my_list)).T

          0         1         2
0  0.000035  0.000046  0.000071
1  0.000164  0.000680  0.000164
2  0.000419  0.000322  0.000215
3  0.000440  0.000156  0.000440
4  0.000311  0.000311  0.000311

Или, наоборот, zip, без транспонирования.

pd.DataFrame(list(zip(*my_list)))

          0         1         2
0  0.000035  0.000046  0.000071
1  0.000164  0.000680  0.000164
2  0.000419  0.000322  0.000215
3  0.000440  0.000156  0.000440
4  0.000311  0.000311  0.000311
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...