Язык Python в медицинских системах искусственного интеллекта. Ч.1. Введение в программирование на языке Python. Учебное пособие
.pdf●df.loc[0:3, ['col1', 'col2']] — выбор строк и столбцов по метке.
●df.iloc[0:3, 0:2] — выбор строк и столбцов по индексу.
5.фильтрация данных
●df[df['column'] > value] — выбор строк, где значения в колонке больше value.
●df[(df['col1'] > value1) & (df['col2'] < value2)] —
фильтрация по нескольким условиям.
●df[df['column'].isin([val1, val2])] — выбор строк, где значения в колонке равны val1 или val2.
6.работа с отсутствующими данными
●df.isna() — возвращает DataFrame с булевыми значениями, где True — отсутствующие значения.
●df.dropna() — удаляет строки с отсутствующими значениями.
●df.fillna(value) — заполняет отсутствующие значения указанным значением.
●df.dropna(axis=1) — удаляет столбцы с отсутствующими значениями.
7.изменение данных
●df['new_column'] = df['column1'] + df['column2'] —
создание нового столбца.
●df.rename(columns={'old_name': 'new_name'}) — пере-
именование столбцов.
●df.replace({'old_value': 'new_value'}) — замена значе-
ний в DataFrame.
●df.apply(func) — применяет функцию func ко всем элементам (или по строкам/столбцам).
8.группировка данных и агрегация
●df.groupby('column').mean() — группировка по столбцу и вычисление среднего значения для каждой группы.
●df.groupby('column').agg(['min', 'max', 'mean']) —
вычисление нескольких статистик для каждой группы.
71
●df.pivot_table(values='val_col', index='row_col', columns='col_col', aggfunc='mean') — создание сводной таблицы.
9.объединение и соединение данных
●pd.concat([df1, df2]) — конкатенация по строкам (по умолчанию) или столбцам (axis=1).
●pd.merge(df1, df2, on='column') — объединение DataFrame
по указанному столбцу.
●df1.join(df2, on='key') — соединение двух DataFrame по ин-
дексу или ключу.
10.сортировка данных
●df.sort_values(by='column') — сортировка по столбцу.
●df.sort_values(by=['col1', 'col2'], ascending=[True, False]) — сортировка по нескольким столбцам с указанием порядка.
11.временные ряды
●pd.to_datetime(df['date_column']) — преобразование строки в дату.
●df.set_index('date_column') — установка столбца даты как индекса.
●df.resample('M').mean() — ресемплирование данных (например, среднее значение по месяцам).
●df['date_column'].dt.year — извлечение года из даты.
●df['date_column'].dt.month — извлечение месяца.
12.визуализация данных
●df.plot() — базовый график.
●df.plot(kind='bar') — столбчатая диаграмма.
●df.plot(kind='hist') — гистограмма.
●df.plot(kind='box') — ящик с усами.
●df.plot(kind='scatter', x='col1', y='col2') — диа-
грамма рассеяния.
13.работа с категориальными данными
72
●df['column'] = df['column'].astype('category') — пре-
образование столбца в категориальный тип.
●df['column'].cat.categories — получение категорий.
●df['column'].cat.codes — преобразование категорий в числовые коды.
14. вычисления и статистика
●df.corr() — корреляция между столбцами.
●df.cov() — ковариация между столбцами.
●df.mean() — среднее значение по столбцам.
●df.median() — медиана.
●df.std() — стандартное отклонение.
4.8. Mathplotlib
Библиотека Matplotlib является одним из самых популярных и мощных инструментов для визуализации данных в Python. Она предоставляет широкий спектр возможностей для создания статических, а также анимационных графиков, что делает её важным инструментом как для научных исследований, так и для бизнес-анализа. Одной из её основных особенностей является гибкость в настройке графиков. Matplotlib позволяет создавать различные типы графиков, включая линейные, гистограммы, диаграммы рассеяния, круговые диаграммы и многие другие. Каждый график можно тонко настроить, изменяя оси, метки, легенды и другие элементы, что даёт пользователю полный контроль над визуализацией данных.
Одним из значимых преимуществ Matplotlib является её интеграция с другими популярными библиотеками Python, такими как NumPy и pandas, что делает её особенно удобной при работе с большими наборами данных. Благодаря этому пользователи могут легко преобразовывать и визуализировать данные, используя функциональность этих библиотек для манипулирования массивами и датафреймами. Кроме того, Matplotlib поддерживает работу с несколькими фигурами и подграфиками, что позволяет строить сложные композиции и отображать несколько графиков в одном окне.
73
Ещё одной важной особенностью является способность Matplotlib работать с различными форматами вывода. Библиотека поддерживает экспорт графиков в разнообразные форматы, такие как PNG, PDF, SVG, EPS и другие, что позволяет легко интегрировать графику в отчёты, научные статьи и веб-приложения. Также стоит отметить богатую документацию и активное сообщество, что делает Matplotlib доступной для пользователей с разным уровнем подготовки.
В Matplotlib присутствует также поддержка анимаций, что расширяет её функциональные возможности, позволяя создавать динамичные графики и визуализировать изменения данных во времени. Это особенно полезно в задачах, связанных с анализом временных рядов или симуляциями.
import matplotlib.pyplot as plt
Основные часто используемые функции:
1.базовая настройка
●plt.show() — вывод графика на экран.
●plt.figure() — создание нового окна для графика с возможностью настройки размера и DPI.
plt.figure(figsize=(10, 5), dpi=100)
2.линейные графики
●plt.plot(x, y) — создание линейного графика, где x и y — это данные по осям.
●plt.plot(x, y, linestyle='--', color='r', marker='o') — параметры линии:
○linestyle — стиль линии ('-', '--', ':' и др.).
○color — цвет ('r' для красного, '#ff5733' для кастомных).
○marker — маркер точек ('o', 's', 'x', и т.д.).
Пример и результат работы программы рис. 4.8.1:
x = [1, 2, 3, 4]
y = [10, 20, 25, 30] plt.plot(x, y, linestyle='--', color='b', marker='o') plt.show()
74
Рис. 4.8.1 – Линейный график
3.подписи и заголовки рис. 4.8.2:
●plt.title("Title") — заголовок графика.
●plt.xlabel("X-axis Label") — подпись оси X.
●plt.ylabel("Y-axis Label") — подпись оси Y.
●plt.legend() — легенда для обозначения линий (всегда указы-
вайте label в plot()).
plt.plot(x, y, label='Line 1') plt.legend(loc='upper left')
Рис. 4.8.2 – Линейный график с подписью
75
4.гистограммы
●plt.hist(data, bins=10, color='g', alpha=0.7) — созда-
ние гистограммы:
○data — данные для распределения.
○bins — количество интервалов.
○color — цвет.
○alpha — прозрачность.
Пример и результат работы программы рис. 4.8.3: data = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
plt.hist(data, bins=4, color='purple', alpha=0.7) plt.show()
Рис. 4.8.3 – Гистограмма
5.столбчатые диаграммы
●plt.bar(x, height, color='b', width=0.5) — столбчатая диаграмма:
○x — метки или категории.
○height — высота столбцов.
○width — ширина столбцов.
○color — цвет.
76
Пример и результат работы программы рис. 4.8.4: categories = ['A', 'B', 'C'] values = [5, 10, 15]
plt.bar(categories, values, color='orange', width=0.4)
plt.show()
Рис. 4.8.4 – Столбчатая диаграмма
6.диаграммы рассеяния
●plt.scatter(x, y, color='r', marker='o', s=30) — диа-
грамма рассеяния:
○x, y — координаты точек.
○marker — тип маркера.
○s — размер точек.
○color — цвет.
Пример и результат работы программы рис. 4.8.5:
x = [1, 2, 3, 4, 7, 10]
y = [10, 15, 13, 18, 14, 20]
plt.scatter(x, y, color='green', marker='x', s=100) plt.show()
77
Рис. 4.8.5 – Диаграмма рассеяния
7.круговые диаграммы
●plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=90) — создание круговой диа-
граммы:
○sizes — значения (доли) для каждой части.
○labels — подписи частей.
○colors — цвета.
○autopct — формат отображения процентов.
○startangle — начальный угол диаграммы.
Пример и результат работы программы рис. 4.8.6: sizes = [15, 30, 45, 10]
labels = ['A', 'B', 'C', 'D']
colors = ['yellow', 'blue', 'green', 'red'] plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=140) plt.show()
78
10.0 %
45.0 %
15.0 %
30.0 %
Рис. 4.8.6 – Круговая диаграмма
8.диаграмма с областями
●plt.fill_between(x, y1, y2, color='skyblue', alpha=0.4) — заполнение области между линиями y1 и y2 на за-
данных значениях x.
Пример и результат работы программы рис. 4.8.7:
x = [1, 2, 3, 4] y1 = [1, 4, 6, 9] y2 = [2, 11, 5, 7]
plt.fill_between(x, y1, y2, color="skyblue", alpha=0.4) plt.show()
79
Рис. 4.8.7 – Диаграмма с областями
9.настройка осей
●plt.xlim([min, max]) — установка диапазона для оси X.
●plt.ylim([min, max]) — установка диапазона для оси Y.
●plt.xticks(rotation=45) — поворот меток на оси X на 45 гра-
дусов.
●plt.yticks([1, 2, 3, 4]) — установка пользовательских ме-
ток для оси Y.
Пример и результат работы программы рис. 4.8.8: plt.plot([1, 2, 3, 4], [2, 20, 10, 30]) plt.xlim(0, 5)
plt.ylim(0, 40)
plt.xticks([1, 2, 3, 4], rotation=45) plt.show()
80
