Python создает фрейм данных с одной строкой в ​​списке (хороший способ без "изменения формы") - PullRequest
0 голосов
/ 25 апреля 2018

Предположим, у нас есть данные, а columnNames, например dataExample = [1,2] columnNames = ['a', 'b'], мы хотим создать фрейм данных Python, например:

    a   b
0   1   2

Удивительно, записывая

df = pd.DataFrame( dataExample  , columns  = columnNames  )

дает ошибку, поскольку данные (т.е. [1,2]) имеют форму (2,1), а столбцам требуется форма (1,2)

Таким образом, обратный ход можетбыть

df = pd.DataFrame( np.array([1,2]).reshape(1,-1)  , columns  = ['a','b'] )

Это работает, но, кажется, не совсем "красиво" / "однострочно", поскольку я наивно ожидаю, что ответ должен быть.

Вопрос:

есть какой-нибудь "хороший" / "более короткий" способ?


Еще один способ сделать то же самое, но все же не "красиво" / "одна строка"

df = pd.DataFrame( columns  = ['a','b'], index = [0] )
df.loc[0] = [1,2]

Но опять же это не выглядит как "красиво" / "коротко"как я и ожидал


Есть связанный вопрос:

python создает фрейм данных с одной строкой в ​​списке

Но это такне отвечаю на мой вопрос

1 Ответ

0 голосов
/ 25 апреля 2018

Использование list of list:

dataExample = [1,2] 
columnNames = ['a','b']
df = pd.DataFrame( [dataExample]  , columns  = columnNames  )
print (df)
   a  b
0  1  2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...