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

Анализ тяжести автомобильных аварий

Деловая проблема – введение 1. Описание проблемы и обсуждение … с меткой MachineLearning, Datascity, Python, карьеры.

1. Описание проблемы и обсуждение фона

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

Определение проблемы :

  • Каковы факторы, которые оказывают высокое влияние на дорожные аварии?

  • Есть ли узел для них?

  • Корреляция?

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

Вступление

Обратите внимание, что эта работа представляет собой окончательный проект курса сертификации IBM, для которого мы предоставили данные, с которыми мы разработаем проект.

Эти данные были собраны и разделяются полицейским отделением Сиэтла (записями трафика) и предоставляются Coursera для загрузки через ссылку.

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

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

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

Данные для использования

2. Описание данных и как он будет использоваться для решения проблемы

Для точного прогнозирования величины повреждений, вызванных несчастными случаями, они требуют большого количества отчетов о движенных авариях с точными данными для моделей прогнозирования прогнозирования. Набор данных, предусмотренный для этой работы, позволяет анализировать рекорд 200 000 несчастных случаев в штате Сиэтл, с 2004 года на дату выпущено, в котором записаны 37 атрибутов или переменные, и кодификация типа аварии разрешена, сгруппирован в соответствии с 84 кодами. Информация может быть извлечена из него:

Скорость информации Информация о дорожных условиях и видимости Тип столкновения пострадавшие люди, так далее

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

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

Источник данных: Эти данные были собраны и разделены полицейским отделением Сиэтла (записями трафика) и предоставляются Coursera для скачивания через ссылку.

Расположение данных: Coursera Capstone/Активы данных

Набор данных Имя: столкновения данных (1) _shaped.csv

Методология

Задача: Целью данного проекта является предсказание серьезности дорожно-транспортного происшествия на основе других характеристик, содержащихся в докладе.

Пакеты и библиотеки: Мы будем использовать библиотеки и пакеты для манипулирования как для управления данными, так и для визуализации данных. Панда, Numpy, Scipy, Matplotlib, Meanborn

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

Получение и очистка данных

Импорт библиотек и пакетов

import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import classification_report
from sklearn.tree import DecisionTreeClassifier
from sklearn import svm
from sklearn.metrics import f1_score
from sklearn.metrics import accuracy_score
from sklearn import preprocessing
from sklearn.linear_model import LogisticRegression
print('imported')

Загрузка данных

df_data_1 = pd.read_csv(Data-Collisions.csv)
df_data_1.head()

# choosing the data we will work with
test = ['SEVERITYCODE', 'SPEEDING','ROADCOND']
df_data_1 = df_data_1[test]

# obtaining data dimensions
for feature in ["SPEEDING", "ROADCOND"]:
    print(df_data_1[feature].unique())

[‘N’ ‘y’] [‘Влажный’ ‘ Сухой «неизвестный» «снег/слячок» Лед “« другой » Песок/грязь/грязь ” Стоящая вода «нефть»]

# in speed we replace Nan with a negative value N
df_data_1['SPEEDING'] = df_data_1['SPEEDING'].fillna('N')


#we replace the value Nan declaring it as unknown too

df_data_1['ROADCOND'] = df_data_1['ROADCOND'].fillna('Unknown')

# checking value once again...
for feature in ["SPEEDING", "ROADCOND"]:
    print(df_data_1[feature].unique())

[‘N’ ‘y’] [‘Влажный’ ‘ Сухой «неизвестный» «снег/слячок» Лед “« другой » Песок/грязь/грязь ” Стоящая вода «нефть»]

# We assign new values to roadcond
df_data_1['ROADCOND'].replace(to_replace=['Wet','Dry','Unknown','Snow/Slush','Ice','Other','Sand/Mud/Dirt','Standing Water','Oil'], value = ['Dangerous','Normal','Normal','Dangerous','Dangerous','Normal','Dangerous','Dangerous','Dangerous'], inplace=True)

df_data_1["SPEEDING"].replace(to_replace=['N', 'Y'], value=[0,1], inplace=True)
df_data_1['ROADCOND'].replace(to_replace=['Dangerous','Normal'],value=[0,1],inplace=True)
test_condition = df_data_1[['SPEEDING','ROADCOND']]
test_condition.head()

|. |. Ускорение |. Roadcond |. |. ————– |: ————: ||. 0 |. 0 |. 0 |. |. 1 |. 0 |. 0 |. |. 2 |. 0 |. 1 |. |. 3 |. 0 |. 1 |. |. 4 |. 0 |. 0 |.

Обучение модели

x = test_condition
y = df_data_1['SEVERITYCODE'].values.astype(str)
x = preprocessing.StandardScaler().fit(x).transform(x)
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=1234)

# obtaining data dimensions
print("Training set: ", x_train.shape, y_train.shape)
print("Testing set: ", x_test.shape, y_test.shape)

Учебный набор: (155738, 2) (155738,) Набор тестирования: (38935, 2) (38935,)

Выбор методов: Модель дерева, логистическая регрессия и методология KNN

#Tree model
Tree_model = DecisionTreeClassifier(criterion="entropy", max_depth = 4)
Tree_model.fit(x_train, y_train)
predicted = Tree_model.predict(x_test)
Tree_f1 = f1_score(y_test, predicted, average='weighted')
Tree_acc = accuracy_score(y_test, predicted)
#Logistic Regression
LR_model = LogisticRegression(C=0.01, solver='liblinear').fit(x_train, y_train)
predicted = LR_model.predict(x_test)
LR_f1 = f1_score(y_test, predicted, average='weighted')
LR_acc = accuracy_score(y_test, predicted)

#KNN methodology
KNN_model = KNeighborsClassifier(n_neighbors = 4).fit(x_train, y_train)
predicted = KNN_model.predict(x_test)
KNN_f1 = f1_score(y_test, predicted, average='weighted')
KNN_acc = accuracy_score(y_test, predicted)

Полученные результаты

Сравнение результатов полученный

results = {
    "Method of Analisys": ["KNN", "Decision Tree", "LogisticRegression"],
    "F1-score": [KNN_f1, Tree_f1, LR_f1],
    "Accuracy": [KNN_acc, Tree_acc, LR_acc]
}

results = pd.DataFrame(results)
results

|. |. Способ анализа | F1-Оценка | Точность |. |. ————————- |: ———-: |: ——–: ||. 0 |. КНН |. 0.591378 |. 0,69675 |. |. 1 |. Дерево решений |. 0.576051 |. 0,699679 |. |. 2 |. Логистикарессия |. 0.576051 |. 0,699679 |.

# Comparing results using LR
results = {
    "Intercept": LR_model.intercept_,
    "SPEEDING ": LR_model.coef_[:,0],
    "ROADCOND ": LR_model.coef_[:,1],
}

results = pd.DataFrame(results)
results

| | Перехватить |. Ускорение |. Roadcond |. |. —— ——— |: ———-: |: ———: ||. 0 |. -0,853729 |. 0,067702 |. -0.068295 |.

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

Оригинал: “https://dev.to/yelmartinezseo/analyzing-the-severity-of-car-accidents-cp9”