Pandas: 2 столбца для пары ключ-значение - PullRequest
0 голосов
/ 13 апреля 2020

У меня есть датафрейм с 10 столбцами. Желание создать новый столбец с столбцом 9 в качестве ключа и столбцом 10 в качестве значения.

Я пробовал что-то вроде этого:

df[11]={df[9] :df[10]}

Я получил сообщение об ошибке типа «Серии», что объекты изменчивы Таким образом, они не могут быть хешированы.

Есть ли способ go по этому поводу?

Столбец 8 содержит номер сеанса, который может повторяться в других строках. Мне нужны другие столбцы, чтобы я мог сложить все ключевые значения одного сеанса в один ряд.

1 Ответ

1 голос
/ 13 апреля 2020

Вы можете сделать что-то вроде:

df[11] = [{k:v} for k, v in df.iloc[:,[9,10]].values]

Например:

df = pd.DataFrame(np.random.randn(2, 11))
df[[9,10]]

          9     10
0   -0.1223 0.6870
1   -0.1447 0.4517

df[11] = [{k:v} for k, v in df.iloc[:,[9,10]].values]
df[11]

0    {-0.12231839342645735: 0.6869982955094028}
1    {-0.14465311502679143: 0.4516671951915512}
Name: 11, dtype: object
...