У меня есть пандас DataFrame, в котором я хочу заменить определенные значения в выборе столбцов на значения из другого в той же строке.
Я сделал следующее:
df[cols[23:30]] = df[cols[23:30]].apply(lambda x: x.replace(99, df['col1']))
df[cols[30:36]] = df[cols[30:36]].apply(lambda x: x.replace(99, df['col2']))
cols
- это список с именами столбцов. - 99 считается отсутствующим значением, которое я хочу заменить на (уже рассчитанное) среднее значение для данного класса (т. Е. В зависимости от col1 или col2). на выбор)
Это работает, но время, необходимое для замены всех этих значений, кажется, занимает больше времени, чем необходимо. Я полагал, что должен быть более быстрый (в вычислительном отношении) способ достижения того же самого.
Есть предложения?