Как кто -то новичок в науке о передаче данных, только сейчас начинает считать возможности того, что я могу сделать с большим количеством данных и небольшим программированием, есть части, которые очень приятно и части, которые заставляют меня чувствовать себя немного над головой.
Есть много раз, когда я собирался что -то решить, попробовать что -нибудь или что -то написать и застрять. Ужасно, неразрывно, я не знаю, когда застрял. Это неизбежно, и я создаю солидный набор инструментов ресурсов для использования, когда я нахожусь в этих ситуациях.
Но оборотная сторона этого довольно потрясающая. Каждый раз, когда я собирался что -то сделать И это на самом деле делает то, что я предполагал, это чрезвычайно полезно. Даже если это что -то основное, я люблю проталкивать блокаторы и получать решение, которое я создал – Это огромная причина, по которой я позиционирую себя, чтобы перейти на науку о данных и техническую карьеру.
Так! Когда я хотел наметить набор данных для проекта, расстроился из -за неустойчивости инструментов, которые я знал, научил себя работать с новой библиотекой картирования и сделал великолепную карту, которая передала именно то, что я хотел, я был очень рад с самим собой. Позвольте мне поделиться Folium с другими начинающими Python, потому что это прощающий и доступный способ поиграть с помощью методов картирования. Это также выглядит гладким, по умолчанию интерактивно и заставило меня почувствовать, что я легко выровнял свою визуализацию данных.
Прежде чем вы начнете
У Фалия есть некоторые предостережения. набор данных Я работал с тем, что был тем, который предоставил данные о домах, продаваемых в округе Кинг вокруг Сиэтла. Этот набор данных уже имел столбцы для широты и долготы, которые сделали аспекты картирования этих данных довольно естественными. Из всего, что я собрал из Фолиум документация , вам нужны пары LAT/LONG, чтобы использовать их карту, поэтому другие данные о местоположении будут представлять проблему очистки данных в начале.
Кроме того, Folium хорошо работает до определенной точки – в моей системе он не обработал бы и не отобрал все 21 000 строк рамки данных Pandas, которые я пытался пройти через него (справедливо). После того, как я играл с ним, около 1000 рядов оказались для меня сладким, и больше, чем это не сработало бы почти так же хорошо, если вообще. В своем наборе данных я сосредоточился на 1000 самых дорогих домов как способ сузить подмножество моих данных (и ответить на другие вопросы как часть проекта, над которым я работал), поэтому я буду демонстрировать это подмножество.
Итак, настройте себя на успех Folium, нацеливаясь на более мелкие наборы данных с доступными данными о местоположении, затем приходите туда и поиграйте!
Следите вместе с моим кодом здесь: https://github.com/lindseyberlin/Blog_FoliumMaps
Где все?
Возможно, есть волшебные люди, которые могут посмотреть на пару Lat/Long и точно знать, где она находится, или посмотреть на две пары и знать, как они связаны, но я не такой человек. Когда я работал с этими данными, у меня были несколько первоначальных вопросов. Были ли все эти дома в тех же немногих блоках? Они действительно распространились? Были ли какие -нибудь очевидные кластеры? Только один способ узнать – заставьте эти лат/длинные пары работать для меня!
Вступительная карта Folium, которую я создал, обеспечила диаграмму рассеяния на фоне карты. Наиболее сложной частью кода была для петли, которая отображала каждую строку как свою точку на карте. Второй самым сложной частью было использование средней функции на моем наборе данных, чтобы получить среднее значение колонн широты и долготы, где я сосредоточил свою карту.
Эта основная конфигурация ответила на вопросы выше – я мог ясно видеть, где был продан каждый дом и как был расположен каждый дом. Ура! Но мой первоначальный успех заставил меня задуматься о том, что еще я мог сделать с Folium, поэтому я пошел немного глубже.
Добавление слоев смысла
Из основной карты я предпринял три дополнительных шага, чтобы сделать мою карту более сложной и убедиться, что она давала большее значение, чем просто места дома в моем наборе данных.
Примечание! Это просто скриншоты – фактические карты, которые я создаю в Python, являются интерактивными. Проверьте, что GitHub Repo Я связал выше, чтобы понять, что я имею в виду.
Во-первых, я добавил всплывающий текст, который отображает точную широту и долготу дома, а также цену, по которой он был продан. Добавление всплывающего текста было немного более сложным, но все же простым-я добавил код в For-Ploop, поэтому он создал бы всплывающий текст, специфичный для каждой строки данных. Я отформатировал текст, используя .format, но мог также использовать F-строчку. Теперь моя карта предоставила немного больше деталей!
Затем я изменил размер каждой точки, чтобы соответствовать цене, по которой был продан каждый дом. Это включало изменение радиуса каждой точки на основе цены на эту строку. Очень просто!
Наконец, я изменил цвет каждой точки, чтобы соответствовать различным ведра цена, так что самые дорогие дома появились как яркие, отвратительные розовые и наименее дорогие дома (из 1000 самых дорогих домов в исходном наборе данных) были нежный зеленый. Это включало интеграцию операторов IF/elif/else, основанные на этих ведрах стоимости, все еще в пределах петли, чтобы изменить цвет каждой точки. Немного сложнее, чем что -либо еще, но все же прост.
Другие варианты
Еще один простой способ изучить этот вид данных – добавить тепловую карту вместо добавления точек к карте. Это передает концентрацию данных по -разному, полезно, если вы хотите изучить концентрацию больше, чем детали каждой отдельной строки вашего набора данных.
Есть Десятки других способов Вы можете сопоставить вещи в Folium, и, вероятно, лучшие способы, которые я мог бы ответить на первые вопросы, которые я задал. Играйте с этим и посмотрите, что вы найдете! И если у вас есть какие -либо полезные советы или хитрости фолика, или вопросы, которые лучше всего отвечают с помощью карты, пожалуйста, поделитесь!
Полезные учебные пособия:
Folium для карт, тепловых карт и анализа времени
Создание интерактивных криминальных карт с Folium
Покрытие изображения из пространственных визуализаций и анализа в Python с Folium. Спиннинг черепаха Gif от Giphy. Все остальные изображения были скриншотами, которые я создал с помощью Folium – см. Мой репозиторий GitHub здесь
Оригинал: “https://dev.to/lberlin/folium-powerful-mapping-tool-for-absolute-beginners-1m5h”