Построить корреляционную матрицу python

Как рассчитать корреляцию в Python

Один из способов количественной оценки взаимосвязи между двумя переменными – использовать Коэффициент корреляции Пирсона, который является мерой линейной связи между двумя переменными.\u00a0Он всегда принимает значение от -1 до 1, где:\n

-1 указывает на совершенно отрицательную линейную корреляцию между двумя переменные

  • 0 указывает на отсутствие линейной корреляции между двумя переменными
  • 1 указывает на совершенно положительную линейную корреляцию между двумя переменными

Чем дальше коэффициент корреляции от нуля, тем сильнее Связь между двумя переменными.

В этом руководстве объясняется, как вычислить корреляцию между переменными в Python.

Как рассчитать корреляцию в Python

Чтобы вычислить корреляцию между двумя переменными в Python, мы можем использовать функцию Numpy corrcoef()

import numpy as np np.random.seed(100) #создать массив из 50 случайных целых чисел от 0 до 10 var1 = np.random.randint(0, 10, 50) #создать положительно коррелированный массив с некоторым случайным шумом var2 = var1 + np.random.normal(0, 10, 50) #рассчитать корреляцию между двумя массивами np.corrcoef(var1, var2) # [[ 1. 0.335] # [ 0.335 1. ]]

Мы видим, что коэффициент корреляции между этими двумя переменными составляет 0,335 , что является положительной корреляцией.

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

np.corrcoef(var1, var2)[0,1] #0.335

Чтобы проверить, является ли эта корреляция статистически значимой, мы можем рассчитать p-значение, связанное с коэффициентом корреляции Пирсона, с помощью Scipy pearsonr(), которая возвращает коэффициент корреляции Пирсона вместе с двусторонним p-значением.

from scipy.stats.stats import pearsonr pearsonr(var1, var2) #(0.335, 0.017398)

Коэффициент корреляции – 0,335, а двустороннее значение p – 0,017. Поскольку это значение p меньше 0,05, мы можем заключить, что существует статистически значимая корреляция между двумя переменными.

Если вас интересует вычисление корреляции между несколькими переменными в Pandas DataFrame, вы можете просто использовать функцию .corr()

import pandas as pd data = pd.DataFrame(np.random.randint(0, 10, size=(5, 3)), columns=['A', 'B', 'C']) data # A B C #0 8 0 9 #1 4 0 7 #2 9 6 8 #3 1 8 1 #4 8 0 8 #рассчитать коэффициенты корреляции для всех попарных комбинаций data.corr() # A B C # A 1.000000 -0.775567 -0.493769 # B -0.775567 1.000000 0.000000 # C -0.493769 0.000000 1.000000

И если вас интересует только расчет корреляции между двумя конкретными переменными в DataFrame, вы можете указать переменные:

Читайте также:  Ковровый питон харрисона содержание

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в Python:

Источник

Корреляционная матрица в Python – практическая реализация

Эй, читатели! В этой статье мы будем сосредоточиться на появлении и работе корреляционной матрицы в Python подробно. Итак, давайте начнем сейчас!

Корреляционная матрица в Python – практическая реализация

Эй, читатели! В этой статье мы будем сосредоточиться на появлении и работе корреляционная матрица в питоне подробно. Итак, давайте начнем сейчас!

Что такое корреляционный регрессионный анализ?

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

Корреляционный регрессионный анализ позволяет программистам проанализировать отношения между Непрерывные независимые переменные и непрерывная зависимая переменная Отказ

То есть регрессионный анализ оценивает вероятность и взаимосвязь между независимыми переменными набора данных, а также независимыми и независимыми (зависимыми) переменными.

Анализ корреляции регрессионного анализа использует корреляционную матрицу для представления взаимосвязи между переменными набора данных.

Корреляционная матрица представляет собой матричную структуру, которая помогает программистую анализировать взаимосвязь между переменными данных. Он представляет собой корреляционное значение между диапазоном 0 и 1 Отказ

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

