Những lưu ý về tương quan

Nhập môn Thống kê với Python

Maggie Matsui

Content Developer, DataCamp

Quan hệ phi tuyến

biểu đồ phân tán của các biến có quan hệ bậc hai

$$r = 0.18$$

Nhập môn Thống kê với Python

Quan hệ phi tuyến

Những gì ta thấy:

biểu đồ phân tán quan hệ bậc hai với đường xu hướng bậc hai

Những gì hệ số tương quan “thấy”:

biểu đồ phân tán quan hệ bậc hai với đường xu hướng tuyến tính

Nhập môn Thống kê với Python

Tương quan chỉ nắm quan hệ tuyến tính

Không nên dùng tương quan một cách mù quáng

df['x'].corr(df['y'])
0.081094

Luôn trực quan hóa dữ liệu

biểu đồ phân tán của các biến có quan hệ bậc hai

Nhập môn Thống kê với Python

Dữ liệu giấc ngủ ở động vật có vú

print(msleep)
                 name       genus   vore         order  ... sleep_cycle  awake  brainwt   bodywt
1             Cheetah    Acinonyx  carni     Carnivora  ...         NaN   11.9      NaN   50.000
2          Owl monkey       Aotus   omni      Primates  ...         NaN    7.0  0.01550    0.480
3     Mountain beaver  Aplodontia  herbi      Rodentia  ...         NaN    9.6      NaN    1.350
4 Greater short-ta...     Blarina   omni  Soricomorpha  ...    0.133333    9.1  0.00029    0.019
5                 Cow         Bos  herbi  Artiodactyla  ...    0.666667   20.0  0.42300  600.000
..                ...         ...    ...           ...  ...         ...    ...      ...      ...
79         Tree shrew      Tupaia   omni    Scandentia  ...    0.233333   15.1  0.00250    0.104
80 Bottle-nosed do...    Tursiops  carni       Cetacea  ...         NaN   18.8      NaN  173.330
81              Genet     Genetta  carni     Carnivora  ...         NaN   17.7  0.01750    2.000
82         Arctic fox      Vulpes  carni     Carnivora  ...         NaN   11.5  0.04450    3.380
83            Red fox      Vulpes  carni     Carnivora  ...    0.350000   14.2  0.05040    4.230
Nhập môn Thống kê với Python

Cân nặng vs thời gian thức

Biểu đồ phân tán: cân nặng cơ thể vs thời gian thức

msleep['bodywt'].corr(msleep['awake'])
0.3119801
Nhập môn Thống kê với Python

Phân phối cân nặng cơ thể

Biểu đồ tần suất của biến bodywt

Nhập môn Thống kê với Python

Biến đổi log

msleep['log_bodywt'] = np.log(msleep['bodywt'])

sns.lmplot(x='log_bodywt', y='awake', data=msleep, ci=None) plt.show()
msleep['log_bodywt'].corr(msleep['awake'])
0.5687943

Biểu đồ phân tán: log bodywt vs thời gian thức

Nhập môn Thống kê với Python

Các biến đổi khác

  • Biến đổi log (log(x))
  • Căn bậc hai (sqrt(x))
  • Nghịch đảo (1 / x)

  • Kết hợp, ví dụ:

    • log(x)log(y)
    • sqrt(x)1 / y
Nhập môn Thống kê với Python

Vì sao dùng biến đổi?

  • Một số phương pháp thống kê yêu cầu quan hệ tuyến tính
    • Hệ số tương quan
    • Hồi quy tuyến tính

 

Giới thiệu Mô hình tuyến tính bằng Python

Nhập môn Thống kê với Python

Tương quan không hàm ý nhân quả

                x tương quan với y không có nghĩa x gây ra y

Biểu đồ phân tán: tiêu thụ bơ thực vật bình quân đầu người ở Mỹ vs tỷ lệ ly hôn ở Maine. Hai biến tương quan cao với hệ số 0,99

Nhập môn Thống kê với Python

Nhiễu đồng biến (confounding)

  Uống cà phê (x) trỏ tới ung thư phổi (y)

Nhập môn Thống kê với Python

Nhiễu đồng biến (confounding)

  Uống cà phê (x) trỏ tới ung thư phổi (y) với hút thuốc (yếu tố gây nhiễu) phía trên

Nhập môn Thống kê với Python

Nhiễu đồng biến (confounding)

  Uống cà phê (x) trỏ tới ung thư phổi (y) với hút thuốc (yếu tố gây nhiễu). Mũi tên hai chiều giữa hút thuốc và uống cà phê, ghi "liên hệ"

Nhập môn Thống kê với Python

Nhiễu đồng biến (confounding)

  Uống cà phê (x) trỏ tới ung thư phổi (y) với hút thuốc (yếu tố gây nhiễu). Mũi tên hai chiều giữa hút thuốc và uống cà phê ghi "liên hệ". Mũi tên từ hút thuốc đến ung thư phổi ghi "nhân quả"

Nhập môn Thống kê với Python

Nhiễu đồng biến (confounding)

  Uống cà phê (x) với mũi tên hai chiều tới ung thư phổi (y) ghi "liên hệ". Mũi tên hai chiều giữa hút thuốc và uống cà phê ghi "liên hệ". Mũi tên từ hút thuốc đến ung thư phổi ghi "nhân quả".

  Kỳ nghỉ (x) trỏ tới doanh số bán lẻ (y). Khuyến mãi (yếu tố gây nhiễu) có mũi tên hai chiều với kỳ nghỉ và mũi tên một chiều tới doanh số.

Nhập môn Thống kê với Python

Ayo berlatih!

Nhập môn Thống kê với Python

Preparing Video For Download...