Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Implementering av Sampling i Python | Sannolikhet & Statistik
Matematik för datavetenskap

bookImplementering av Sampling i Python

Enkel slumpsampling

1234567
import random N = 30 # population size n = 5 # sample size sample_srs = random.sample(range(1, N+1), n) print(f"Simple Random Sample: {sample_srs}")
copy
  • random.sample(range(1, N+1), n) väljer slumpmässigt n unika värden från populationen;
  • Fungerar utan återläggning (inga upprepningar);
  • Varje medlem i populationen har lika stor chans att bli vald.

Stratifierat urval

123456789
N_males = 18 N_females = 12 N_total = N_males + N_females n_total = 10 n_males = round((N_males / N_total) * n_total) n_females = round((N_females / N_total) * n_total) print(f"Stratified Sample Size -> Males: {n_males}, Females: {n_females}")
copy
  • Populationen delas in i delgrupper (strata);
  • Urvalet tas proportionellt från varje delgrupp;
  • Säkerställer representation av nyckelgrupper.

Klusterurval

1234567
import random clusters = 5 students_per_cluster = 25 selected_cluster = random.randint(1, clusters) print(f"Selected cluster (classroom): {selected_cluster} containing {students_per_cluster} students")
copy
  • Populationen delas in i kluster (t.ex. klassrum);
  • Ett eller flera kluster väljs slumpmässigt;
  • Alla i det valda klustret/klustren undersöks;
  • Effektivt när det är opraktiskt att lista varje individ.

Systematiskt urval

123456789101112
import random N = 1000 n = 100 k = N // n # Sampling interval start = random.randint(1, k) # Random start sample_systematic = list(range(start, N+1, k)) print(f"Sampling interval k = {k}") print(f"Random start = {start}") print(f"First 10 samples: {sample_systematic[:10]}")
copy
  • Intervall k=Nnk = \frac{N}{n};
  • Startpunkt väljs slumpmässigt mellan 1 och kk;
  • Välj varje kk:e element från den ordnade populationen.

Sammanfattning av metoder

  • Enkel slumpmässig: lika chans för alla, inga upprepningar;
  • Stratifierad: säkerställer representation av delgrupper;
  • Kluster: väljer slumpmässigt hela grupper;
  • Systematisk: väljer med fasta intervall efter slumpmässig start.
question mark

Vilken funktion används för enkel slumpmässig stickprovstagning utan återläggning?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 6

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Awesome!

Completion rate improved to 1.96

bookImplementering av Sampling i Python

Svep för att visa menyn

Enkel slumpsampling

1234567
import random N = 30 # population size n = 5 # sample size sample_srs = random.sample(range(1, N+1), n) print(f"Simple Random Sample: {sample_srs}")
copy
  • random.sample(range(1, N+1), n) väljer slumpmässigt n unika värden från populationen;
  • Fungerar utan återläggning (inga upprepningar);
  • Varje medlem i populationen har lika stor chans att bli vald.

Stratifierat urval

123456789
N_males = 18 N_females = 12 N_total = N_males + N_females n_total = 10 n_males = round((N_males / N_total) * n_total) n_females = round((N_females / N_total) * n_total) print(f"Stratified Sample Size -> Males: {n_males}, Females: {n_females}")
copy
  • Populationen delas in i delgrupper (strata);
  • Urvalet tas proportionellt från varje delgrupp;
  • Säkerställer representation av nyckelgrupper.

Klusterurval

1234567
import random clusters = 5 students_per_cluster = 25 selected_cluster = random.randint(1, clusters) print(f"Selected cluster (classroom): {selected_cluster} containing {students_per_cluster} students")
copy
  • Populationen delas in i kluster (t.ex. klassrum);
  • Ett eller flera kluster väljs slumpmässigt;
  • Alla i det valda klustret/klustren undersöks;
  • Effektivt när det är opraktiskt att lista varje individ.

Systematiskt urval

123456789101112
import random N = 1000 n = 100 k = N // n # Sampling interval start = random.randint(1, k) # Random start sample_systematic = list(range(start, N+1, k)) print(f"Sampling interval k = {k}") print(f"Random start = {start}") print(f"First 10 samples: {sample_systematic[:10]}")
copy
  • Intervall k=Nnk = \frac{N}{n};
  • Startpunkt väljs slumpmässigt mellan 1 och kk;
  • Välj varje kk:e element från den ordnade populationen.

Sammanfattning av metoder

  • Enkel slumpmässig: lika chans för alla, inga upprepningar;
  • Stratifierad: säkerställer representation av delgrupper;
  • Kluster: väljer slumpmässigt hela grupper;
  • Systematisk: väljer med fasta intervall efter slumpmässig start.
question mark

Vilken funktion används för enkel slumpmässig stickprovstagning utan återläggning?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 6
some-alt