У меня есть три кадра данных. One: базовая географическая информация домов, которую я хочу заполнить дополнительными данными. Два: Расстояния от домов (рядов) до одного из четырех источников (столбцов). Три: Соответствующий угол (0-360 градусов) от дома к источнику.
Один:
X Y ... Area_Cat UID
0 ...
1 142862.10 391169.10 ... 1 67321NY15
2 143687.10 391063.10 ... 1 67321NY4
3 144728.45 390877.88 ... 1 67321NY6
4 144842.32 391811.89 ... 1 67321NY7
5 145386.77 392740.08 ... 1 67321NY147
[5 rows x 11 columns]
Два:
1 2 3 4
1 1807.04 1894.98 2135.75 2396.95
2 1801.63 1594.55 1606.38 1744.48
3 2323.27 1835.68 1485.06 1317.95
4 1692.7 1084.16 586.009 400.732
5 1880.35 1293.06 842.389 675.357
Три:
1 2 3 4
1 201.011 220.827 236.11 245.66
2 174.359 195.045 216.163 231.166
3 148.368 160.013 176.392 193.942
4 128.085 136.861 159.281 210.549
5 93.5344 83.9145 63.1797 30.3033
Мне удалось добавить кратчайшее расстояние к фрейму данных, используя:
for index, row in two.iterrows():
one.loc[index,'Distance'] = min(row)
Результат:
X Y ... UID Distance
0 ...
1 142862.10 391169.10 ... 67321NY15 1807.043447
2 143687.10 391063.10 ... 67321NY4 1594.554866
3 144728.45 390877.88 ... 67321NY6 1317.947638
4 144842.32 391811.89 ... 67321NY7 400.732398
5 145386.77 392740.08 ... 67321NY147 675.356557
[5 rows x 12 columns]
Теперь я хочу добавитьсоответствующий угол также с именем столбца Orientation
.Я хотел бы найти индексы столбцов и строк значения min(row)
и использовать их для заполнения нового столбца значениями в третьем кадре данных.Я нашел селектор idxmin()
, но несколько попыток потерпели неудачу.Вы можете мне помочь?
Желаемый результат:
X Y ... UID Distance Orientation
0 ...
1 142862.10 391169.10 ... 67321NY15 1807.043447 201.011
2 143687.10 391063.10 ... 67321NY4 1594.554866 195.045
3 144728.45 390877.88 ... 67321NY6 1317.947638 193.942
4 144842.32 391811.89 ... 67321NY7 400.732398 210.549
5 145386.77 392740.08 ... 67321NY147 675.356557 30.3033
[5 rows x 12 columns]