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

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

Прогнозирование выживания рака молочной железы с помощью машинного обучения

У нас есть набор данных о более чем 400 пациентах с раком молочной железы, перенесших операцию по лечению рака молочной железы. Ниже представлена ​​информация обо всех столбцах в наборе данных:

  1. Patient_ID: ID пациента
  2. Возраст: Возраст пациента
  3. Пол: Пол пациента
  4. Белок1, Белок2, Белок3, Белок4: уровни экспрессии
  5. Tumor_Stage: Стадия рака молочной железы пациента.
  6. Гистология: инфильтративная протоковая карцинома, инфильтрационная дольковая карцинома, муцинозная карцинома
  7. Статус ER: положительный/отрицательный
  8. Статус PR: Положительный/Отрицательный
  9. Статус HER2: положительный/отрицательный
  10. Surgery_type: Лампэктомия, Простая мастэктомия, Модифицированная радикальная мастэктомия, Другое
  11. DateofSurgery: Дата операции
  12. DateofLast_Visit: Дата последнего посещения пациента.
  13. Patient_Status: Жив/Мертв

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

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

Теперь я покажу вам задачу прогнозирования выживания рака молочной железы с помощью машинного обучения с использованием Python.

Прогноз выживания рака молочной железы с использованием Python

Я начну задачу прогнозирования выживаемости рака молочной железы, импортировав необходимые библиотеки Python и набор данных, который нам нужен:

Давайте проверим, содержат ли какие-либо столбцы в этом наборе данных нулевые значения:

Поскольку каждый столбец в этом наборе данных содержит некоторые нулевые значения, я уберу эти нулевые значения:

Давайте теперь рассмотрим некоторые идеи из столбцов этих данных:

Поскольку женщины чаще, чем мужчины, заболевают раком молочной железы, давайте посмотрим на столбец «Пол», чтобы увидеть, сколько мужчин и женщин:

Половая колонка показывает более высокий процент женщин, чем мужчин, как и следовало ожидать. Давайте теперь рассмотрим стадии опухоли у пациентов:

Большинство пациентов находятся на второй стадии. Давайте теперь рассмотрим гистологию людей с раком молочной железы. (Гистология — это описание опухоли, основанное на аномалиях раковых клеток и тканей под микроскопом и скорости роста и распространения рака):

Теперь давайте посмотрим на значения ER-статуса, PR-статуса и HER2-статуса пациентов:

Давайте теперь рассмотрим типы операций, которые перенесли пациенты:

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

Модель прогнозирования выживания рака молочной железы

Теперь мы можем приступить к обучению модели машинного обучения для прогнозирования выживания пациента с раком молочной железы. Мы должны разделить данные на обучающий набор и тестовый набор перед обучением модели:

Вот как мы можем обучить модель машинного обучения:

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

# Prediction
# features = [['Age', 'Gender', 'Protein1', 'Protein2', 'Protein3','Protein4', 'Tumour_Stage', 'Histology', 'ER status', 'PR status', 'HER2 status', 'Surgery_type']]
features = np.array([[36.0, 1, 0.080353, 0.42638, 0.54715, 0.273680, 3, 1, 1, 1, 2, 2,]])
print(model.predict(features))

Краткое содержание

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

Весь код, использованный в этой статье, доступен на моем Github.

Подпишитесь на меня в Twitter.