Как преобразовать 2D ndarray в dataframe? - PullRequest
0 голосов
/ 16 июня 2020

У меня есть ndarray (numpy array) (name: X) с shape: (1000, 55)

Я хочу преобразовать его в pandas dataframe с формой (1000, 2):

первый df столбец = первый столбец X

второй df столбец = остальные столбцы X

Я пробовал с:

df = pd.DataFrame({'ID':X[:,0]})
df['series'] = pd.Series(X[:,1:-1])

но я получаю ошибки (Data must be 1-dimensional)

Как мне это сделать?

Ответы [ 3 ]

2 голосов
/ 16 июня 2020

Вы можете попробовать это: -

df = pd.DataFrame({'ID':X[:,0]})
df['series'] = X[:,1:].tolist()
1 голос
/ 16 июня 2020

Может это однострочное решение

df = pd.DataFrame((X[:,0], X[:,1:]), index=['ID', 'series']).T
1 голос
/ 16 июня 2020

Вот способ сделать это (конечно, со случайными данными):

data = np.random.rand(1000, 65)
pd.DataFrame({"a": data[:,0], "b": (list(x) for x in data[:,1:])})

Результат:

            a                                                  b
0    0.033109  [0.16260718783576944, 0.9285169675075658, 0.21...
1    0.875634  [0.40738562865096173, 0.6440679729423946, 0.68...
2    0.486732  [0.09350635426799858, 0.8287836094572563, 0.70...
3    0.081493  [0.7139459852434121, 0.666703381938375, 0.2319...
4    0.874734  [0.27530490806669217, 0.8500315566615584, 0.11...
..        ...                                                ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...