Получение ValueError: конструктор DataFrame неправильно вызывается при создании кадра данных из списков списка - PullRequest
1 голос
/ 26 июня 2019

Я получаю ошибку ниже при преобразовании списков списка в фрейм данных:

повышение ValueError ('Конструктор DataFrame неправильно вызван!') ValueError: Конструктор DataFrame неправильно вызван!

У меня естьиспользовал numpy, чтобы разделить список, и теперь необходимо преобразовать эти списки списка в фрейм данных:


    import numpy as np
    import pandas as pd

    def SplitList():
        l = np.array([6,2,5,1,3,6,9,7,6])
        n = 3

        list = l.reshape((len(l)//n), n).T
        print(list)

    df = pd.DataFrame(list)

1 Ответ

1 голос
/ 26 июня 2019

Прежде всего, не используйте list в качестве имени переменной, это зарезервированное ключевое слово в Python.

Во-вторых, вам нужна ваша функция для return вашего измененного массива, поэтому вам нужно:

import numpy as np
import pandas as pd

def SplitList():
    l = np.array([6,2,5,1,3,6,9,7,6])
    n = 3

    a = l.reshape((len(l)//n), n).T
    return a

df = pd.DataFrame(SplitList())

print(df)

   0  1  2
0  6  1  9
1  2  3  7
2  5  6  6

Просто предложение, но может стать идеей сделать вашу функцию более пригодной для повторного использования. Например:

def split_list(arr, n):
    arr = np.array(arr)
    return arr.reshape(-1, n).T

split_list([6,2,5,1,3,6,9,7,6], 3)

[выход]

[[6 1 9]
 [2 3 7]
 [5 6 6]]
...