Çözüldü İki Ortalamanın İstatistiksel Analizi-Küçük Örnek (Student t) Dağılımıyla Hipotez Testi-Programlama

Konusu 'Akademik Soru Çözümleri ve Kaynakları' forumundadır ve Honore tarafından 28 Haziran 2026 16:51 başlatılmıştır.

Yüklüyor...
  1. Honore

    Honore Yönetici Yönetici

    Mesajlar:
    11.215
    Beğenileri:
    652
    Cinsiyet:
    Bay
    Meslek:
    Müh. (Elk./Bilg.)
    Etki süreleri karşılaştırılmak istenen iki ilaç, önce biri ve sonra diğeri olmak üzere ayni kişilere verilerek ağrıyı durdurmada etkili oldukları süreler ölçülmüştür. Denemenin kurulmasında ilaçların etki sürelerinin birbiri içine girmemesi, hastaların hangi ilacı aldığını bilmemesi gibi bazı deneme kurallarına dikkat edilmiştir. 8 Hasta için bulunan sonuçlar aşağıda gösterilmiştir:
    Kod:
     Hasta               A Ağrı Kesici              B Ağrı Kesici      fark: d = B - A
       1                      3.2                        3.8                  0.6
       2                      1.6                        1.0                 -0.6
       3                      5.7                        8.4                  2.7
       4                      2.8                        3.6                  0.8
       5                      5.5                        5.0                 -0.5
       6                      1.2                        3.5                  2.3
       7                      6.1                        7.3                  1.2
       8                      2.9                        4.8                  1.9
    
    ---------------------------------------------------------------------------------------
    Ortalama                  3.62                       4.67                 1.05
    Bu iki ilacın etki süreleri arasında istatistiksel yönden anlamlı bir fark olup olmadığını 0.05 yanılma olasılığıyla test ediniz.

    İncelenen iki ilaçtan, B ilacının, A ilacının bileşiminde etkinliği artırmak amacıyla yapılan bir değişiklik sonucunda elde edildiği varsayılarak ağrıyı hafifletme sürelerinin ortalamaları arasında;
    H0 : µA - µB = 0 sıfır hipotezine karşı,
    H1 : µA - µB > 0 alternatif hipotezinin test edilmesi gerekir.

    Denemede eşleştirilmiş gözlemler kullanıldığından n adet hasta sayısına bağlı olarak d(n) = B(n) - A(n) olarak tanımlanan yeni bir değişken için yukarıdaki hipotezler;
    H0 : µd = 0
    H1 : µd > 0
    şekline dönüşür ve bu hipotezi test etmek için µd ve σd aşağıdaki gibi tahminlenir:
    d' = Σd(n) / n = 8.4 / 8 = 1.05
    (σd)^2'nin tahmini ise (sd)^2 = ( Σ(d(n))^2 - Σd(n) ) / (n - 1) = (19.24 - 8.4^2 / 8) / (8 - 1) = 1.488
    d' için varyans (s_d')^2 = (sd)^2 / n = 1.488 / 8 = 0.186
    Farkın standart hatası ise s_d' = √0.186 = 0.4314
    Test istatistiği: t = (d' - 0) / s_d' = 1.05 / 0.4314 = 2.434
    H0 sıfır hipotezi doğru olduğunda, bu şekilde gösterilen t test istatistiği n - 1 = 8 - 1 = 7 serbestlik dereceli t dağılışı gösterir. α = 0.05 alındığında t tablosundan bakılan kritik değer 1.895 olup 2.434 > 1.895 olduğundan red bölgesine düşer ve H0 hipotezi reddedilir. B ağrı kesicisi, A ağrı kesicisine oranla daha uzun sürede ağrıyı kesmektedir.

    Kaynak: "İstatistiğe Giriş", Doç.Dr. Halis Püskülcü, Doç.Dr. Fikret İkiz, Ege Üniversitesi Mühendislik Fakültesi, Bilgisayar Bilimleri Mühendisliği Bölümü, 1986, Sayfa 181 - 183'deki örnek

    Bilgisayar programlamayla ilgilenen öğrenciler için Fortran çözümü:
    [​IMG]
    https://i.ibb.co/CKLrPJV4/iki-ila-Fortran.png

    Program:
    Kod:
    ! "Basic Programlama ve İstatistiksel Yöntemler", Dr. Osman Saraçbaşı, Dr. Ergun Karaağaoğlu, Dr. Osman Saka
    ! Hacettepe Üniversitesi, TIP Fakültesi, Biyoistatistik Bilim Dalı Öğretim Görevlileri" tarafından yazlmış Eylül 1986
    ! tarihli kitabın 203 - 205 no.lu sayfalarında gösterilen Basic dilindeki programın GOTO ve GOSUB deyimleri kaldırılıp
    ! olabildiğince yapısallaştırıldıktan sonra gerekli açıklamaları da verilerek yazılmış Fortran versiyonu
    !
    ! İki Ortalamanın Karşılaştırılması (Eşleştirilebilen Örnekler) İçin Küçük Örnek Testi
    !
    ! Etki süreleri karşılaştırılmak istenen iki ilaç, önce biri ve sonra diğeri olmak üzere ayni kişilere verilerek
    ! ağrıyı durdurmada etkili oldukları süreler ölçülmüştür. Denemenin kurulmasında ilaçların etki sürelerinin
    ! birbiri içine girmemesi, hastaların hangi ilacı aldığını bilmemesi gibi bazı deneme kurallarına dikkat edilmiştir.
    ! 8 Hasta için bulunan sonuçlar aşağıda gösterilmiştir:
    !
    ! Hasta                A Ağrı Kesici              B Ağrı Kesici      fark: d = B - A
    !    1                      3.2                        3.8                  0.6
    !    2                      1.6                        1.0                 -0.6
    !    3                      5.7                        8.4                  2.7                       
    !    4                      2.8                        3.6                  0.8
    !    5                      5.5                        5.0                 -0.5
    !    6                      1.2                        3.5                  2.3
    !    7                      6.1                        7.3                  1.2
    !    8                      2.9                        4.8                  1.9
    !---------------------------------------------------------------------------------------
    ! Ortalama                  3.62                       4.67                 1.05
    !
    ! Bu iki ilacın etki süreleri arasında istatistiksel yönden anlamlı bir fark olup olmadığını 0.05 yanılma olasılığıyla test ediniz.
    !
    ! "İstatistiğe Giriş", Doç.Dr. Halis Püskülcü, Doç.Dr. Fikret İkiz, Ege Üniversitesi Mühendislik Fakültesi
    ! Bilgisayar Bilimleri Mühendisliği Bölümü, 1986, Sayfa 181 - 183'deki örnek
    
    ! İki Ortalama Arasındaki Farkın Anlamlılık Testi
    program t_dagilimi
    implicit none
    integer         :: N = 8                      ! Örnek Sayısı
    integer         :: SD, k                      ! Serbestlik Derecesi ve Yardımcı Değişken
    real(kind = 8)  :: XA(8) = (/3.2, 1.6, 5.7, 2.8, 5.5, 1.2, 6.1, 2.9/) ! A ilacının ağrıyı kesme süreleri
    real(kind = 8)  :: XB(8) = (/3.8, 1.0, 8.4, 3.6, 5.0, 3.5, 7.3, 4.8/) ! B ilacının ağrıyı kesme süreleri
    real(kind = 8)  :: XF(8), X_F                 ! Farklar ve toplamı
    real(kind = 8)  :: d                          ! Farklarin ortalamasi 
    real(kind = 8)  :: di_kare(8)                 ! Farklarin kareleri
    real(kind = 8)  :: sd_kare                    ! Farklarin varyansi
    real(kind = 8)  :: SH                         ! Farkların Standart Hatası
    real(kind = 8)  :: TI                         ! Test İstatistiği
    real(kind = 8)  :: t0                         ! ABS(TI) (Test istatistiğinin mutlak değeri)
    real(kind = 8)  :: p                          ! Hesaplanan olasılık
    real(kind = 8)  :: tD                         ! t Dağılımı fonksiyonuyla hesaplanan değer
    real, parameter :: t_Tablo = 1.895            ! α = 0.05 ve 8 - 1 = 7 Serbestlik Derecesi için t tablo değeri
    
    SD = N - 1; XF = XB - XA; X_F = SUM(XF); d = X_F / N
    
    di_kare = XF**2; sd_kare = ( SUM(di_kare) - (SUM(XF))**2 / N ) / SD
    
    SH = SQRT( sd_kare / N ); TI = d / SH
    
    t0 = ABS(TI); k = SD
    
    p = tD(t0, k)
    
    write(6, 20)"Farklarin Ortalamasi: ",d
    write(6, 20)"Farklarin Standart Hatasi (Dakika) = ", SH
    write(6, 20)"Hesaplanan Test Istatistigi = ", TI
    write(6, 10)"Serbestlik Derecesi: ",SD
    write(6, 20)"P Olasiligi (Tek Yonlu) = ", 1 - p
    write(6, 20)"P Olasiligi (Iki Yonlu) = ", 2*(1 - p )
    
    if (t0 > t_Tablo) then
       write(6, 25)"H0 hipotezi reddedilir cunku B ilaci, A'ya gore daha uzun surede"
       write(6, 25)"agriyi kesmektedir."
    else  
       write(6, 25)"H0 hipotezi reddedilemez çünkü iki ilacin agriyi kesme &
    & süreleri arasinda istatistiksel bakimdan anlamli bir fark yoktur."
    endif
    
    10 format(/,3x,a, i2,/)
    20 format(3x,a,f11.6,/)
    25 format(/,3x,a)
    
    end
    ! t Dağılım Fonksiyonu
    real(kind = 8) function tD(t0, k)
    implicit none
    integer, intent(in)        :: k
    real(kind = 8), intent(in) :: t0
    real(kind = 8)             :: a1 = 0.36338023 ! Kitaptaki programda verilen ve sebebi yazılmamış olan sabit değer
    real(kind = 8)             :: w, s, c, t1, t, p
    integer                    :: w1, j1, j2, k2, i
    
    w = ATAN(t0 / SQRT(REAL(k))); s = SIN(w); c = cos(w); w1 = k - 2*INT(k / 2)
    
    if (w1 == 0) then
       t1 = s
    
       if (k == 2) then
          p = 0.5*(1 + t1); tD = p; return
       else    
          t = s; j1 = -1; j2 = 0; k2 = (k - 2) / 2
          do i = 1, k2
             j1 = j1 + 2; j2 = j2 + 2
             t = t*c**2*REAL(j1) / j2; t1 = t1 + t
          enddo
          t1 = t1*(1 - a1*w1); p = 0.5*(1 + t1); tD = p; return
       endif
    
    else
       t1 = w
      
       if (k == 1) then
          t1 = t1*(1 - a1*w1); p = 0.5*(1 + t1); tD = p; return
       else
          t = s*c; t1 = t1 + t
          if (k == 3) then
             t1 = t1*(1 - a1*w1); p = 0.5*(1 + t1); tD = p; return
          else
             j1 = 0; j2 = 1; k2 = (k - 3) / 2
             do i = 1, k2
                j1 = j1 + 2; j2 = j2 + 2
                t = t*c**2*REAL(j1) / j2; t1 = t1 + t
             enddo
             t1 = t1*(1 - a1*w1); p = 0.5*(1 + t1); tD = p; return
          endif
       endif 
     
    endif
    
    end function
     
    : Fortran

  2. Benzer Konular: Ortalamanın İstatistiksel
    Forum Başlık Tarih
    Akademik Soru Çözümleri ve Kaynakları İstatistiksel t (Student & Fisher) Dağılımıyla Hipotez Testi - Programlama 30 Mayıs 2026
    Diğer İstatistiksel Quartil Ölçüsü - Kutu (ve Bıyık) Grafiği 5 Nisan 2026
    Diğer İstatistiksel Ortalama, Tepe Değeri (Mod), Ortanca 8 Ekim 2024
    Diğer İstatistiksel Testler ve Standart Normal Dağılış - Birinci Derece Eşitsizlikler 16 Şubat 2023
    Akademik Soru Çözümleri ve Kaynakları İstatistiksel Anlam Düzeyi - Normal Dağılım 27 Ocak 2022

Sayfayı Paylaş