У меня есть Panda DataFrame, который выглядит следующим образом:
country year cases population
0 Afghanistan '99 745 19987071
1 Brazil '99 37737 172006362
2 China '99 212258 1272915272
3 Afghanistan '00 2666 20595360
4 Brazil '00 80488 174504898
5 China '00 213766 1280428583
Я хочу добавить новый столбец под названием «Распространенность», который будет делить строки на население. Эта строка кода работает:
G['prevalence'] = G['cases'] / G['population']
Тем не менее, я хочу сделать то же самое, используя применить Panda. Вот что я пытаюсь сделать:
def get_prev (x, y):
return x / y
def calc_prevalence(G):
assert 'cases' in G.columns and 'population' in G.columns
###
### YOUR CODE HERE
to_return = G.copy()
new_column = to_return.apply(lambda x: get_prev(to_return.population, to_return.cases), axis=1)
to_return['prevalence'] = new_column
return to_return
###
#G_copy = G.copy()
H = calc_prevalence(G)
Я получаю KeyError: 'prevalence'
Есть идеи, что я делаю неправильно?