Bắt đầu ngayBắt đầu miễn phí

Vấn đề so sánh đa bội

Vấn đề so sánh đa bội xảy ra khi nhà nghiên cứu lặp đi lặp lại việc kiểm tra các biến/mẫu khác nhau với nhau để tìm ý nghĩa thống kê. Chỉ do ngẫu nhiên, chúng ta kỳ vọng thỉnh thoảng sẽ thấy một kết quả có ý nghĩa thống kê.

Trong bài tập này, bạn sẽ làm việc với dữ liệu lương của nhân viên tại Thành phố Austin, Texas. Bạn sẽ so sánh mức lương của họ với dữ liệu được tạo ngẫu nhiên. Bạn sẽ thấy dữ liệu ngẫu nhiên này "có ý nghĩa" trong việc giải thích lương của nhân viên thường xuyên đến mức nào. Rõ ràng bất kỳ "ý nghĩa" nào như vậy đều là ngụy tạo, vì các số ngẫu nhiên không giúp ích nhiều trong việc giải thích điều gì!

Một DataFrame về lương của cảnh sát (police_salaries_df) đã được nạp sẵn cho bạn, cùng với các gói pandas là pd, NumPy là np, Matplotlib là plt, và stats từ SciPy.

Bài tập này là một phần của khóa học

Nền tảng Suy luận trong Python

Xem khóa học

Hướng dẫn bài tập

  • Lưu số người trong tập dữ liệu vào n_rows (mỗi hàng tương ứng một người), và khởi tạo số kết quả có ý nghĩa, n_significant, bằng 0.
  • Viết một vòng lặp for chạy 1000 lần và tạo n_rows số ngẫu nhiên.
  • Tính Pearson's R và p-value đi kèm giữa các số ngẫu nhiên này và mức lương của cảnh sát.
  • Nếu p-value có ý nghĩa ở mức 5%, cộng thêm một vào n_significant bằng toán tử +=.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Compute number of rows and initialize n_significant
n_rows = ____
n_significant = ____

# For loop which generates n_rows random numbers 1000 times
for i in ____:
  random_nums = np.random.uniform(size=____)
  # Compute correlation between random_nums and police salaries
  r, p_value = stats.____(____, random_nums)
  # If the p-value is significant at 5%, increment n_significant
  if ____ < ____:
    ____ += 1
    
print(n_significant)
Chỉnh sửa và Chạy Mã