Я пытаюсь создать новый столбец в кадре данных, который выпадает 1, когда выполняются два условия: (1) ячейка в соседнем столбце больше 0 и (2) ячейка в соседнем столбце, один предыдущая строка также больше 0. Вот код:
def rule(x, y):
if x > 0 and y > 0:
return 1
else:
return 0
df = pd.DataFrame({ 'c1':[ 'high' ,'high', 'low', 'low'], 'c2': [0, 23, 17, 4]})
df['new'] = df.apply(lambda x: rule(x['c2'], x['c2']), axis = 1)
df.head()
Я не уверен, как следует записывать ссылки на массивы в лямбда-функции, но я думаю, что это более или менее похоже на лямбда-функцию.