{"id":308548,"date":"2020-08-16T15:00:35","date_gmt":"2020-08-16T15:00:35","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=308548"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2020-08-16T15:00:35","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=308548","title":{"rendered":"\u041f\u0435\u0440\u0432\u044b\u0435 \u0448\u0430\u0433\u0438 \u0432 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c Geopandas \u0438 OSM"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/515328\/\">\n<p><img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/3xCdF3CN\/world-cat.jpg\" alt=\"image\"\/><br \/>  \u0423 \u043c\u043d\u043e\u0433\u0438\u0445 \u0445\u043e\u0442\u044c \u0440\u0430\u0437 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0433\u043e\u0440\u043e\u0434\u0430 \u0438\u043b\u0438 \u0441\u0442\u0440\u0430\u043d\u044b, \u043d\u0430\u043d\u0435\u0441\u044f \u043d\u0430 \u043d\u0435\u0435 \u0441\u0432\u043e\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 (\u0442\u043e\u0447\u043a\u0438, \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u044b, \u0442\u0435\u043f\u043b\u043e\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0438 \u0442.\u0434.).<br \/>  \u041a\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0435\u0448\u0438\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443, \u043e\u0442\u043a\u0443\u0434\u0430 \u0432\u0437\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0433\u043e\u0440\u043e\u0434\u0430 \u0438\u043b\u0438 \u0441\u0442\u0440\u0430\u043d\u044b \u0434\u043b\u044f \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u2014 \u0432 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c.<\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<h1 id=\"vvedenie\">\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h1>\n<p>  <\/p>\n<p>\u041d\u0435\u0434\u0430\u0432\u043d\u043e \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0435 \u043a\u0430\u0440\u0442\u044b \u0420\u043e\u0441\u0441\u0438\u0438 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0443\u0440\u043e\u0432\u043d\u044f\u0445 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 (\u0441\u0443\u0431\u044a\u0435\u043a\u0442\u044b, \u0433\u043e\u0440\u043e\u0434\u0430, \u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u0440\u0430\u0439\u043e\u043d\u044b) \u0438 \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u043d\u0438\u0438 \u043a \u043d\u0435\u0439 \u0440\u044f\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <\/p>\n<p>\u0413\u0440\u0443\u0431\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u0442\u0435\u043f\u043b\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u043d\u0430\u043f\u043e\u0434\u043e\u0431\u0438\u0435 \u0442\u0430\u043a\u043e\u0439:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u0435\u043b\u0435\u043d\u0438\u044f \u041c\u043e\u0441\u043a\u0432\u044b \u043f\u043e \u0440\u0430\u0439\u043e\u043d\u0430\u043c<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<p><img decoding=\"async\" src=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/b\/b9\/%D0%9A%D0%B0%D1%80%D1%82%D0%BE%D1%81%D1%85%D0%B5%D0%BC%D0%B0_%D0%BF%D0%BB%D0%BE%D1%82%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%BD%D0%B0%D1%81%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D1%8B.PNG\/770px-%D0%9A%D0%B0%D1%80%D1%82%D0%BE%D1%81%D1%85%D0%B5%D0%BC%D0%B0_%D0%BF%D0%BB%D0%BE%D1%82%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%BD%D0%B0%D1%81%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D1%8B.PNG\" alt=\"image\"\/><br \/>  <a href=\"http:\/\/www.statdata.ru\/karta\/moscow-density\">\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a<\/a><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p>\u0417\u0430\u0434\u0430\u0447\u0430 \u043e\u0441\u043b\u043e\u0436\u043d\u044f\u043b\u0430\u0441\u044c \u0442\u0435\u043c \u0444\u0430\u043a\u0442\u043e\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043d\u0435 \u0431\u044b\u043b\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0441 \u043a\u0430\u0440\u0442\u043e\u0439 \u0434\u043b\u044f \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0430 \u0434\u0430\u043d\u043d\u044b\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c, \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0435 \u043a \u043f\u043e\u0447\u0442\u043e\u0432\u043e\u043c\u0443 \u043a\u043e\u0434\u0443 (\u0442\u043e \u0435\u0441\u0442\u044c, \u0443 \u043d\u0430\u0441 \u043d\u0435\u0442 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u043a \u0441\u0443\u0431\u044a\u0435\u043a\u0442\u0443 \u0444\u0435\u0434\u0435\u0440\u0430\u0446\u0438\u0438 \/ \u0433\u043e\u0440\u043e\u0434\u0443 \/ \u0440\u0430\u0439\u043e\u043d\u0443).<\/p>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043f\u043e\u0434\u0435\u043b\u044e\u0441\u044c \u0441\u0432\u043e\u0438\u043c \u043e\u043f\u044b\u0442\u043e\u043c \u043a\u0430\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u0430 .shp \u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 geopandas.<\/p>\n<p>  <\/p>\n<h1 id=\"formirovanie-podhoda\">\u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0430<\/h1>\n<p>  <\/p>\n<p>\u0424\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e, \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u0442\u0440\u0435\u043c \u0448\u0430\u0433\u0430\u043c:<\/p>\n<p>  <\/p>\n<ol>\n<li><strong>\u041f\u043e\u0438\u0441\u043a<\/strong> \u0434\u0430\u043d\u043d\u044b\u0445 \u2014 \u043a\u0430\u0440\u0442\u044b \u0420\u043e\u0441\u0441\u0438\u0438 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u0443\u0440\u043e\u0432\u043d\u044f\u0445 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/li>\n<li><strong>\u041c\u044d\u0442\u0447\u0438\u043d\u0433<\/strong> \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043a\u0430\u0440\u0442\u043e\u0439 \u0438\u0437 \u0448\u0430\u0433\u0430 &quot;1&quot;<\/li>\n<li><strong>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430<\/strong> \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432, \u043f\u0440\u0430\u0437\u0434\u043d\u043e\u0432\u0430\u043d\u0438\u0435<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u041d\u0438\u0436\u0435 \u044f \u043e\u043f\u0438\u0448\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u044d\u0442\u0438\u0445 \u0448\u0430\u0433\u043e\u0432, \u043f\u043e\u0434\u0435\u043b\u044e\u0441\u044c \u0440\u0435\u043b\u0435\u0432\u0430\u043d\u0442\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u043c\u043e\u0435\u043c \u043f\u0443\u0442\u0438.<\/p>\n<p>  <\/p>\n<h1 id=\"poisk\">\u041f\u043e\u0438\u0441\u043a<\/h1>\n<p>  <\/p>\n<h3 id=\"format-faylov\">\u0424\u043e\u0440\u043c\u0430\u0442 \u0444\u0430\u0439\u043b\u043e\u0432<\/h3>\n<p>  <\/p>\n<p>\u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0444\u043e\u0440\u043c\u0430\u0442 Shapefile.<br \/>  \u041d\u0435 \u0432\u0434\u0430\u0432\u0430\u044f\u0441\u044c \u0432 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438, Shapefile \u2014 \u044d\u0442\u043e \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0444\u0438\u0433\u0443\u0440\u044b (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0430\u0439\u043e\u043d\u044b \u0433\u043e\u0440\u043e\u0434\u0430), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u0442\u044c \u043a \u043d\u0438\u043c \u0440\u044f\u0434 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u0441\u0435\u043b\u0435\u043d\u0438\u0435 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0440\u0430\u0439\u043e\u043d\u0435).<br \/>  \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0440\u0435\u043b\u0435\u0432\u0430\u043d\u0442\u043d\u044b\u0435 \u0442\u0435\u0440\u043c\u0438\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043e\u043f\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c:<\/p>\n<p>  <\/p>\n<ul>\n<li><strong>\u0422\u043e\u0447\u043a\u0430<\/strong> \u2014 \u0421\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u0435 \u0448\u0438\u0440\u043e\u0442\u044b \u0438 \u0434\u043e\u043b\u0433\u043e\u0442\u044b<\/li>\n<li><strong>\u041b\u0438\u043d\u0438\u044f<\/strong> \u2014 \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0442\u043e\u0447\u0435\u043a, \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u044b\u0445 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439 \u0432 <u>\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c<\/u> \u043f\u043e\u0440\u044f\u0434\u043a\u0435<\/li>\n<li><strong>\u041f\u043e\u043b\u0438\u0433\u043e\u043d<\/strong> \u2014 \u0417\u0430\u043c\u043a\u043d\u0443\u0442\u0430\u044f \u043b\u0438\u043d\u0438\u044f, \u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442 \u043f\u0435\u0440\u0432\u0430\u044f \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0442\u043e\u0447\u043a\u0430\\<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0432 \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 <a href=\"https:\/\/habr.com\/ru\/post\/270513\/\"><strong>\u0441\u0442\u0430\u0442\u044c\u0435<\/strong><\/a>.<\/p>\n<p>  <\/p>\n<h3 id=\"istochnik-dannyh\">\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445<\/h3>\n<p>  <\/p>\n<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u044b\u043b \u0432\u044b\u0431\u0440\u0430\u043d <strong>OpenStreetMap <\/strong>(\u043e\u043d \u0436\u0435 OSM). \u042d\u0442\u043e \u043a\u0430\u0440\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0435\u0440\u0432\u0438\u0441, \u043d\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u043f\u043e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0443 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438 \u2014 \u0436\u0435\u043b\u0430\u044e\u0449\u0438\u0435 \u043c\u043e\u0433\u0443\u0442 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435.<\/p>\n<p>  <\/p>\n<p>\u0411\u044b\u0441\u0442\u0440\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u0430\u0440\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u043e\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u0433\u043e\u0440\u043e\u0434\u043e\u0432, \u0442\u0430\u043a \u0438 \u043c\u0435\u043b\u043a\u0438\u0445 \u0434\u0435\u0440\u0435\u0432\u0435\u043d\u044c \u0438 \u0441\u0435\u043b. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u043e \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u0438\u0445 \u043d\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0430 <a href=\"https:\/\/welcome.openstreetmap.org\/working-with-osm-data\/how-good-is-osm\/\"><strong>\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 OSM<\/strong><\/a>.<\/p>\n<p>  <\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0432\u044b\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0441 OSM, \u043c\u044b \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u0433\u0435\u043d\u0442\u0441\u0442\u0432\u0430 (\u043a\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/wiki.openstreetmap.org\/wiki\/Downloading_data\"><strong>\u0442\u0443\u0442<\/strong><\/a>).<br \/>  \u041c\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438 <a href=\"https:\/\/data.nextgis.com\/ru\/?lvl=regions&amp;country=RU\"><strong>NextGis<\/strong><\/a>, \u043e\u0434\u043d\u0430\u043a\u043e \u0435\u0441\u0442\u044c \u0438 <a href=\"https:\/\/wiki.openstreetmap.org\/wiki\/Commercial_OSM_Software_and_Services\"><strong>\u0434\u0440\u0443\u0433\u0438\u0435<\/strong><\/a> \u0430\u0433\u0435\u043d\u0442\u0441\u0442\u0432\u0430, \u0447\u044c\u0435\u0439 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <\/p>\n<p>\u041d\u0430 NextGis \u043c\u043e\u0436\u043d\u043e \u0437\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u043b\u0430\u0442\u0443 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c <a href=\"https:\/\/data.nextgis.com\/ru\/region\/RU-MOW\/\"><strong>\u043a\u0430\u0440\u0442\u0443 \u041c\u043e\u0441\u043a\u0432\u044b<\/strong> <\/a>(\u0437\u0430\u043d\u044f\u043b\u0430 ~30 \u043c\u0438\u043d\u0443\u0442) \u0438 \u0437\u0430 \u0447\u0443\u0442\u044c \u043c\u0435\u043d\u0435\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u2014 <a href=\"https:\/\/data.nextgis.com\/ru\/region\/RU\/\"><strong>\u0432\u0441\u0435\u0439 \u0420\u043e\u0441\u0441\u0438\u0438<\/strong><\/a> (\u0437\u0430\u043d\u044f\u043b\u0430 ~4 \u0434\u043d\u044f). \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 \u043f\u043e <a href=\"https:\/\/data.nextgis.com\/ru\/custom_region\/\"><strong>\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438<\/strong><\/a>.<\/p>\n<p>  <\/p>\n<h1 id=\"metching\">\u041c\u044d\u0442\u0447\u0438\u043d\u0433<\/h1>\n<p>  <\/p>\n<p>\u041a\u0430\u0440\u0442\u0430 \u0435\u0441\u0442\u044c \u2014 \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u0432\u044b\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0432\u044f\u0437\u044c \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u043c\u0438 \u043a\u043e\u0434\u0430\u043c\u0438 (\u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u044b \u043d\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435) \u0438 \u043d\u0443\u0436\u043d\u044b\u043c\u0438 \u043d\u0430\u043c \u0443\u0440\u043e\u0432\u043d\u044f\u043c\u0438 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 (\u0433\u043e\u0440\u043e\u0434 \/ \u0440\u0430\u0439\u043e\u043d \u0438 \u0442\u0434).<\/p>\n<p>  <\/p>\n<p>\u0418\u0441\u0445\u043e\u0434\u043d\u043e \u0431\u044b\u043b\u0430 \u043d\u0430\u0434\u0435\u0436\u0434\u0430 \u043d\u0430 <a href=\"https:\/\/vinfo.russianpost.ru\/database\/ops.html\"><strong>\u044d\u0442\u0430\u043b\u043e\u043d\u043d\u044b\u0439 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u041f\u043e\u0447\u0442\u044b \u0420\u043e\u0441\u0441\u0438\u0438<\/strong><\/a>, \u043e\u0434\u043d\u0430\u043a\u043e \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043d\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0435\u0433\u043e \u0434\u0430\u043b\u0435\u043a\u043e \u043e\u0442 \u0438\u0434\u0435\u0430\u043b\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d\u043e, \u0432 \u043a\u0430\u043a\u043e\u043c \u0433\u043e\u0440\u043e\u0434\u0435 \u043e\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f, \u043d\u043e \u043d\u0435 \u0432 \u043a\u0430\u043a\u043e\u043c \u0440\u0430\u0439\u043e\u043d\u0435). \u041a \u0442\u043e\u043c\u0443 \u0436\u0435 \u0432 \u0420\u043e\u0441\u0441\u0438\u0438, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0442 \u0421\u0428\u0410, \u0437\u0434\u0430\u043d\u0438\u044f \u0441 \u043e\u0434\u043d\u0438\u043c \u0438 \u0442\u0435\u043c \u0436\u0435 \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u043c \u043a\u043e\u0434\u043e\u043c \u043c\u043e\u0433\u0443\u0442 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0430\u0439\u043e\u043d\u0430\u0445 \u0433\u043e\u0440\u043e\u0434\u0430, \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0433\u043e\u0440\u043e\u0434\u0430\u0445.<\/p>\n<p>  <\/p>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0431\u044b\u043b\u043e \u0440\u0435\u0448\u0435\u043d\u043e \u043e\u043f\u0435\u0440\u0435\u0442\u044c\u0441\u044f \u043d\u0430 \u0432\u0441\u0435 \u0442\u043e\u0442 \u0436\u0435 OpenStreetMap. \u041d\u0430 \u043e\u0434\u043d\u043e\u043c \u0438\u0437 \u0441\u043b\u043e\u0435\u0432 \u043a\u0430\u0440\u0442\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0437\u0434\u0430\u043d\u0438\u044f, \u0443 \u0447\u0430\u0441\u0442\u0438 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043f\u043e\u043b\u0435 \u0441 \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u043c \u043a\u043e\u0434\u043e\u043c.<br \/>  \u0415\u0441\u043b\u0438 \u043d\u0430\u0439\u0442\u0438 \u0432\u0441\u0435 \u0434\u043e\u043c\u0430 \u0441 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0430 \u043f\u043e\u0442\u043e\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u0432 \u043a\u0430\u043a\u043e\u043c \u0440\u0430\u0439\u043e\u043d\u0435 \u0433\u043e\u0440\u043e\u0434\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0438\u0437 \u043d\u0438\u0445, \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0440\u0430\u0439\u043e\u043d \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0434\u0435\u043a\u0441\u0430 &quot;\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c&quot;.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u0438\u043c\u0435\u0435\u0442 \u0440\u044f\u0434 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0433\u0443\u0442 \u043d\u0430\u0439\u0442\u0438\u0441\u044c \u0440\u0430\u0439\u043e\u043d\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0437\u0434\u0430\u043d\u0438\u044f \u0441 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c, \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u0438 \u0435\u0433\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0438 \u043c\u043d\u043e\u0433\u0438\u0435 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u0441\u044f\u043a\u0438.<br \/>  \u0412 \u0442\u043e \u0436\u0435 \u0432\u0440\u0435\u043c\u044f, \u0432 \u0438\u0442\u043e\u0433\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0436\u043d\u0435\u043d\u0438\u044f \u043c\u044b \u0443\u0432\u0438\u0434\u0435\u043b\u0438 \u0432\u043f\u043e\u043b\u043d\u0435 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b (\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043d\u0438\u0445 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 &quot;\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430&quot;).<\/p>\n<p>  <\/p>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c, \u043f\u0440\u043e\u0449\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0435\u043c \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u0442\u0430\u043a \u0447\u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0434\u0435\u043b\u0443!<\/p>\n<p>  <\/p>\n<h3 id=\"ustanovka-i-import-bibliotek\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u0438\u043c\u043f\u043e\u0440\u0442 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/h3>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0432\u0441\u0435\u0439 \u043d\u0430\u0448\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 Geopandas, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u0441\u0435\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 Pandas, Matplotlib \u0438 Numpy.<br \/>  \u041f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 Geopandas \u0447\u0435\u0440\u0435\u0437 pip \u043d\u0430 Windows \u0432\u044b\u0441\u043a\u0430\u043a\u0438\u0432\u0430\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0430, \u0442\u0430\u043a \u0447\u0442\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f <code>conda install geopandas<\/code> .<\/p>\n<p>  <\/p>\n<pre><code class=\"python\">import pandas as pd import numpy as np import geopandas as gpd from matplotlib import pyplot as plt<\/code><\/pre>\n<p>  <\/p>\n<h3 id=\"otkryvaem-shapefile\">\u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c Shapefile<\/h3>\n<p>  <\/p>\n<p>\u041a\u0430\u0440\u0442\u044b \u043d\u0430\u0448\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 zip \u0430\u0440\u0445\u0438\u0432\u0430.<br \/>  \u041f\u0440\u0438 \u0435\u0433\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u0432 \u043f\u0430\u043f\u043a\u0435 data \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0444\u0430\u0439\u043b\u043e\u0432 \u0441 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\u043c\u0438. \u042d\u0442\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0441\u043b\u043e\u0438, \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0441\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0444\u0430\u0439\u043b (\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 .shp) \u0438 \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 (\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f .cpg, .dbf, .prj, .shx).<\/p>\n<p>  <\/p>\n<p><strong>\u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u043e\u0432, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u043d\u0430\u0447\u0430\u043b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 geopandas:<\/strong><\/p>\n<p>  <\/p>\n<ul>\n<li>\u0410\u0440\u0445\u0438\u0432 \u043a\u0440\u0430\u0439\u043d\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0443\u0436\u0438\u043c\u0430\u0435\u0442 \u043a\u0430\u0440\u0442\u0443. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0430\u0440\u0445\u0438\u0432 \u0441 \u043a\u0430\u0440\u0442\u043e\u0439 \u0432\u0441\u0435\u0439 \u0420\u043e\u0441\u0441\u0438\u0438 \u0432\u0435\u0441\u0438\u0442 1.2GB, \u0430 \u043f\u0440\u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0435 \u043e\u043d \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0443\u0436\u0435 22.8GB. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043d\u0435 \u0441\u0442\u043e\u0438\u0442 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0432 \u2014 \u043b\u0443\u0447\u0448\u0435 \u0432\u044b\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0438\u0437 \u043d\u0435\u0433\u043e \u043d\u0443\u0436\u043d\u044b\u0435 \u043d\u0430\u043c \u0441\u043b\u043e\u0438 (\u0431\u043b\u0430\u0433\u043e geopandas \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a)<\/li>\n<li>\u0420\u0430\u0437\u043d\u044b\u0435 \u043f\u043e\u043b\u044f \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430\u0445. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u043d\u0430\u0448\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0431\u044b\u043b\u0438 \u0432 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0435 &#8216;cp1251&#8217;, \u0430 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f \u2014 \u0432 &#8216;utf-8&#8217;<\/li>\n<li>\u041f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0441\u043b\u043e\u044f\u043c\u0438, \u0432\u0437\u044f\u0442\u044b\u043c\u0438 \u0438\u0437 \u0440\u0430\u0437\u043d\u044b\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432, \u043c\u043e\u0433\u0443\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0438\u0445 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u0438\u0437-\u0437\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0439 \u043a\u0430\u0440\u0442. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e\u0431 \u044d\u0442\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u0445 \u0435\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/geopandas.org\/projections.html\"><strong>\u0442\u0443\u0442<\/strong><\/a>.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"python\"># \u041f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435 data \u0432 \u043d\u0430\u0448\u0435\u043c \u0430\u0440\u0445\u0438\u0432\u0435 # \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0444\u043e\u0440\u043c\u0430\u0442 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a zip-\u0430\u0440\u0445\u0438\u0432\u0443 \u0438 \u043a \u043f\u0430\u043f\u043a\u0435 \u0432 \u043d\u0435\u043c ZIP_PATH = 'zip:\/\/C:\/Users\/...\/Moscow.zip!data\/'  # \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0441\u043b\u043e\u0435\u0432 \u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 shp \u0424\u0430\u0439\u043b\u043e\u0432 LAYERS_DICT = {     'boundary_L2': 'boundary-polygon-lvl2.shp', # \u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0443\u0440\u043e\u0432\u043d\u0435\u0439     'boundary_L4': 'boundary-polygon-lvl4.shp',     'boundary_L5': 'boundary-polygon-lvl5.shp',     'boundary_L8': 'boundary-polygon-lvl8.shp',     'building_point': 'building-point.shp',  # \u0417\u0434\u0430\u043d\u0438\u044f, \u043e\u0442\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u043b\u0438\u0433\u043e\u043d\u043e\u0432     'building_poly': 'building-polygon.shp'  # \u0417\u0434\u0430\u043d\u0438\u044f, \u043e\u0442\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435 \u0442\u043e\u0447\u0435\u043a               }  # \u041f\u043e\u0434\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0441\u043b\u043e\u0438 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0446\u0438\u043a\u043b\u0430 i = 0 for layer in LAYERS_DICT.keys():     path_to_layer = ZIP_PATH + LAYERS_DICT[layer]      if path_to_layer=='areas':         encoding = 'cp1251'     else:         encoding = 'utf-8'     globals()[layer] = gpd.read_file(path_to_layer, encoding=encoding)     i+=1     print(f'[{i}\/{len(LAYERS_DICT)}] LOADED {layer} WITH ENCODING {encoding}')<\/code><\/pre>\n<p>  <\/p>\n<p><strong>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/strong><\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">[1\/6] LOADED boundary_L2 WITH ENCODING utf-8 [2\/6] LOADED boundary_L4 WITH ENCODING utf-8 [3\/6] LOADED boundary_L5 WITH ENCODING utf-8 [4\/6] LOADED boundary_L8 WITH ENCODING utf-8 [5\/6] LOADED building_point WITH ENCODING utf-8 [6\/6] LOADED building_poly WITH ENCODING utf-8<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u0448\u0435\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 GeoDataFrame, \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0440\u0430\u0437\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043a\u0430\u0440\u0442\u044b \u041c\u043e\u0441\u043a\u0432\u044b. \u041e\u0442\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0420\u0438\u0441\u0443\u0435\u043c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0440\u0430\u0437\u043d\u044b\u0445 \u0443\u0440\u043e\u0432\u043d\u0435\u0439<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">fig, (ax1, ax2, ax3, ax4) = plt.subplots(1, 4, figsize=(15,15)) boundary_L2.plot(ax=ax1, color='white', edgecolor='black') boundary_L4.plot(ax=ax2, color='white', edgecolor='black') boundary_L5.plot(ax=ax3, color='white', edgecolor='black') boundary_L8.plot(ax=ax4, color='white', edgecolor='black')<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<br \/>  <img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/3JGWJw2c\/Admin-screens.png\" alt=\"image\"\/><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0443\u0440\u043e\u0432\u043d\u0435 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438, \u0441\u043e\u0432\u0435\u0442\u0443\u044e \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 <a href=\"https:\/\/wiki.openstreetmap.org\/wiki\/RU:Tag:boundary=administrative\"><strong>\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443<\/strong><\/a> \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 OSM. \u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432\u0430\u0436\u043d\u043e \u043f\u0440\u0438 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0435 \u043a\u0430\u0440\u0442\u044b \u0432\u0441\u0435\u0439 \u0420\u043e\u0441\u0441\u0438\u0438 \u2014 \u0441\u043b\u043e\u0438 \u0432 \u041c\u043e\u0441\u043a\u0432\u0435 \u0438 \u041f\u0438\u0442\u0435\u0440\u0435 \u043c\u043e\u0433\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0435 \u043e\u0442 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0420\u043e\u0441\u0441\u0438\u0438 \u0443\u0440\u043e\u0432\u043d\u0438 \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438. <\/p>\n<p>  <\/p>\n<p>\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043c\u043e\u0436\u0435\u043c \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u043e\u0439 \u0441\u043e \u0437\u0434\u0430\u043d\u0438\u044f\u043c\u0438. \u0418\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0430 \u0437\u0430\u0439\u043c\u0435\u0442 \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0437\u0430\u0442\u043e \u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043a\u0440\u0430\u0441\u0438\u0432\u0430\u044f.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0420\u0438\u0441\u0443\u0435\u043c \u0437\u0434\u0430\u043d\u0438\u044f \u041c\u043e\u0441\u043a\u0432\u044b<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">building_poly.plot(figsize=(10,10))<\/code><\/pre>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/cLwZW6t4\/download.png\" alt=\"image\"\/><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043b\u043e\u0436\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u043e\u0435\u0432 \u043a\u0430\u0440\u0442\u044b \u043e\u0434\u0438\u043d \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u0432\u0430 \u0441\u043b\u043e\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0433\u0440\u0430\u043d\u0438\u0446 \u041c\u043e\u0441\u043a\u0432\u044b<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">base = boundary_L2.plot(color='white', alpha=.8, edgecolor='black', figsize=(50,50)) boundary_L8.plot(ax=base, color='white', edgecolor='red', zorder=-1)<\/code><\/pre>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/s2K5njcw\/layers.png\" alt=\"image\"\/><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p><a href=\"https:\/\/geopandas.org\/mapping.html\"><strong>\u0422\u0443\u0442 <\/strong><\/a>\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u0440\u043e \u0440\u0430\u0437\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0441\u043b\u043e\u0435\u0432 \u0432 gpd.<\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u044f\u0442\u043d\u043e \u0443\u0434\u0438\u0432\u0438\u043b\u043e, \u0447\u0442\u043e \u0432 Geopandas \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438\u0437 Pandas. \u041c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u0441\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b \u0441\u043b\u043e\u044f \u0432 \u0432\u0438\u0434\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 (\u0442\u043e\u0447\u043a\u0443, \u043b\u0438\u043d\u0438\u044e \u0438\u043b\u0438 \u043f\u043e\u043b\u0438\u0433\u043e\u043d), \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u0414\u0430\u0442\u0430\u0444\u0440\u0435\u0439\u043c\u043e\u043c.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">boundary_L8.head()<\/code><\/pre>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/Wbzd6mFF\/head.png\" alt=\"image\"\/><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p><strong>\u0421\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432 \u043d\u0430\u043c \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0432\u0430\u0436\u043d\u044b 2:<\/strong><\/p>\n<p>  <\/p>\n<ul>\n<li><strong>OSM_ID <\/strong> \u2014 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 OpenStreetMap<\/li>\n<li><strong>geometry <\/strong> \u2014 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0434\u043b\u044f \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u043f\u043e\u043b\u0438\u0433\u043e\u043d\u0430 \u0438\u043b\u0438 \u0442\u043e\u0447\u043a\u0438<\/li>\n<\/ul>\n<p>  <\/p>\n<h3 id=\"obrabotka-dannyh\">\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445<\/h3>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u043e\u0442\u043d\u0435\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439 \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0438\u043d\u0434\u0435\u043a\u0441\u044b \u0437\u0434\u0430\u043d\u0438\u0439 \u0438 \u0440\u0430\u0439\u043e\u043d\u044b \u0433\u043e\u0440\u043e\u0434\u0430.<br \/>  \u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0445 \u0437\u0434\u0430\u043d\u0438\u0439, \u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0438\u0437 \u043d\u0438\u0445, \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043f\u043e\u043b\u0435 \u0441 \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\">print('POLYGONS') print('# buildings total', building_poly.shape[0]) building_poly = building_poly.loc[building_poly['A_PSTCD'].notna()] print('# buildings with postcodes', building_poly.shape[0]) print('\\nPOINTS') print('# buildings total', building_point.shape[0]) building_point = building_point.loc[building_point['A_PSTCD'].notna()] print('# buildings with postcodes', building_point.shape[0])<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">POLYGONS # buildings total 241511 # buildings with postcodes 13198  POINTS # buildings total 1253 # buildings with postcodes 4<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u043c, \u043d\u0430 \u0441\u043b\u043e\u0435 \u0441 \u0442\u043e\u0447\u043a\u0430\u043c\u0438 \u043f\u043e\u0447\u0442\u0438 \u043d\u0435 \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0437\u0434\u0430\u043d\u0438\u0439, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 <strong>\u0434\u0430\u043b\u044c\u0448\u0435 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u043e\u0439 \u0441 \u043f\u043e\u043b\u0438\u0433\u043e\u043d\u0430\u043c\u0438 \u0437\u0434\u0430\u043d\u0438\u0439<\/strong> (\u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043d\u0435\u043c \u044d\u0442\u043e \u043f\u043e\u043b\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0443 5%, 13 \u0442\u044b\u0441\u044f\u0447 \u043d\u0430\u043c \u0434\u043e\u043b\u0436\u043d\u043e \u0445\u0432\u0430\u0442\u0438\u0442\u044c).<\/p>\n<p>  <\/p>\n<p><strong>\u0412 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u043b\u043e\u043d\u043a\u0438:<\/strong><\/p>\n<p>  <\/p>\n<ol>\n<li>\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441<\/li>\n<li>OSM-ID \u0440\u0430\u0439\u043e\u043d\u0430 \u0433\u043e\u0440\u043e\u0434\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u0437\u0434\u0430\u043d\u0438\u044f \u0441 \u044d\u0442\u0438\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c<\/li>\n<li>\u0414\u043e\u043b\u044f \u0437\u0434\u0430\u043d\u0438\u0439 \u0441 \u044d\u0442\u0438\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0435\u0433\u043e &quot;\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c&quot; \u0440\u0430\u0439\u043e\u043d\u0435. \u042d\u0442\u0430 \u043c\u0435\u0442\u0440\u0438\u043a\u0430 \u043d\u0443\u0436\u043d\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u043d\u0435 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043b\u0438 \u0440\u0430\u0437\u0431\u0440\u043e\u0441\u0430\u043d\u044b \u043f\u043e \u0433\u043e\u0440\u043e\u0434\u0443 \u0437\u0434\u0430\u043d\u0438\u044f \u0441 \u044d\u0442\u0438\u043c \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u043c \u043a\u043e\u0434\u043e\u043c.<\/li>\n<\/ol>\n<p>  <\/p>\n<p><strong>\u041a\u043e\u0434 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0442\u0430\u043a\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b<\/strong><\/p>\n<p>  <\/p>\n<pre><code class=\"python\">%%time building_areas = gpd.GeoDataFrame(building_poly[['A_PSTCD', 'geometry']]) building_areas['area'] = 'NF'  # \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0446\u0438\u043a\u043b \u0438\u0437 \u0440\u0430\u0439\u043e\u043d\u043e\u0432 \u0433\u043e\u0440\u043e\u0434\u0430, \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0435\u0441\u044f \u0432 \u043d\u0435\u043c \u0437\u0434\u0430\u043d\u0438\u044f  # \u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0437\u0434\u0430\u043d\u0438\u044f \u0432 \u0440\u0430\u0439\u043e\u043d\u0435, \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u0438\u0433\u043e\u043d \u0437\u0434\u0430\u043d\u0438\u044f \u0432 \u0442\u043e\u0447\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e .centroid. # \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u043e \u0437\u0434\u0430\u043d\u0438\u044f\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043d\u0430 \u0433\u0440\u0430\u043d\u0438\u0446\u0435 \u0434\u0432\u0443\u0445 \u0440\u0430\u0439\u043e\u043d\u043e\u0432  for area in boundary_L8['OSM_ID']:      area_geo = boundary_L8.loc[boundary_L8['OSM_ID']==area, 'geometry'].iloc[0]     nf_buildings = building_areas['area']=='NF' # \u0412 \u043a\u0430\u0436\u0434\u043e\u043c \u0446\u0438\u043a\u043b\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0437\u0434\u0430\u043d\u0438\u044f, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0449\u0435 \u043d\u0435 \u043d\u0430\u0448\u043b\u0438 \u0440\u0430\u0439\u043e\u043d\u0430     building_areas.loc[nf_buildings, 'area'] = np.where(building_areas.loc[nf_buildings, 'geometry'].centroid.within(area_geo), area, 'NF')  # \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0443, \u0433\u0434\u0435 \u043f\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u044b, \u0430 \u043f\u043e \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c - \u0440\u0430\u0439\u043e\u043d\u044b \u0433\u043e\u0440\u043e\u0434\u0430. # \u0427\u0438\u0441\u043b\u043e \u043d\u0430 \u043f\u0435\u0440\u0435\u0441\u0435\u0447\u0435\u043d\u0438\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0448\u043b\u043e\u0441\u044c \u0437\u0434\u0430\u043d\u0438\u0439 \u0441 \u0442\u0430\u043a\u0438\u043c \u0438\u043d\u0434\u0435\u0441\u043e\u043c. codes_pivot = pd.pivot_table(building_areas,                              index='A_PSTCD',                              columns='area',                              values='geometry',                              aggfunc=np.count_nonzero)  # \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043a\u043e\u043b\u043e\u043d\u043a\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u043d \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0440\u0430\u0439\u043e\u043d \u0441 \u043d\u0443\u0436\u043d\u044b\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c codes_pivot['main_area'] = codes_pivot.idxmax(axis=1)  # \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043a\u043e\u043b\u043e\u043d\u043a\u0443 \u0441 \u0434\u043e\u043b\u0435\u0439 \u0437\u0434\u0430\u043d\u0438\u0439 \u0432 &quot;\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c&quot; \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0430 \u0440\u0430\u0439\u043e\u043d\u0435 for pst_code in codes_pivot.index:     main_area = codes_pivot.loc[codes_pivot.index==pst_code, 'main_area']     share = codes_pivot.loc[codes_pivot.index==pst_code, main_area].iloc[0,0] \/ codes_pivot.loc[codes_pivot.index==pst_code].sum(axis=1)*100     codes_pivot.loc[codes_pivot.index==pst_code, 'share_in_main_area'] = int(share)  # \u041e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0443\u0436\u043d\u044b\u0435 \u043d\u0430\u043c \u043a\u043e\u043b\u043e\u043d\u043a\u0438 codes_pivot = codes_pivot.loc[:, ['main_area', 'share_in_main_area']].fillna(0)<\/code><\/pre>\n<p>  <\/p>\n<p><strong>\u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/strong><br \/>  <img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/8PhtVrmC\/head2.png\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<h3 id=\"risuem-teplovuyu-kartu\">\u0420\u0438\u0441\u0443\u0435\u043c \u0442\u0435\u043f\u043b\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443<\/h3>\n<p>  <\/p>\n<p>\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043d\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c, \u044f, \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043d\u0435 \u043c\u043e\u0433\u0443 (\u043d\u0435 \u043c\u043e\u0433\u0443 \u0434\u0430\u0436\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u043e \u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0435).<br \/>  \u0427\u0442\u043e\u0431\u044b \u0432\u0441\u0435 \u0436\u0435 \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u0443\u044e \u0442\u0435\u043f\u043b\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u044f \u0432\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u043d\u0435\u043e\u0431\u044b\u0447\u0430\u0439\u043d\u043e \u0432\u0430\u0436\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441: <strong>\u0432 \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0445 \u043a\u0430\u043a\u0438\u0445 \u0440\u0430\u0439\u043e\u043d\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0446\u0438\u0444\u0440 &quot;1&quot;<\/strong>.<\/p>\n<p>  <\/p>\n<pre><code class=\"python\"># \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043a\u043e\u043b\u043e\u043d\u043a\u0443 \u0441 \u043d\u0430\u0448\u0435\u0439 \u0441\u0443\u043f\u0435\u0440-\u0432\u0430\u0436\u043d\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u043e\u0439 codes_pivot['count_1'] = codes_pivot.index.str.count('1') # \u0421\u0447\u0438\u0442\u0430\u0435\u043c \u0441\u0440\u0435\u0434\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0440\u0430\u0439\u043e\u043d\u043e\u0432 \u0433\u043e\u0440\u043e\u0434\u0430 areas_pivot = pd.pivot_table(codes_pivot, index='main_area', values='count_1', aggfunc=np.mean) areas_pivot.index = areas_pivot.index.astype('int64') # \u041f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u0435\u043c \u043d\u0430\u0448\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a \u0441\u043b\u043e\u044e \u0441 \u0440\u0430\u0439\u043e\u043d\u0430\u043c\u0438 \u0433\u043e\u0440\u043e\u0434\u0430 boundary_L8_w_count = boundary_L8.merge(areas_pivot, how='left', left_on='OSM_ID', right_index=True) # \u0420\u0438\u0441\u0443\u0435\u043c \u0442\u0435\u043f\u043b\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443 boundary_L8_w_count.plot(column='count_1', legend=True, figsize=(10,10))<\/code><\/pre>\n<p>  <\/p>\n<p><strong>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/strong><br \/>  <img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/c4RCMs0j\/heatmap.png\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<p>\u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0447\u0430\u0441\u0442\u044c \u0440\u0430\u0439\u043e\u043d\u043e\u0432 \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u043b\u0430\u0441\u044c \u2014 \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0432 \u043d\u0438\u0445 \u043d\u0435 \u0431\u044b\u043b\u043e \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0437\u0434\u0430\u043d\u0438\u044f \u0441 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u043c \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c<\/p>\n<p>  <\/p>\n<h1 id=\"proverka\">\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430<\/h1>\n<p>  <\/p>\n<p>\u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432, \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0440\u0438\u0441\u043a \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0445 \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432, \u0440\u0430\u0437\u0431\u0440\u043e\u0441\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u0440\u0430\u0439\u043e\u043d\u0430\u043c \u0433\u043e\u0440\u043e\u0434\u0430.<\/p>\n<p>  <\/p>\n<p><strong>\u041d\u0438\u0436\u0435 \u2014 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 share_in_main_area<\/strong><br \/>  <img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/mrGSpZHH\/share-in-main.png\" alt=\"image\"\/><\/p>\n<p>  <\/p>\n<p>\u0421\u0447\u0438\u0442\u0430\u0435\u043c \u0434\u043e\u043b\u044e \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432, \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u0435\u043d\u044c\u0448\u0435 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u044b \u0437\u0434\u0430\u043d\u0438\u0439 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 &quot;\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c&quot; \u0434\u043b\u044f \u043d\u0438\u0445 \u0440\u0430\u0439\u043e\u043d\u0435:<\/p>\n<p>  <\/p>\n<pre><code class=\"python\">codes_pivot[codes_pivot['share_in_main_area']&gt;50].shape[0]\/codes_pivot.shape[0]<\/code><\/pre>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">0.9568345323741008<\/code><\/pre>\n<p>  <\/p>\n<p>\u0422\u0430\u043a\u0438\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430\u0441 \u0432\u043f\u043e\u043b\u043d\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044e\u0442.<\/p>\n<p>  <\/p>\n<h1 id=\"zaklyuchenie\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h1>\n<p>  <\/p>\n<p><strong>Geopandas <\/strong> \u2014 \u043a\u0440\u0430\u0439\u043d\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442. \u041f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0434\u0430\u0436\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043e\u043f\u044b\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 Matplotlib \u0438 Pandas \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u043d\u0435\u043c \u043d\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0442\u0440\u0443\u0434\u0430.<\/p>\n<p>  <\/p>\n<p><strong>OSM <\/strong> \u2014 \u043a\u043b\u0430\u0434\u0435\u0437\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0433\u0435\u043e\u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u044b\u0445 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439.<\/p>\n<p>  <\/p>\n<p>\u041d\u0443 \u0430 \u044f \u0441 \u0432\u0430\u043c\u0438 \u043f\u0440\u043e\u0449\u0430\u044e\u0441\u044c \u0438 \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u0447\u0442\u043e \u0441\u0442\u0430\u0442\u044c\u044f \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439!<\/p>\n<p>  <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0438\u043b\u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u043a\u0440\u0438\u0442\u0438\u043a\u0430 \u2014 \u0431\u0443\u0434\u0443 \u0436\u0434\u0430\u0442\u044c \u0432\u0430\u0441 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445.<\/p>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/515328\/\"> https:\/\/habr.com\/ru\/post\/515328\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/515328\/\">\n<p><img decoding=\"async\" src=\"https:\/\/i.postimg.cc\/3xCdF3CN\/world-cat.jpg\" alt=\"image\"\/><br \/>  \u0423 \u043c\u043d\u043e\u0433\u0438\u0445 \u0445\u043e\u0442\u044c \u0440\u0430\u0437 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0433\u043e\u0440\u043e\u0434\u0430 \u0438\u043b\u0438 \u0441\u0442\u0440\u0430\u043d\u044b, \u043d\u0430\u043d\u0435\u0441\u044f \u043d\u0430 \u043d\u0435\u0435 \u0441\u0432\u043e\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 (\u0442\u043e\u0447\u043a\u0438, \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u044b, \u0442\u0435\u043f\u043b\u043e\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0438 \u0442.\u0434.).<br \/>  \u041a\u0430\u043a \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0435\u0448\u0438\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443, \u043e\u0442\u043a\u0443\u0434\u0430 \u0432\u0437\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0433\u043e\u0440\u043e\u0434\u0430 \u0438\u043b\u0438 \u0441\u0442\u0440\u0430\u043d\u044b \u0434\u043b\u044f \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u2014 \u0432 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-308548","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/308548","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=308548"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/308548\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=308548"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=308548"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=308548"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}