Pandas - Data Correlations

پیدا کردن ارتباط

یکی از بهترین جنبه‌های مدول Pandas تابع شیء corr() است.

تابع شیء corr() رابطه بین هر یک از ستون‌ها را در مجموعه داده پیدا می‌کند.

مثال این صفحه از فایلی به اسم 'data.csv' استفاده می‌کند.

دانلود data.csv


import pandas as pd

df = pd.read_csv('data.csv')

print(df.corr())

خروجی:

تابع شیء corr() مقادیر غیر عددی را نادیده می‌گیرد.

توضیح خروجی

خروجی تابع شیء corr() یک جدول با تعداد زیادی عدد است که نمایش دهنده ارتباط بین دو ستون هستند.

اعداد بین -1 و 1 تغییر می‌کنند.

1 به معنی ارتباط 1 به 1 (یک همبستگی کامل) است و برای این مجموعه داده، هرگاه مقدار ستون اول افزایش پیدا کرده، مقدار ستون دیگر نیز افزایش یافته است.

0.9 هم ارتباط خوبی را بیان می‌کند و اگر مقداری یکی را افزایش دهید به احتمال زیاد مقدار دیگر نیز افزایش می‌یابد.

-0.9 هم مانند 0.9 می‌تواند بیانگر ارتباط خوبی باشد. اما اگر مقداری یکی را افزایش دهید به احتمال زیاد مقدار دیگر کاهش می‌یابد.

0.2 بیانگر ارتباط خوبی نیست. به این معنی که اگر مقدار یکی افزایش یابد، مقدار دیگری لزوماً افزایش پیدا نمی‌کند.

ارتباط عالی

ارتباط بین ستون Duration با Duration مقدار 1.000000 است که با منطق هم سازگار است زیرا همیشه یک ستون با خودش ارتباط کامل دارد.

ارتباط خوب

ستون Duration و Calories مقدار 0.922721 را گرفته‌اند که ارتباط خیلی خوبی است و می‌توانیم پیش بینی کنیم که هر چقدر مدت زمان تمرین بیشتر باشد، کالری بیشتری می‌سوزد و یا برعکس هر چقدر کالری بیشتری سوزانده شده باشد می‌توانیم بگوئیم که مدت زمان تمرین بیشتر بوده است.

ارتباط بد

ستون Duration با Maxpulse مقدار همبستگی 0.009403 را گرفته که ارتباط بدی را نشان می‌دهد. به این معنی که نمی‌توان با نگاه کردن به مدت زمان تمرین پیش بینی‌ای در مورد بیشترین ضربان داشت و برعکس.