Рубрики
Без рубрики

Как я изучаю машинное обучение – неделя 6: Python и Matplotlib (часть вторая)

На прошлой неделе мы увидели основы пакета Matplotlib и что мы можем с ним сделать, теперь посмотрим … Tagged с помощью Python, MachineLearning, программирования, учебного пособия.

На прошлой неделе мы увидели основы пакета Matplotlib и что мы можем с ним сделать, теперь мы посмотрим, как использовать его с Панды и Numpy Чтобы использовать его эффективно.

Оглавление:

  • Pandas DataFrames
  • Построение данных
  • Объектно-ориентированный метод
  • Настройка и сохранение сюжета
  • Последние мысли

Pandas DataFrames

DataFrames Pandas – это наиболее распространенная структура данных, которую мы будем использовать, и мы, очевидно, сможем построить их с помощью Matplolib. Когда мы представили Pandas, мы использовали образец о бейсболистах всего за десять рядов, потому что я удалил все из них, чтобы упростить обучение. Теперь мы можем использовать полную, которую вы можете найти здесь

Но у нас есть проблема: имена столбцов плохо отформатированы. Мы можем решить это в нескольких шагах: Во -первых, мы видим имя столбцов с Ключи функция, а затем мы переименуем их с помощью функции переименования:

Построение данных

Мы можем быстро построить наше время DataFrame с помощью функции сюжета. Это не рекомендуемый способ, но для быстрых участков работает точно так же хорошо:

Таким образом, мы можем получить быстрый обзор наших данных, другой пример – это Hist Функция:

Объектно-ориентированный метод

Теперь мы знаем, как быстро увидеть необходимые данные, но в большинстве случаев нам понадобятся хорошо структурированные и индивидуальные сюжеты, и для этого более эффективно, ориентированный на объект или метод OO. Посмотрим пример:

Теперь, когда у нас есть наш сюжет, давайте на мгновение потратим на понимать Что здесь происходит: мы создаем Рис. и AX и дал им размер, затем мы называем функцию сюжета на нашем диапазоне данных и в функцию Мы объявляем

  • Тип сюжета, который мы хотим (разбросайте)
  • Ось Х (возраст каждого игрока)
  • Ось Y (вес наших игроков)
  • (c) олор графика, диапазон каждого элемента на основе третьего значения (их высота в дюймах)
  • топор, который мы планируем. В этом случае была только одна ось, но если бы было больше, мы могли бы напечатать AX [0, 0] или AX Анкет

Но мы еще не полностью Используя метод OO. Чтобы сделать это, мы должны использовать функцию Subplots, используя все, что происходит от нее:

figure, axis = plt.subplots(figsize=(10, 7))
#creating the plot, same as before
first_plot = axis.scatter(x = bb_players['Age'],
             y = bb_players['Weight (lbs)'],
             c = bb_players['Height (inches)'])

# adding information
axis.set(title="correlations between baseball players weight and age",
        xlabel="players age",
        ylabel="players weight")
# adding the legend
axis.legend(*first_plot.legend_elements(), title = 'Weight in lbs');
# the "*" query all the elements in first_plot

То, что мы делаем здесь, просто создать фигуру и настройка его сюжета. Результатом будет:

Здесь есть некоторая ошибка печати, наиболее очевидной является легенда, относящаяся к весу вместо высоты

Теперь должно быть ясно, как сделать фигуру с методом ОО, но с большим количеством сюжетов в нем. Примером кода может быть:

# creating a figure with more than 1 subplots
figure, (first_plot, second_plot) = plt.subplots(nrows = 2,
                                                 ncols = 1,
                                                 figsize = (12, 20))

scatter_plot = first_plot.scatter(x = bb_players['Age'],
                   y = bb_players['Weight (lbs)'],
                   c = bb_players['Height (inches)'])
first_plot.set(title="correlations between baseball players weight and age",
               xlabel="age of players",
               ylabel="weight of players")
first_plot.legend(*scatter_plot.legend_elements(), 
                  title = 'Height in inches');

# putting a line on the average data
first_plot.axhline(y = bb_players['Weight (lbs)'].mean(), 
                   color = 'r', 
                   linestyle = '-')

# second plot
second_plot.hist(x = bb_players['Age'], 
                 bins = 20)
second_plot.set(title = "Numbers of players with a certain age",
                xlabel="age of players",
                ylabel="number of players");

Как вы можете видеть из кода, у нас есть Установите ряды и столбцы рисунка и Установите ячейки гистограммы Анкет Банки-это просто устройство, которое проходит через ось X. Гистограмма с семь бункеров будет похожа на:

Источник axhline Очень простая функция объяснена Здесь Анкет В этом случае мы устанавливаем среднее значение столбцов веса как «Y».

Теперь, когда код должен быть ясно, мы можем увидеть результат:

нажмите, чтобы увеличить

Настройка и сохранение сюжета

Есть различные способы настроить наш сюжет в Matplotlib с помощью общих стилей, которые мы можем изменить детали, если хотим. Основная команда:

plt.style.available

Использование стиля Matplotlib важно для добавления значения к нашему графику, здесь разница между стилем по умолчанию и тем, который вы можете выбрать:

Но, несмотря на то, что теперь немного отличается, все еще может быть запутанным. Matplotlib предлагает нам CMAP Функция, среди прочего, изменить Детали стиля:

Полная ссылка доступна на официальном Страница документации

Теперь последним шагом будет создание изображения вашей фигуры с SaveFig Функция, которую мы видели в последнем посте, и все будет готово показать наши данные другим.

Последние мысли

Сегодня мы увидели последнюю часть пакета Python Matplotlib. Не то чтобы мы знали достаточно хорошо панд, Numpy и matplotlib, мы можем увидеть, как Scikit Работает и начинаю работать над какой -то моделью. Если у вас есть какие -либо сомнения, не стесняйтесь оставить комментарий.

Оригинал: “https://dev.to/gabrieleboccarusso/how-i-am-learning-machine-learning-week-6-python-and-matplotlib-part-two-3fdf”