Столбец A содержит диапазон чисел. Я хотел бы сравнить каждое число с любым другим числом в столбце A. Мне нужно среднее значение для каждого числа всех значений, разница которых меньше/равна 2. Желаемый результат будет в столбце B. Это решение, которое работало в Excel:
=AVERAGE(IF(INDEX(ABS($A$1:$A$5-TRANSPOSE($A$1:$A$5)),,ROW(B1))<2,$A$1:$A$5))
Однако сейчас я пытаюсь изучить Python и хотел бы перенести решение туда. Любая помощь приветствуется.
пожалуйста, не присылайте изображение для вашего df, было бы неплохо написать его здесь. Также, пожалуйста, сообщите нам, что вы сделали и что было не так, чтобы мы могли помочь.
a = np.array([4798,4802,4803,4805,4809])
a - np.nanmean(np.where(abs(b := a - a[:,None]) <= 2, b, np.nan), 0)
array([4798. , 4802.5 , 4803.33333333, 4804. ,
4809. ])
Желать результата недостаточно. Вам нужно будет написать некоторый код, чтобы фактически получить результат.