В рамках некоторой очистки данных мне нужно «выровнять» значения в «столбце A» для каждой комбинации «год» и «ID» в зависимости от того, есть ли какое-либо значение = 1 в «столбце A» для «года» комбинация 'и' ID '
Я уже пробовал np.where()
, но получил только ValueError: Can only compare identically-labeled Series objects
Вот краткий пример Dataframe:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.array([[1, 2007, 0],
[2, 2008, 0],
[2, 2009, 1],
[3, 2007, 0],
[4, 2010, 0],
[4, 2011, 1],
[4, 2011, 0]]), #I want to change this 0 to 1
columns=['ID', 'Year', 'ColA'])
результат должен выглядеть следующим образом:
result = pd.DataFrame(np.array([[1, 2007, 0],
[2, 2008, 0],
[2, 2009, 1],
[3, 2007, 0],
[4, 2010, 0],
[4, 2011, 1],
[4, 2011, 1]]),
columns=['ID', 'Year', 'ColA'])