Что такое self в Python: примеры из реального мира
Что такое self в Python: примеры из реального мира
В анализе данных ключевыми факторами влияния являются переменные, оказывающие значительное влияние на зависимую переменную. Другими словами, это факторы, которые в наибольшей степени способствуют интересующему результату. В Python линейная регрессия используется для определения ключевых факторов влияния в наборе данных, а также для измерения силы и направления взаимосвязи между различными переменными. Вы можете посмотреть полное видео этого урока внизу этого блога .
Выявление ключевых факторов влияния может быть полезно для понимания лежащих в основе отношений в наборе данных и для прогнозирования будущих результатов.
Библиотеки Python предоставляют ряд инструментов и функций для выполнения регрессионного анализа и выявления ключевых факторов влияния в наборе данных.
Оглавление
Использование модели линейной регрессии
В этой статье я покажу, как можно использовать модель линейной регрессии для имитации некоторых ключевых факторов влияния LuckyTemplates. Наша цель — использовать все наши переменные, чтобы иметь возможность описать, что меняется в другой переменной.
Ключевые факторы влияния LuckyTemplates — это модель линейной регрессии. Часто мы используем это, хотя точно не знаем, что находится под капотом. В этом уроке я использую это, чтобы определить факторы, влияющие на страховые сборы.
Давайте взглянем на набор данных о страховых сборах. Я хочу, чтобы это объяснялось статусом курильщика, полом, регионом, детьми, ИМТ и возрастом.
В настоящее время ключевые факторы влияния показывают самую влиятельную переменную. Когда курильщик отвечает «да», средняя стоимость на 23 615 долларов выше, чем при всех других значениях курильщика.
Это отличное визуальное представление, но оно не дает нам никаких других переменных, которые могут повлиять на сборы.
Давайте углубимся в это, изменив раскрывающийся список с увеличения на уменьшение .
На этот раз все наоборот. Если вы не курите, средняя стоимость на 23 615 долларов ниже, чем у курильщика со всеми остальными ценностями.
Как видите, это модель линейной регрессии, которую я построил с помощью некоторых кодов Python и передал в LuckyTemplates с минимальным условным форматированием .
Что касается кодирования, у нас есть полный контроль над ним, и вы увидите, как я создал его в качестве альтернативы или дополнения к визуальному изображению ключевых влиятельных лиц.
Давайте перейдем к Блокноту Юпитера. Для лучшего понимания, позвольте мне объяснить это по частям.
Используемые библиотеки Python
В первой части я загрузил все библиотеки, которые хочу использовать. Если вы не знакомы с библиотеками, то это наборы кодов и функций, созданные для нас разработчиками.
Я импортировал pandas как pd , который является библиотекой для обработки данных, и numpy как np, чтобы мы могли выполнять линейные вычисления и условные выражения.
Используемые модели
Расскажу о моделях, которыми я пользовался. Я добавил sklearn.linear_model , библиотеку , и использовал модель линейной регрессии. На всякий случай я также добавил sklearn.preprocessing import StandardScaler , который позволит нам масштабировать наши данные.
Другая модель, которую я использую, называется xgboost import XGBRegressor . Это регрессионная модель с деревом решений и другими полезными аспектами.
Кроме того, я также использовал train_set_split , потому что хочу иметь возможность разделить данные между тренировочным набором и обучающим набором. В машинном обучении нам нужен набор обучающих данных, чтобы алгоритм научился, прежде чем делать какие-либо прогнозы.
Я также добавил mean_squared_error для определения модели и библиотеки matplotlib.pyplot на случай, если мы захотим сделать некоторые визуальные эффекты.
Мы можем не использовать все это, но это может быть полезно, поэтому я вставил их все.
Используемый набор данных
Далее, давайте быстро взглянем на набор данных. Я использовал функцию df = pd.read_csv, чтобы получить набор данных о страховании, а затем преобразовал данные в фиктивные переменные, используя df1 = pd.get_dummies (df, drop_first = True) .
Для этого давайте создадим новую ячейку, нажав Esc + B на клавиатуре, а затем введите df.head для оценки данных.
У нас есть возраст, пол, ИМТ, дети, курильщик, регион и расходы, которые мы хотим предсказать в качестве нашей зависимой переменной. Это данные, которые поступают неподготовленными для машинного обучения.
В машинном обучении мы не сможем использовать категориальные переменные, такие как женщина, мужчина, юго-запад и северо-запад. Следовательно, первое, что нам нужно сделать, если это типичная регрессионная модель, — это преобразовать категориальные переменные в числовые входные данные.
Для этого я использовал функцию pd.get_dummies , а затем также преобразовал ее в числовой столбец, изменив df.head на df1.head . Давайте нажмем кнопку «Выполнить» , чтобы показать, как это выглядит.
Теперь мы можем видеть этот новый набор столбцов, таких как sex_male , smoker_yes , region_northwest и так далее. Алгоритм автоматически знает, что если он равен 1 , это означает «да», а 0 означает «нет».
Примечательно, что здесь нет sex_female и region_northeast , потому что мы не хотим слишком усложнять модель. Мы удалили их с помощью функции drop_first = True .
Следующее, что я сделал, — это добавил функцию LinearRegression и сохранил ее в переменной модели.
Я также создал переменные X и Y для прогнозирования наших переменных Y, а затем ввел все остальные столбцы для наших предикторов, используя тот же набор данных, который мы использовали ранее.
Для переменной X мы использовали df1.drop («заряды», ось = 1) , чтобы сбрасывать заряды. С другой стороны, нам нужны заряды для переменной Y, поэтому мы вставляем df1['charges'] .
С помощью приведенных ниже функций я создал обучающие и тестовые наборы для X и Y с помощью функции train_test_split и передал их в переменные X и Y.
Кроме того, я использовал model.fit , чтобы подогнать данные обучения к нашей модели. Это означает, что модель линейной регрессии будет изучать обучающие данные.
На этот раз давайте посмотрим на наших предикторов. Мы видим это с помощью коэффициентов, потому что они описывают, как каждая из этих характеристик или переменных влияет на расходы.
Также заметно, что число коэффициента для smoker_yes очень близко, если сравнить его с числом того, что у нас есть для ключевых инфлюенсеров и в нашей модели.
Чтобы создать таблицу, в которой у нас есть функции и коэффициенты, я использовал pd.DataFrame , чтобы внести коэффициенты в таблицу и создать визуализацию.
Использование различных моделей для визуализации ключевых влиятельных лиц
Также рекомендуется использовать разные модели, чтобы получить ключевые факторы влияния, добавив XGB.Regressor .
Когда мы представляем модель, это просто простая линейная регрессия; но когда мы ввели XGB.Regressor, появилось множество параметров, которые мы можем использовать для оптимизации модели.
Я также воспроизвел эти функции, когда создавал фрейм данных ниже. Эти коэффициенты сильно отличаются от того, что мы видели в линейной регрессии.
С этой таблицей цифры точные. Например, если вы курите, ваши расходы увеличатся на 23 787 долларов США. Если у вас есть один ребенок, он увеличится на 472 доллара и так далее.
Эти факторы влияния также важны, потому что они отражают то, что мы имеем в таблице линейной регрессии. Это немного отличается, но очень близко, потому что эти влиятельные лица в сумме составляют одно. Это просто другой взгляд на инфлюенсеров.
Проверка точности анализа линейной регрессии
После этого мы хотим увидеть точность нашей модели, поэтому мы использовали y_pred = model.predict(X_test) . Было сделано предсказание, что он отклонился на 5885,7.
Это всего лишь тестовый набор данных, и хороший прогноз или плохой, нам еще нужно его оценить. Мы не собираемся делать это прямо сейчас, поскольку мы сосредоточены только на наших ключевых влиятельных лицах.
Возвращаясь к LuckyTemplates, я покажу вам, как я очень легко выразился. Это отдельная таблица, где вы можете увидеть особенности и факторы влияния.
Я сделал это, перейдя в Transform data .
Затем я продублировал свой набор данных и смог создать эту таблицу. Мы также можем перейти к Applied Steps , чтобы увидеть код Python и просмотреть переменные, которые мы использовали.
Давайте откроем скрипт Python , дважды щелкнув по нему.
Мы привезли свои библиотеки. Мы преобразовали его в набор данных с машинным обучением и предварительной обработкой, в котором были только нули и единицы.
Кроме того, мы ввели модель регрессии, создали наши X и Y для соответствия данным, а затем сохранили таблицу в качестве выходных данных. Модель достаточно хороша, поэтому я не использовал обучающий тестовый набор.
Еще одна вещь, которую я сделал, это переключить набор данных на df , потому что так проще писать. Набор данных является переменной для исходных данных.
С этой таблицей я сохранил ее как вывод, поэтому у нас есть эти коэффициенты.
Чтобы сделать это визуально, нажмите «Закрыть и применить» .
Теперь у нас есть гистограмма . Я также использовал условное форматирование, чтобы показать положительные и отрицательные стороны.
Как установить DAX Studio и табличный редактор в LuckyTemplates
Настройка параметров запроса в LuckyTemplates
Параметры DAX Studio LuckyTemplates через редактор запросов
Заключение
В заключение, понимание ключевых факторов влияния и реализация линейной регрессии в Python могут стать мощным инструментом для анализа данных и прогнозирования.
Определив ключевые факторы, влияющие на зависимую переменную, и используя линейную регрессию для моделирования их отношений, мы можем лучше понять и предсказать будущие результаты .
С помощью мощных библиотек Python легко реализовать линейную регрессию и извлечь из данных ценную информацию .
Всего наилучшего,
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.
Что такое шлюз LuckyTemplates? Все, что тебе нужно знать