Как мы можем извлечь значения pandas.DataFrame в качестве матрицы, когда DataFrame должен быть инициализирован без каких-либо значений (так как размерность каждого столбца, то неизвестно):Получение матрицы из панд DataFrame: прилипла к DTYPE объект
Например:
from pandas import DataFrame
df = DataFrame()
df = df.append(dict(foo=np.ones(2), bar=np.ones(3)), ignore_index=True) # without ignore it crashes
df = df.append(dict(foo=np.zeros(2), bar=np.zeros(3)), ignore_index=True)
print(df)
Out:
bar foo
0 [1.0, 1.0] [1.0, 1.0, 1.0]
1 [0.0, 0.0] [0.0, 0.0, 0.0]
у меня есть трудности, получать данные из каждого столбца (bar
, foo
) как матрицу, которую я мог бы срезать (в идеале: df ['bar'] [:, 2]). В самом деле, в настоящее время он остается массивным массивом с dtype = object.
df['foo'].as_matrix()
Out: array([array([ 0., 0., 0.]), array([ 1., 1., 1.])], dtype=object)
В вашем исходном образце кода нет «бара», но в вашем выводе и втором примере кода есть «бар». Я думаю, у вас может быть опечатка в этом первом фрагменте кода? Кроме того, df.append() не встречается на месте, если вы не укажете, что kwarg. Вы намеревались сделать df = df.append (... – SPKoder
Мой плохой, я отредактировал сообщение. Спасибо. – kingjr