ANALIZA EKSPERYMENTÓW DOTYCZĄCYCH POMIARU PRĘDKOŚCI ŚWIATŁA

Author

Martyna Kozak

PODSTAWOWE INFORMACJE O ZBIORZE DANYCH

data("morley")
head(morley)
    Expt Run Speed
001    1   1   850
002    1   2   740
003    1   3   900
004    1   4  1070
005    1   5   930
006    1   6   850

OPIS ZBIORU DANYCH

• Expt - numer eksperymentu

• Run - numer próby w każdym eksperymencie

• Speed - zmierzona różnica prędkości światła w stosunku do 299000 km/s

STRUKTURA DANYCH

str(morley)
'data.frame':   100 obs. of  3 variables:
 $ Expt : int  1 1 1 1 1 1 1 1 1 1 ...
 $ Run  : int  1 2 3 4 5 6 7 8 9 10 ...
 $ Speed: int  850 740 900 1070 930 850 950 980 980 880 ...
summary(morley)
      Expt        Run            Speed       
 Min.   :1   Min.   : 1.00   Min.   : 620.0  
 1st Qu.:2   1st Qu.: 5.75   1st Qu.: 807.5  
 Median :3   Median :10.50   Median : 850.0  
 Mean   :3   Mean   :10.50   Mean   : 852.4  
 3rd Qu.:4   3rd Qu.:15.25   3rd Qu.: 892.5  
 Max.   :5   Max.   :20.00   Max.   :1070.0  

WSTĘPNA ANALIZA DANYCH

ROZKŁAD ZMIENNEJ SPEED

hist(morley$Speed, main="ROZKŁAD ZMIERZONYCH PRĘDKOŚCI", xlab="SPEED", col="lightpink")

Histogram zmierzonych prędkości pokazuje w jakich przedziałach dana wartość występuje najczęściej.

ROZKŁAD PRĘDKOŚCI WEDŁUG EKSPERYMENTU

library(ggplot2)
ggplot(morley, aes(x=factor(Expt), y=Speed, color=factor(Expt))) + 
  geom_jitter(width=0.3, height=0, size=2) +
  labs(title="PRĘDKOŚĆ ŚWIATŁA WEDŁUG EKSPERYMENTU", x="EKSPERYMENT", y="PRĘDKOŚĆ (Speed)") +
  theme_minimal() +
  scale_color_brewer(palette="Set2")

Wykres punktowy przedstawia zmierzoną prędkość światła w różnych eksperymentach. Eksperymenty, mające mniejszą rozrzutność mogą wykazywć większą dokładność wyników, bądź oznaczać, że eksperymenty zostały poprowadzone w zupełnie różnych warunkach - jest nim na przykład eksperyment numer 1.

ANALIZA STATYSTYCZNA

ŚREDNIA I ODCHYLENIE STANDARDOWE DLA CAŁEGO ZBIORU DANYCH

mean_speed <- mean(morley$Speed)
sd_speed <- sd(morley$Speed)
mean_speed
[1] 852.4
sd_speed
[1] 79.01055

ŚREDNIA PRĘDKOŚĆ DLA KAŻDEGO EKSPERYMENTU

aggregate(Speed ~ Expt, data=morley, FUN=mean)
  Expt Speed
1    1 909.0
2    2 856.0
3    3 845.0
4    4 820.5
5    5 831.5
mean_speed_by_expt <- aggregate(Speed ~ Expt, data=morley, FUN=mean)
ggplot(mean_speed_by_expt, aes(x=factor(Expt), y=Speed)) +
  geom_bar(stat="identity", fill="lightgrey", color="pink") +
  labs(title="ŚREDNIA PRĘDKOŚĆ DLA KAŻDEGO EKSPERYMENTU", 
       x="EKSPERYMENT", 
       y="PRĘDKOŚĆ") +
  theme_minimal()

Wykres słupkowy pokazuje małą róznicę między średnimi prędkościami w eksperymenatch 1-5.

ANALIZA WARIANCJI ANOVA

anova_result <- aov(Speed ~ factor(Expt), data=morley)
summary(anova_result)
             Df Sum Sq Mean Sq F value  Pr(>F)   
factor(Expt)  4  94514   23629   4.288 0.00311 **
Residuals    95 523510    5511                   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

OPIS WIERSZY ANALIZY WARIANCJI ANOVA

• Expt - eksperymenty (źródło zmienności)

• Residuals (reszta) - reprezentuje zmienność wewnątrz grup

OPIS KOLUMN ANALIZY WARIANCJI ANOVA

• Sum Sq (suma kwadratów) - średnia zmienność między eksperymentami

• Mean Sq - średnia zmienność między eksperymentami

• F value - stosunek zmienności róźnic między eksperymentami do zmienności wewnętrznej

• P value (Pr(>F)) - wartość, informująca czy różnice między eksperymentami są statystycznie istotne

INTERPRETACJA WYNIKÓW ANALIZY WARIANCJI ANOVA

Wartość P-value (Pr(>f)) wynosi 0.00311 (<0.005), co oznacza, że istnieje statystycznie instotna różnica pomiędzy prędkościami światła w różnych eksperymentach. Możemy zatem odrzucić hipotezę zerową, która zakłada brak różnic.

