Я пытаюсь вычислить k-3 ближайших соседей вручную, используя расстояние до Манхэттена.
У меня есть фрейм данных с именем data
и наблюдение с запросом под названием query
. Мне нужно быть в состоянии сделать что-то подобное sum(abs(query-data))
для каждого наблюдения в data
.
. До сих пор я писал для l oop вот так:
numeric_columns = data.columns[data.dtypes == np.number]
for rows in data:
print(query[numeric_columns] - data[numeric_columns])
Это возвращает имена всех столбцов со значениями как NaN для исходной длины data
: 16, 16 раз больше. Я совершенно новичок в написании циклов и не совсем понимаю, что я здесь сделал неправильно. Я также хочу иметь возможность вернуть расстояние и индекс, но думаю, что я должен попытаться получить это для l oop правильно сначала.
Кто-нибудь может мне помочь?