Мои настройки для первого дня

Среда для данных

Настройте среду разработки для данных

Python и R - основные инструменты в мире данных. Хотя для начала они нетривиальны, они должны быть такими. В этом посте рассказывается о моем первом дне настройки в UK Data Service. Мы рассмотрим настройку любой машины для Python, R и пример построения для каждого из них. Знания в области программирования не требуются.

Служба данных Великобритании хранит самую большую в Великобритании коллекцию социальных данных. Через веб-сайт вы можете запрашивать, управлять и размещать всевозможные социальные данные. Предоставление доступа к этим данным - только первый шаг. Чтобы оказать влияние, нам нужны люди любого уровня подготовки для изучения этих данных.

Настраивать

Я скоро перейду к своим рекомендациям. Если вы хотите установить Python или RStudio, вот соответствующие ссылки:

Если вы работаете на устройстве с Windows, у вас, скорее всего, не установлен Python.

Если вы используете устройство под управлением MacOS или чего-то еще на базе Linux, скорее всего, у вас уже установлен Python. Вы можете проверить это, выполнив команду python или python3 в своем терминале. Если вы не знакомы с терминалом, это тоже нормально, давайте рассмотрим некоторые альтернативы.

Альтернативный Python и R

Часто нам нужен способ запустить наш код без необходимости знать о командной строке. Ниже приведены альтернативы, которые позволяют писать код, не изучая дополнительных инструментов.

REPL.IT

Repl.it позволяет создавать одноразовые среды для Python, R и многого другого. Это отличное место, чтобы быстро написать простой код, изучить небольшой набор данных, опробовать пакеты и опубликовать свой код.

Google Colab

Google Colab позволяет запускать код в браузере в стиле блокнота. Блокнот - это набор кода вместе с ячейками уценки. Этот формат позволяет вам писать текстовый анализ на основе фрагментов кода. Это, в свою очередь, помогает сделать вашу работу более воспроизводимой и понятной. Одним из недостатков является то, что Colab использует Google Drive для хранения ваших данных. Жизнеспособными альтернативами здесь являются Jupyter или JupyterLab.

Анаконда

Anaconda - платформа Data Science, которая включает Jupyter, RStudio и другие. Anaconda занимается управлением средами и установкой пакетов. Это удерживает нас от худшего, что может предложить командная строка.

Настройка Анаконды

Прежде всего загрузите версию Anaconda для своей операционной системы. Загрузки доступны здесь. Запустите установщик, это займет около 10 минут.

После установки запустите anaconda, и вы должны увидеть что-то вроде следующего. У вас должен быть доступ к Jupyter, JupyterLab, RStudio, VS Code и многим другим. Возможно, вам придется установить их, если вы хотите их использовать. Самая распространенная программа, которую я здесь использую, - это JupyterLab.

Управление версиями и пакеты

Иногда вам нужно использовать более новую версию пакета. Возможно, вам потребуется перейти на более раннюю версию Python, чтобы воспроизвести проект, созданный много лет назад. Anaconda упрощает это с помощью вкладки «Среды». Здесь вы можете создавать, переключаться между средами и управлять ими. Сюда вы попадете, если вам нужно установить новый пакет.

Если вы планируете писать R, создайте новую среду как с Python, так и с библиотекой R.

Крошечный проект

Чтобы показать, что мы можем делать в JupyterLab, давайте поработаем над небольшим проектом. Загрузите эти Данные Airbnb. Ниже приведены инструкции по чтению и отображению данных.

Отображение данных - Python Demo

Прежде всего запустите JupyterLab, если он не установлен, сделайте это сейчас. Если это сработает, откроется вкладка JupyterLab в вашем браузере по умолчанию. В левой части этой вкладки вы должны увидеть файловый браузер, перейдите туда, куда вы хотите сохранить записную книжку. Создайте новую записную книжку Python 3. Имя файла по умолчанию - «Untitled.ipynb». Переименуйте это, если хотите.

Вы также можете перетащить свой набор данных в файловый браузер, чтобы загрузить его в сеанс. Снова переименуйте этот набор данных, если хотите, в моем примере кода я назвал его data.csv. Теперь у вас должна быть записная книжка и набор данных.

Если вы дважды щелкните набор данных, вы увидите таблицу данных в стиле Excel. Это может быть полезно, чтобы проверить правильность ваших данных и задать любые вопросы о качестве данных.

Рядом с кнопкой сохранения вашего файла .ipynb есть маленький значок «плюс», это позволит вам создавать новые ячейки. А раскрывающийся список «Код» позволит вам переключаться между уценкой и кодом для этой ячейки. В нашей первой ячейке мы можем написать:

# Import pandas, our data manipulation library
import pandas as pd
# Read our dataset into a dataframe
df = pd.read_csv("data.csv")
# Print out the first 5 records
df.head()