WIZUALIZACJA WYNIKÓW ANOVA

plot(anova_result)

ANALIZA REGRESJI

data(morley)
head(morley)
    Expt Run Speed
001    1   1   850
002    1   2   740
003    1   3   900
004    1   4  1070
005    1   5   930
006    1   6   850

Speed jest zmienną zależną.

MODEL REGRESJI Z JEDNĄ ZMIENNĄ NIEZALEŻNĄ

• Speed - zmienna zależna

• Expt (numer eksperymentu) - zmienna niezależna

model <- lm(Speed ~ Expt, data=morley)
summary(model)

Call:
lm(formula = Speed ~ Expt, data = morley)

Residuals:
    Min      1Q  Median      3Q     Max 
-240.50  -40.74    1.65   55.70  179.50 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  909.550     17.496  51.986  < 2e-16 ***
Expt         -19.050      5.275  -3.611 0.000483 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 74.6 on 98 degrees of freedom
Multiple R-squared:  0.1174,    Adjusted R-squared:  0.1084 
F-statistic: 13.04 on 1 and 98 DF,  p-value: 0.0004827

WYKRES REGRESJI Z JEDNĄ ZMIENNĄ NIEZALEŻNĄ

plot(morley$Expt, morley$Speed, main="REGRESJA: SPEED W ZALEŻNOŚCI OD EXPT",
     xlab="EXPT", ylab="SPEED", pch=19, col="lightpink")
abline(model, col="black", lwd=2)

MODEL REGRESJI Z DWIEMA ZMIENNYMI NIEZALEŻNYMI

• Speed - zmienna zależna

• Expt (numer eksperymentu) - zmienna niezależna

• Run (numer próby w każdym eksperymencie) - zmienna niezależna

model_multi <- lm(Speed ~ Expt + Run, data=morley)
summary(model_multi)

Call:
lm(formula = Speed ~ Expt + Run, data = morley)

Residuals:
    Min      1Q  Median      3Q     Max 
-239.27  -41.48    2.53   55.96  177.21 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 913.2447    22.2564  41.033  < 2e-16 ***
Expt        -19.0500     5.3004  -3.594 0.000514 ***
Run          -0.3519     1.3000  -0.271 0.787208    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 74.96 on 97 degrees of freedom
Multiple R-squared:  0.1181,    Adjusted R-squared:  0.09992 
F-statistic: 6.495 on 2 and 97 DF,  p-value: 0.002253

WYKRES REGRESJI : SPEED W ZALEŻNOŚCI OD EXPT Z UWZGLĘDNIENIEM RUN

ggplot(morley, aes(x = factor(Expt), y = Speed, color = factor(Run))) +
  geom_point() +
  geom_smooth(method = "lm", aes(group = factor(Run)), se = FALSE, color = "pink") +
  labs(title = "REGRESJA: SPEED W ZALEŻNOŚCI OD RUN
                   Z UWZGLĘDNIENIEM EXPT",
       x = "Eksperyment (Expt)",
       y = "Prędkość (Speed)",
       color = "Run") +
  theme_minimal()
`geom_smooth()` using formula = 'y ~ x'

WYKRES REGRESJI: SPEED W ZALEŻNOŚCI OD RUN Z UWZGLĘDNIENIEM EXPT

ggplot(morley, aes(x = Run, y = Speed, color = factor(Expt))) +
  geom_point() +
  geom_smooth(method = "lm", aes(group = factor(Expt)), se = FALSE, color = "pink") +
  labs(title = "Regresja: Speed w zależności od Run
          z uwzględnieniem Expt",
       x = "PRZEBIEG (Run)",
       y = "PRĘDKOŚĆ (Speed)",
       color = "EKSPERYMENT (Expt)") +
  theme_minimal()
`geom_smooth()` using formula = 'y ~ x'

WYKRES 3D ZALEŻNOŚCI SPEED OD DWÓCH ZMIENNYCH NIEZALEŻNYCH

x <- morley$Expt
y <- morley$Run
z <- morley$Speed

zmat <- matrix(z, nrow = length(unique(x)), ncol = length(unique(y)), byrow = TRUE)

persp(unique(x), unique(y), zmat, theta = 30, phi = 20, expand = 0.6, 
      col = "pink", shade = 0.5,
      xlab = "EXPT", ylab = "RUN", zlab = "SPEED",
      main = "WYKRES 3D: Speed w zależności od Expt i Run")

WNIOSKI NA PRZYKŁADZIE ANALIZY REGRESJI

Model regresji z jedną zmienną niezależną wyjaśnia, że eksperymenty mają duży wpływ na zmierzoną prędkość światła.

Poprzez model regresji z dwiema zmiennymi niezależnymi możemy zauważyć, żę zarówno zmienna Run jak i zmienna Expt mają istotny wpływ na zmierzoną prędkość światła.

PODSUMOWANIE

Podsumowując analizę zbioru danych “morley”, która pozwoliła na uzyskanie istotnych wyników, możemy zauważyć, że wskazują one na znaczący wpływ przebiegów oraz eksperymentów na prędkość światła.