НачатьНачать бесплатно

В каком штате рынков больше всего?

Исследуя данные о фермерских рынках, вы задаётесь вопросом: какие закономерности можно обнаружить, если агрегировать данные на уровне штата? Есть ли штаты, где фермерские рынки особенно распространены? Чтобы это выяснить, вы группируете данные по штату и получаете логарифмически преобразованное количество рынков (log_markets) и численность населения штатов (log_pop).

markets_and_pop = (markets
    .groupby('state', as_index = False)
    .agg({
       'name': lambda d: log(len(d)),
       'state_pop': lambda d: log(d.iloc[0]) })
    .rename(columns = {
        'name': 'log_markets', 
        'state_pop': 'log_pop' }))

Для визуализации вы решаете использовать регрессионный график, чтобы оценить «типичную» зависимость между количеством рынков и численностью населения, а также текстовую диаграмму рассеяния для быстрого выявления интересных выбросов.

Это упражнение является частью курса

Улучшение визуализации данных в Python

Посмотреть курс

Инструкции к упражнению

  • Выполните итерацию по строкам DataFrame markets_and_pop.
  • Разместите аннотации рядом с соответствующими точками на диаграмме рассеяния.
  • Уменьшите размер текста аннотаций до 10 пунктов.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

g = sns.regplot(
    "log_markets", "log_pop", 
    ci = False,
    # Shrink scatter plot points
    scatter_kws = {'s':2},
    data = markets_and_pop)

# Iterate over the rows of the data
for _, row in markets_and_pop.____():
    state, _, _, log_markets, log_pop = row
    # Place annotation and reduce size for clarity
    g.annotate(state, (____,____), ____ = ____)

plt.show()
Редактировать и запускать код