Это импортирует нашу библиотеку обработки данных и читает наши данные. Наконец, мы печатаем первые 5 записей. Теперь создайте еще одну ячейку кода и вставьте следующее:

# Plot the number of airbnbs in the top 5 cities.
df['city'].value_counts().head(5).plot(kind='bar')

Это должно построить гистограмму пяти городов с наибольшим количеством Airbnb и количество Airbnb в каждом городе.

Отображаемые данные - R Demo

Для написания кода R в Jupyter необходимо создать блокнот R. Нам нужна новая среда, в которой установлены Python и R. Для этого перейдите на вкладку «Среды» и создайте новую среду с установленной версией Python и R. Это может занять до десяти минут.

Если вы предпочитаете здесь, у вас есть возможность установить и запустить RStudio из Anaconda. Я рекомендую попробовать JupyterLab! Возможно, вам придется снова установить JupyterLab для этой новой среды Python и R. Прежде всего запустите JupyterLab. В левой части этой вкладки вы должны увидеть файловый браузер, перейдите туда, куда вы хотите сохранить записную книжку. Создайте записную книжку R и переименуйте ее из стандартного «Untitled.ipynb».

Рядом с кнопкой сохранения вашего файла .ipynb есть маленький значок «плюс», это позволит вам создавать новые ячейки. А раскрывающийся список «Код» позволит вам переключаться между уценкой и кодом для этой ячейки. В нашей первой ячейке мы можем написать:

# Import ggplot2, our data visualization library
library(ggplot2)
library(tidyverse)

Это импортирует наши библиотеки построения графиков и обработки данных. Затем в другой ячейке считываем наши данные во фрейм данных:

# Read our dataset into a dataframe
df <- read.csv(file = 'data.csv')
# Print out the first 5 records
head(data)

Это также должно распечатать первые пять записей. Затем давайте посчитаем количество Airbnb в каждом городе:

# create a new table of the number of airbnbs in each city
counts <- df %>% count(city)
head(counts)

И, наконец, давайте построим график 5 самых населенных городов Airbnb в этом наборе данных:

# Sort by number of airbnbs, and return the top 5 results.
sortedCounts <- head(counts %>% arrange(desc(n)), n=5)

# plot a bar chart
ggplot(data=sortedCounts, aes(x=city, y=n)) +
  geom_bar(stat="identity")

GitHub - поделитесь своей работой

Хотя я не рассказал в этом посте о том, что такое git и GitHub, я сохраню это для следующего сообщения в блоге. А пока знайте, что GitHub - это место для хранения файлов, связанных с программированием. Еще одно преимущество Jupyter Notebooks заключается в том, что Github их отображает. Это означает, что все, что вы сохраняете и отправляете на GitHub, может быть публичным или частным. См. Следующие примеры:

Следующие шаги

Итак, мы настроили нашу среду, чтобы заниматься фундаментальной наукой о данных. Далее следует ответ на два вопроса:

  • Где я могу найти данные?
  • Где я могу изучить Python и R?

Источники данных

Служба данных Великобритании

Служба данных Великобритании хранит самую большую коллекцию социальных данных в Великобритании. У них есть полезная страница ключевых данных, на которой размещены некоторые из их самых популярных наборов данных. У них также есть открытые данные, доступные здесь.

Kaggle

Kaggle проводит соревнования по машинному обучению. Kaggle расширился, предлагая учебные пособия, наборы данных и хорошо документированный анализ. Kaggle размещает некоторые открытые данные здесь. В этом посте использованы данные из открытого набора данных Airbnb.

Продолжить обучение

Codecademy

Codecademy - отличный способ попрактиковаться в основах языков. Они предлагают карьерный путь в области науки о данных и курсы по Python и R. Если вы студент, вы можете получить скидку 35%. Страницы курса:

DataCamp

DataCamp похож на Codecademy, но с большим упором на данные. Они также предлагают Python, R и карьерный путь в Data Science. Некоторые уроки бесплатные. DataCamp бесплатен, если вы настроили его как преподаватель с DataCamp for Schools.

LearnXInYMinutes

Поскольку оба вышеперечисленных варианта требуют оплаты, это наш бесплатный вариант. Этот веб-сайт помогает программистам переходить с одного языка на другой. Для каждого поддерживаемого языка есть отдельная страница, полная практических примеров. У них есть страницы для:

Спасибо за чтение и удачи. - Джо

Джо работает в UK Data Service и является пионером в области обработки данных и безопасного долгосрочного исследовательского доступа к данным социальных наук. Опыт Службы данных Великобритании продолжает преобразовывать преподавание и обучение в области социальных наук. Узнайте больше на веб-сайте UK Data Service.