Mustaqil ish s in C++ C++ da statistik taqsimotlar


Download 0.74 Mb.
bet2/4
Sana15.06.2023
Hajmi0.74 Mb.
#1482107
1   2   3   4
Bog'liq
das oybek

Domen oralig'i - Tarqatish aniqlanadigan intervallar to'plami

  • Ehtimollik zichligi funktsiyasi - Bizning domenimizdagi har qanday muayyan qiymat uchun chastotani tavsiflaydi

  • To'plangan zichlik funksiyasi - Biror qiymatning muayyan qiymatdan kam yoki teng bo'lish ehtimolini tasvirlovchi funksiya

  • Kutish - Taqsimotning kutilgan qiymati (o'rtacha)

  • Variance - Qiymatlarning kutilgan qiymat atrofida tarqalishining xarakterlanishi

  • Standart Deviatsiya - Variancening kvadrat ildizi, u kutilgan qiymat bilan bir xil birlikka ega bo'lgani uchun ishlatiladi, farq farqi

    Bundan tashqari, "tasodifiylik" ni ta'minlash uchun tasodifiy raqamlar ketma-ketligini ta'minlash mumkin deb o'ylagan holda, ushbu taqsimotdan tasodifiy chizilgan ketma-ketlikni ishlab chiqarmoqchimiz. Bunga ikki yoʻl bilan erishishimiz mumkin. Biz tarqatishning o'ziga xos xususiyati bo'lgan invers kümülatif taqsimot funksiyasidan (shuningdek, kvantlash funktsiyasi deb ham ataladi) foydalanishimiz yoki maxsus usuldan (masalan, Box-Muller) foydalanishimiz mumkin. Tarqatmalarning ba'zilari CDFga analitik inversga ega emas va shuning uchun ularni tegishli algoritm orqali raqamli ravishda taxmin qilish kerak bo'ladi. Ushbu hisoblash tegishli meros bo'lgan tarqatish sinfga kapsüllenir bo'ladi. Keyingi maqolalarda biz bunday algoritmlarni "ajratib qo'yamiz" va boshqa kodlarda qayta ishlatishga imkon beramiz.
    Bu erda StatisticalDistribution abstract base class uchun qisman sarlavha fayli (keyinchalik qo'shimcha taqsimotlarni qo'shamiz):
    #ifndef __STATISTICS_H
    #define __STATISTICS_H


    #include
    #include


    class StatisticalDistribution {
    public:
    StatisticalDistribution();
    virtual ~StatisticalDistribution();


    // Distribution functions
    virtual double pdf(const double& x) const = 0;
    virtual double cdf(const double& x) const = 0;


    // Inverse cumulative distribution functions (aka the quantile function)
    virtual double inv_cdf(const double& quantile) const = 0;

    // Descriptive stats
    virtual double mean() const = 0;
    virtual double var() const = 0;
    virtual double stdev() const = 0;


    // Obtain a sequence of random draws from this distribution
    virtual void random_draws(const std::vector& uniform_draws,
    std::vector& dist_draws) = 0;
    };


    #endif
    Biz ehtimollar zichligi funktsiyasi (pdf), to'plangan zichlik funktsiyasi (cdf), inverse cdf (inv_cdf), shuningdek mean, var (variance) va stdev (standart sapma) kabi tavsiflovchi statistika funktsiyalari uchun sof virtual usullarni aniqladik . Nihoyat bizda ochiq intervalda (0,1) bir xil tasodifiy o'zgaruvchilarning vektorini oladigan, so'ngra taqsimotdan chizilgan chizilgan bir xil uzunlik vektorini to'ldiradigan usul mavjud.
    Barcha usullar toza virtual bo'lgani uchun, biz faqat ushbu sinf uchun manba faylini juda sodda amalga oshirishimiz kerak, chunki biz shunchaki interfeysni ko'rsatmoqdamiz. Biroq muayyan sinfning konkret amalga oshirilishini koʻrmoqchimiz. Biz, ehtimol, miqdoriy moliya sohasida eng muhim taqsimotni, ya'ni standart normal taqsimotni ko'rib chiqamiz.

    Download 0.74 Mb.

    Do'stlaringiz bilan baham:
  • 1   2   3   4




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
    ma'muriyatiga murojaat qiling