Есть два шейп-файла, считанные как GeoDataFrames.Для одного столбца в каждом файле gdf мне нужно нормализовать значения, чтобы они находились в диапазоне от 0 до 1.
Я попытался использовать функцию scaler.fit_transform
для нормализации значений, но была выдана ошибка в связи с передачей в 2Dмассив в отличие от 1D массива.Поэтому я начал (безуспешно) пытаться изменить (используя np.reshape
) столбец в 1D DataFrame перед нормализацией.
output = gpd.read_file(r"C:\Users\mrich\OneDrive\GMU\Summer 2019 Comp Migration\output_3_simOutput.shp")
val = gpd.read_file(r"C:\Users\mrich\OneDrive\GMU\CSS 645 (Spring 2019)\Final Project\Other_geo_data\gadm36_TUR_1_val.shp")
# Reshape attributes
output.simEnd = np.reshape(output.simEnd, (928, -1)
val.val_mar19 = np.reshape(val.val_mar19, (928, -1)
# Normalize both actual and predicted REFPOP
scaler = preprocessing.StandardScaler()
scaled_actual = scaler.fit_transform(val.val_mar19)
scaled_predicted = scaler.fit_transform(output.simEnd)
Нормализованы два столбца: simEnd (в выходных данных) и val_mar19 (в val).Есть 928 записей в каждом.Я полагаю, что они могут быть GeoSeries.
В линиях изменения формы, Exception: Data must be 1-dimensional
.
Другая ошибка, но не могу определить, связана ли она: AttributeError: 'Series' object has no attribute 'reshape.'