Kom igångKom igång gratis

Problemet med multipla jämförelser

Problemet med multipla jämförelser uppstår när en forskare upprepade gånger testar olika variabler eller urval mot varandra för att hitta statistisk signifikans. Enbart av ren slump förväntar vi oss att då och då hitta ett resultat som verkar statistiskt signifikant.

I den här övningen arbetar du med lönedata för anställda i Austin, TX. Du jämför deras löner mot slumpmässigt genererade data och undersöker hur ofta dessa slumpdata framstår som "signifikanta" för att förklara lönerna. En sådan "signifikans" vore naturligtvis skenbar – slumptal hjälper oss inte att förklara någonting!

En DataFrame med polislöner (police_salaries_df) har redan lästs in åt dig, liksom paketen pandas som pd, NumPy som np, Matplotlib som plt och stats från SciPy.

Den här övningen är en del av kursen

Grunderna i inferens med Python

Visa kurs

Övningsinstruktioner

  • Lagra antalet personer i datamängden i n_rows (varje rad motsvarar en person) och initiera antalet signifikanta resultat, n_significant, till noll.
  • Skriv en for-slinga som körs 1 000 gånger och genererar n_rows slumptal.
  • Beräkna Pearsons R och tillhörande p-värde mellan dessa slumptal och polislönerna.
  • Om p-värdet är signifikant på 5 %-nivån, lägg till ett till n_significant med operatorn +=.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod