Создать новый столбец панд с тем же списком, что и в каждой строке? - PullRequest
0 голосов
/ 27 апреля 2018

Я хотел бы создать новый столбец в кадре данных, у которого есть список в каждой строке. Я ищу что-то, что будет достигать следующего:

df = pd.DataFrame(data={'A': [1, 2, 3], 'B': ['x', 'y', 'z']})
list_=[1,2,3]
df['new_col] = list_
   A       B     new_col
0  1       x     [1,2,3]
1  2       y     [1,2,3] 
2  3       z     [1,2,3]

Кто-нибудь знает, как этого добиться? Спасибо!

Ответы [ 3 ]

0 голосов
/ 27 апреля 2018
df = pd.DataFrame(data={'A': [1, 2, 3], 'B': ['x', 'y', 'z']})
list_=[1,2,3]
df['new_col'] = [list_]*len(df)

Выход:

    A   B   new_col
0   1   x   [1, 2, 3]
1   2   y   [1, 2, 3]
2   3   z   [1, 2, 3]

Подсказка: list в качестве имени переменной не рекомендуется. list - это встроенный тип, например str, int и т. Д.

0 голосов
/ 27 апреля 2018
df['new_col'] = [[1,2,3] for j in range(df.shape[0])]
0 голосов
/ 27 апреля 2018
df['new_col'] = pd.Series([mylist for x in range(len(df.index))])

(«list» - ужасное имя переменной, поэтому в этом примере я использую «mylist»).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...