Можно изгнать следующие наблюдения от регрессионного анализа и матрицы корреляции:

  • Понять зависимость между независимыми переменными набора данных.
  • Помогает выбрать важные и нередительные переменные набора данных.
  • Применимо только к числовым/непрерывным переменным.

Давайте теперь сосредоточимся на реализации корреляционной матрицы в Python.

Создание корреляционной матрицы в Python

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

Читайте также:  Python удалить первую строку файла

Correlation Matrix DataSet

  • преданность
  • атемп
  • гул
  • скорость ветра

Здесь CNT – это переменная ответа.

Теперь мы создали корреляционную матрицу для цифровых столбцов, используя Corr () Функция как показано ниже:

import os import pandas as pd import numpy as np import seaborn as sn # Loading the dataset BIKE = pd.read_csv("day.csv") # Numeric columns of the dataset numeric_col = ['temp','atemp','hum','windspeed'] # Correlation Matrix formation corr_matrix = BIKE.loc[:,numeric_col].corr() print(corr_matrix) #Using heatmap to visualize the correlation matrix sn.heatmap(corr_matrix, annot=True)

Кроме того, мы использовали Weanborn Heatmamps для визуализации матрицы.

Корреляционная матрица

Итак, из вышеуказанной матрицы, следующие наблюдения могут быть нарисованы

Корреляционная матричная тепломапа

  • Переменные «TEMP» и «ATEMP» очень коррелируют со корреляционным значением 0,99 Отказ
  • Таким образом, мы можем бросить любую одну из двух переменных данных.

Заключение

По этому, мы подошли к концу этой темы. Не стесняйтесь комментировать ниже, если вы столкнетесь с любым вопросом.

До этого, счастливого обучения !!

Читайте ещё по теме:

Источник

Как создать корреляционную матрицу в Python

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

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

В этом руководстве объясняется, как создать и интерпретировать корреляционную матрицу в Python.

Как создать матрицу корреляции в Python

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

Шаг 1. Создайте набор данных

import pandas as pd data = df = pd.DataFrame(data, columns=['assists','rebounds','points']) df # assist rebounds points #0 4 12 22 #1 5 14 24 #2 5 13 26 #3 6 7 26 #4 7 8 29 #5 8 8 32 #6 8 9 20 #7 10 13 14

Шаг 2. Создайте матрицу корреляции

#создать корреляционную матрицу df.corr() assists rebounds points assists 1.000000 -0.244861 -0.329573 rebounds -0.244861 1.000000 -0.522092 points -0.329573 -0.522092 1.000000 #создайте ту же матрицу корреляции с коэффициентами, округленными до 3 знаков после запятой df.corr().round(3) assists rebounds points assists 1.000 -0.245 -0.330 rebounds -0.245 1.000 -0.522 points -0.330 -0.522 1.000

Шаг 3. Интерпретация матрицы корреляции

Читайте также:  Целый числа си шарп

Все коэффициенты корреляции по диагонали таблицы равны 1, потому что каждая переменная совершенна коррелирует сам с собой.

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

  • Коэффициент корреляции между передачами и подборами равен -0.245
  • Коэффициент корреляции между передачами и очками равен -0.330 .
  • Коэффициент корреляции между подборами и очками равен -0.522

Шаг 4. Визуализируйте матрицу корреляции (необязательно)

Вы можете визуализировать матрицу корреляции с помощью параметры стиля доступны в pandas:

corr = df.corr() corr.style.background_gradient(cmap='coolwarm')

Correlation matrix in Python

Вы также можете изменить аргумент cmap , чтобы создать корреляционную матрицу с разными цветами.

corr = df.corr() corr.style.background_gradient(cmap='RdYlGn') 

Correlation matrix with matplotlib in Python

corr = df.corr() corr.style.background_gradient(cmap='bwr')

Correlation matrix using Pandas

Примечание: Полный список аргументов cmap см. в документация по matplotlib.

Источник

Оцените статью