#python #pandas #dataframe
#python #pandas #фрейм данных
Вопрос:
У меня есть фрейм данных:
df = pd.DataFrame(
[[1, 2, 3, 0, 0], [4, 5, 6, 0, 0]],
columns=['a', 'b', 'c', 'd', 'e'])
и ряд данных:
s = pd.Series({'d': 7, 'e': 8})
что мне нужно заменить значения в df
where имена столбцов, совпадающие с ключами в s
, т.Е. d
и e
здесь, на значения из s
повторяющихся в каждой df
строке. Желаемые результаты:
a b c d e
0 1 2 3 7 8
1 4 5 6 7 8
Есть ли элегантный способ pandas получить это? Большое спасибо ~
Ответ №1:
Давайте использовать DataFrame.assign
:
df.assign(**s)
a b c d e
0 1 2 3 7 8
1 4 5 6 7 8