Пример моего numpy массива scores
и его m
числа ближайших соседей;
scores = np.random.normal(-0.2,0.01,1000)
m = np.int(np.sqrt(scores.shape[0])+0.5)
Я хочу сравнить i
-ое значение в scores
с его m
ближайших соседей (по индексу). Сравнение должно быть сделано чем-то похожим на
x[i] = (scores[i]-np.mean(scores[m])) / np.sum(scores[m])
, где np.mean(scores[m]),np.sum[scores[m]]
представляет среднее значение и сумму m
ближайших соседей scores
. Если он может обрабатывать первый и последний m
индексы, это бонус. С x
в качестве массива numpy я мог бы использовать что-то похожее на
scores[x > threshold]
, чтобы получить все оценки, которые превышают определенный порог. Идея состоит в том, чтобы назвать scores[i]
выбросом, если он превышает этот конкретный порог.