diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/.nojekyll @@ -0,0 +1 @@ + diff --git a/404.html b/404.html new file mode 100644 index 0000000..c66cf17 --- /dev/null +++ b/404.html @@ -0,0 +1,93 @@ + + +
+ + + + +YEAR: 2024 +COPYRIGHT HOLDER: Vilmantas Gegzna ++ +
Copyright (c) 2024 Vilmantas Gegzna
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+Patogumo funkcijos pasikliautiniesiems intervalams (PI) skaičiuoti.
+Apie klaidas, stringtis bei pageidaujamus tobulinimus praneškite svetainėje https://github.com/mokymai/pi/issues. Nurodykite jūsų naudojamą operacinę sistemą.
+Diegimas iš saugyklos, panašios į CRAN (rekomenduojama):
+
+repos <- c("https://mokymai.github.io/download/", getOption("repos"))
+install.packages("pi", repos = repos)
Diegti iš „GitHub“:
+
+if (!require(remotes)) install.packages("remotes")
+remotes::install_github("mokymai/pi", dependencies = TRUE)
Pastaba! Norint įsidiegti iš „GitHub“ sistemai „Windows“ reikia įrankių „RTools“.
+ci_binom.Rd
Dvireikšmio kintamojo mus dominančios reikšmės proporcijos pasikliautinojo
+intervalo (PI) skaičiavimo funkcija, kuri yra patobulintas
+DescTools::BinomCI()
variantas. Rezultatas – duomenų lentelė.
ci_binom(x, n, method = "modified wilson", conf.level = 0.95, ...)
Mus dominančių +arba mums palankių įvykių skaičius +arba mus dominančios grupės dydis.
Įvykių skaičius iš viso. / Imties dydis.
Kiti parametrai, kuriuos priima
+DescTools::BinomCI()
. Žiūrėti šios funkcijos dokumentaciją.
Pasikliovimo lygmuo. Numatytoji reikšmė – 0.95.
Rezultatas – duomenų lentelė, kurios stulpeliai:
est
(<dbl>
) – proporcijos įvertis,
lwr.ci
, upr.ci
(<dbl>
) – (lower CI, upper CI)
+apatinė ir viršutinė proporcijos pasikliautinojo intervalo ribos.
x
(<int>
) – Mus dominančių įvykių skaičius / Mus dominančios grupės dydis.
n
(<int>
) – Įvykių skaičius iš viso. / Imties dydis.
Ši funkcija naudojama taip pat, kaip DescTools::BinomCI()
, tik numatytasis
+metodas yra modifikuotasis Wilson metodas, o rezultatas – duomenų lentelė,
+o ne vektorius. Todėl, pvz., rezultatą galima braižyti naudojant
+ggplot2.
x <- 54 # mus dominančių įvykių skaičius
+n <- 80 # įvykių skaičius iš viso
+ci_binom(x = 54, n = 80)
+#> # A tibble: 1 × 5
+#> est lwr.ci upr.ci x n
+#> <dbl> <dbl> <dbl> <int> <int>
+#> 1 0.675 0.566 0.768 54 80
+
+# Simuliacija su skirtingais imties dydžiais
+ci_binom(x = 54, n = c(80, 100, 512))
+#> # A tibble: 3 × 5
+#> est lwr.ci upr.ci x n
+#> <dbl> <dbl> <dbl> <int> <int>
+#> 1 0.675 0.566 0.768 54 80
+#> 2 0.54 0.443 0.634 54 100
+#> 3 0.105 0.0817 0.135 54 512
+
+# PI skaičiavimas kiekvienai grupei atskirai
+y = c(23, 45)
+ci_binom(y, n = sum(y))
+#> # A tibble: 2 × 5
+#> est lwr.ci upr.ci x n
+#> <dbl> <dbl> <dbl> <int> <int>
+#> 1 0.338 0.237 0.457 23 68
+#> 2 0.662 0.543 0.763 45 68
+
+
+
ci_boot.Rd
Pasikliautinųjų intervalų (PI) skaičiavimas pasirinktu savirankos metodu
+(angl. statistical bootstrap). Funkcija ci_boot()
yra patobulintas
+DescTools::BootCI()
variantas. Rezultatas – duomenų lentelė.
ci_boot(.data, x, y = NULL, conf.level = 0.95, ...)
Duomenų lentelė.
Stulpelio pavadinimas (be kabučių).
Pasikliovimo lygmuo. Numatytoji reikšmė – 0.95.
Kiti parametrai, kuriuos priima DescTools::BootCI()
, tarp kurių:
FUN
– funkcija, kurios rezultatui skaičiuojami PI.
bci.method
– intervalų sudarymo metodai:
"perc"
– procentilių metodas,
"bca"
– koreguotasis procentilių metodas BCa
+(angl. bias-corrected and accelerated),
kiti.
R
– replikacijų (pakartojimų) skaičius.
+Įprastai turi būti tarp 1'000 ir 10'000.
Rezultatas – duomenų lentelė, su pasikliautinaisiais intervalais. +Stulpelių skaičius ir pavadinimai priklauso nuo funkcijos argumentų reikšmių +ir sugrupavimo:
Jei duomenų lentelė grupuotoji, pirmųjų stulpelių pavadinimai sutampa su +grupavimo kintamųjų pavadinimais.
Stulpelio pavadinimas, sutampantis su skaičiuojamos statistikos pavadinimu
+(argumento FUN
reikšme).
+Jame yra skaičiuojamos statistikos įvertis.
lwr.ci
, upr.ci
– (lower CI, upper CI) apatinė ir viršutinė
+pasikliautinojo intervalo ribos.
Ši funkcija naudojama panašiai, kaip DescTools::BootCI()
, bet:
pirmas argumentas yra duomenų lentelė;
argumentai x
(ir, jei reikia, y
) – stulpelių pavadinimai – nurodomi
+be kabučių;
funkcija reaguoja į dplyr::group_by()
, tad skaičiavimus gali atlikti
+pogrupiams;
rezultatas – duomenų lentelė. +Todėl rezultatą galima patogiai braižyti naudojant ggplot2.
data(iris, package = "datasets")
+head(iris)
+#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
+#> 1 5.1 3.5 1.4 0.2 setosa
+#> 2 4.9 3.0 1.4 0.2 setosa
+#> 3 4.7 3.2 1.3 0.2 setosa
+#> 4 4.6 3.1 1.5 0.2 setosa
+#> 5 5.0 3.6 1.4 0.2 setosa
+#> 6 5.4 3.9 1.7 0.4 setosa
+
+set.seed(1) # Atkartojamumui
+
+# Medianos PI iš 1000 pakartojimų,
+# BCa metodas
+ci_boot(iris, Petal.Length, FUN = median, R = 1000, bci.method = "bca")
+#> # A tibble: 1 × 3
+#> median lwr.ci upr.ci
+#> <dbl> <dbl> <dbl>
+#> 1 4.35 4 4.6
+
+# Naudojamas jungimo operatorius
+iris |>
+ ci_boot(Petal.Length, FUN = median, R = 1000, bci.method = "bca")
+#> # A tibble: 1 × 3
+#> median lwr.ci upr.ci
+#> <dbl> <dbl> <dbl>
+#> 1 4.35 4 4.55
+
+# PI skaičiavimas kiekvienai grupei atskirai
+iris |>
+ dplyr::group_by(Species) |>
+ ci_boot(Petal.Length, FUN = median, R = 1000, bci.method = "bca")
+#> # A tibble: 3 × 4
+#> Species median lwr.ci upr.ci
+#> <fct> <dbl> <dbl> <dbl>
+#> 1 setosa 1.5 1.4 1.5
+#> 2 versicolor 4.35 4.1 4.5
+#> 3 virginica 5.55 5.2 5.65
+
+# Medianos PI iš 1000 pakartojimų, procentilių metodas
+iris |>
+ dplyr::group_by(Species) |>
+ ci_boot(Petal.Length, FUN = median, R = 1000, bci.method = "perc")
+#> # A tibble: 3 × 4
+#> Species median lwr.ci upr.ci
+#> <fct> <dbl> <dbl> <dbl>
+#> 1 setosa 1.5 1.4 1.5
+#> 2 versicolor 4.35 4.1 4.5
+#> 3 virginica 5.55 5.3 5.7
+
+# PI skaičiavimas, nurodant funkcijos `median()`
+# argumentą `na.rm = TRUE`
+med_pi_gr <-
+ iris |>
+ dplyr::group_by(Species) |>
+ ci_boot(
+ Petal.Length,
+ FUN = median, na.rm = TRUE,
+ R = 1000, bci.method = "bca"
+ )
+med_pi_gr
+#> # A tibble: 3 × 4
+#> Species median lwr.ci upr.ci
+#> <fct> <dbl> <dbl> <dbl>
+#> 1 setosa 1.5 1.4 1.5
+#> 2 versicolor 4.35 4.1 4.5
+#> 3 virginica 5.55 5.2 5.65
+
+# Dviejų kintamųjų funkcijoms pavyzdys:
+# Spearman koreliacijos koeficientas
+# (method = "spearman" yra cor() argumentas)
+spearman_pi_gr <-
+ iris |>
+ dplyr::group_by(Species) |>
+ ci_boot(
+ Petal.Length, Petal.Width,
+ FUN = cor, method = "spearman",
+ R = 1000, bci.method = "bca"
+ )
+spearman_pi_gr
+#> # A tibble: 3 × 4
+#> Species cor lwr.ci upr.ci
+#> <fct> <dbl> <dbl> <dbl>
+#> 1 setosa 0.271 -0.0155 0.496
+#> 2 versicolor 0.787 0.617 0.877
+#> 3 virginica 0.363 0.0988 0.565
+
+# Dviejų kintamųjų funkcijoms pavyzdys:
+# Pearson koreliacijos koeficientas
+# (method = "pearson" yra cor() argumentas)
+pearson_pi_gr <-
+ iris |>
+ dplyr::group_by(Species) |>
+ ci_boot(
+ Petal.Length, Petal.Width,
+ FUN = cor, method = "pearson",
+ R = 1000, bci.method = "bca"
+ )
+pearson_pi_gr
+#> # A tibble: 3 × 4
+#> Species cor lwr.ci upr.ci
+#> <fct> <dbl> <dbl> <dbl>
+#> 1 setosa 0.332 0.0846 0.533
+#> 2 versicolor 0.787 0.664 0.866
+#> 3 virginica 0.322 0.107 0.497
+
+
ci_mean_t.Rd
Funkcija ci_mean_t()
skaičiuoja vidurkio pasikliautinajį intervalą (PI)
+pagal klasikinę formulę su t (Stjudento) koeficientu, kai duomenys
+pateikti duomenų lentelės pavidalu. Ši funkcija yra patobulinta
+DescTools::MeanCI()
, reaguojanti į dplyr::group_by()
, tad skaičiavimus
+gali atlikti ir pogrupiams. Rezultatas – duomenų lentelė.
ci_mean_t(.data, x, conf.level = 0.95, ...)
Duomenų lentelė.
Stulpelio pavadinimas (be kabučių).
Pasikliovimo lygmuo. Numatytoji reikšmė – 0.95.
Kiti parametrai, kuriuos priima DescTools::MeanCI()
.
+Žiūrėti šios funkcijos dokumentaciją.
Rezultatas – duomenų lentelė, kurioje yra šie stulpeliai:
(jei yra) grupavimo kintamųjų pavadinimai;
mean
(<dbl>
) – vidurkio įvertis;
lwr.ci
, upr.ci
(<dbl>
) – (lower CI, upper CI) apatinė ir viršutinė
+pasikliautinojo intervalo ribos.
# Pavyzdžiai
+data(npk, package = "datasets")
+head(npk)
+#> block N P K yield
+#> 1 1 0 1 1 49.5
+#> 2 1 1 1 0 62.8
+#> 3 1 0 0 0 46.8
+#> 4 1 1 0 1 57.0
+#> 5 2 1 0 0 59.8
+#> 6 2 1 1 1 58.5
+
+# Kintamojo `yield` vidurkio PI skaičiavimas
+ci_mean_t(npk, yield)
+#> # A tibble: 1 × 3
+#> mean lwr.ci upr.ci
+#> <dbl> <dbl> <dbl>
+#> 1 54.9 52.3 57.5
+
+# PI skaičiavimas naudojant jungimo operatorių
+npk |> ci_mean_t(yield)
+#> # A tibble: 1 × 3
+#> mean lwr.ci upr.ci
+#> <dbl> <dbl> <dbl>
+#> 1 54.9 52.3 57.5
+
+# PI skaičiavimas grupuojant pagal vieną kintamąjį
+npk |> dplyr::group_by(N) |> ci_mean_t(yield)
+#> # A tibble: 2 × 4
+#> N mean lwr.ci upr.ci
+#> <fct> <dbl> <dbl> <dbl>
+#> 1 0 52.1 48.6 55.5
+#> 2 1 57.7 54.0 61.4
+
+# PI skaičiavimas grupuojant pagal 3 kintamuosius
+npk |> dplyr::group_by(N, P, K) |> ci_mean_t(yield)
+#> # A tibble: 8 × 6
+#> N P K mean lwr.ci upr.ci
+#> <fct> <fct> <fct> <dbl> <dbl> <dbl>
+#> 1 0 1 1 50.5 44.6 56.4
+#> 2 1 1 0 57.9 44.3 71.5
+#> 3 0 0 0 51.4 40.0 62.9
+#> 4 1 0 1 54.7 44.2 65.1
+#> 5 1 0 0 63.8 51.1 76.4
+#> 6 1 1 1 54.4 41.9 66.8
+#> 7 0 0 1 52 38.0 66.0
+#> 8 0 1 0 54.3 31.0 77.7
+
+
ci_mean_t_stat.Rd
Funkcija ci_mean_t_stat()
skaičiuoja vidurkio pasikliautinajį intervalą (PI)
+pagal klasikinę formulę su t (Stjudento) koeficientu, kai duotos
+aprašomosios statistikos (vidurkis, standartinis nuokrypis, imties dydis).
+Naudinga, kai tokie dydžiai būna pateikti mokslinėje literatūroje.
ci_mean_t_stat(mean_, sd_, n, group = "", conf.level = 0.95)
Vektorius su kiekvienos grupės vidurkiais.
Vektorius su kiekvienos grupės standartiniu nuokrypiu.
Vektorius su kiekvienos grupės dydžiu.
Grupės pavadinimas.
+Numatytoji reikšmė – tuščia eilutė (""
).
Pasikliovimo lygmuo. Numatytoji reikšmė – 0.95.
Rezultatas – duomenų lentelė, su šiais stulpeliais:
group
(<fct>
) – grupės pavadinimas;
mean
(<dbl>
) – vidurkio įvertis;
lwr.ci
(<dbl>
) – apatinė vidurkio PI riba (lwr. atitinka „lower“);
upr.ci
(<dbl>
) – viršutinė vidurkio PI riba (upr. atitinka „upper“);
sd
(<dbl>
) – standartinis nuokrypis;
n
(<int>
) – imties/grupės dydis.
Skaičiavimai gali būti atlikti ir rezultatai pateikti daugiau nei vienai +grupei.
+Kiekvieno iš mean_
, sd_
, n
, group
ilgis (reikšmių skaičius) turi būti
+(a) arba vieną reikšmė,
+(b) arba sutapti su ilgiausiu šios argumentų grupės vektoriumi.
Dėl aiškumo išnagrinėkite pavyzdžius.
+# Pavyzdžiai
+
+# Nurodant argumentų pavadinimus:
+ci_mean_t_stat(mean_ = 362, sd_ = 35, n = 100)
+#> # A tibble: 1 × 6
+#> group mean lwr.ci upr.ci sd n
+#> <fct> <dbl> <dbl> <dbl> <dbl> <int>
+#> 1 "" 362 355. 369. 35 100
+
+# Nenurodant argumentų pavadinimų:
+ci_mean_t_stat(362, 35, 100)
+#> # A tibble: 1 × 6
+#> group mean lwr.ci upr.ci sd n
+#> <fct> <dbl> <dbl> <dbl> <dbl> <int>
+#> 1 "" 362 355. 369. 35 100
+
+
+# Skaičiavimai kelioms grupėms:
+vidurkis <- c(1, 2, 3)
+st_nuokrypis <- c(3, 2, 3)
+n <- c(50, 20, 40)
+grupe <- c("A", "B", "C")
+
+ci_mean_t_stat(vidurkis, st_nuokrypis, n, grupe)
+#> # A tibble: 3 × 6
+#> group mean lwr.ci upr.ci sd n
+#> <fct> <dbl> <dbl> <dbl> <dbl> <int>
+#> 1 A 1 0.147 1.85 3 50
+#> 2 B 2 1.06 2.94 2 20
+#> 3 C 3 2.04 3.96 3 40
+
+
+# Simuliacija su keliais imties dydžiais:
+ci_mean_t_stat(mean_ = 362, sd_ = 35, n = c(10, 50, 100, 1000))
+#> # A tibble: 4 × 6
+#> group mean lwr.ci upr.ci sd n
+#> <fct> <dbl> <dbl> <dbl> <dbl> <int>
+#> 1 "" 362 337. 387. 35 10
+#> 2 "" 362 352. 372. 35 50
+#> 3 "" 362 355. 369. 35 100
+#> 4 "" 362 360. 364. 35 1000
+
+
+# Jei norite, kad rodytų daugiau skaitmenų po kablelio:
+rez_pi <- ci_mean_t_stat(362, 35, 100)
+as.data.frame(rez_pi)
+#> group mean lwr.ci upr.ci sd n
+#> 1 362 355.0552 368.9448 35 100
+
+# Arba
+# View(rez_pi)
+
+
ci_multinom.Rd
Daugiareikšmio (k ≥ 3) kintamojo reikšmių proporcijų vienu metu skaičiuojamų
+pasikliautinųjų intervalų (PI) skaičiavimo funkcija, kuri yra patobulintas
+DescTools::MultinomCI()
variantas. Rezultatas – duomenų lentelė.
ci_multinom(
+ x,
+ method = "goodman",
+ conf.level = 0.95,
+ gr_colname = "group",
+ ...
+)
Vektorius su grupių dydžiais. +Geriausia, jei vektoriaus elementai turėtų prasmingu pavadinimus +(žiūrėti pavyzdžius).
Skaičiavimo metodas ("goodman"
, "sisonglaz"
, "cplus1"
+ir kiti variantai, aprašyti DescTools::MultinomCI()
dokumentacijoje).
Pasikliovimo lygmuo. Numatytoji reikšmė – 0.95.
Stulpelio pavadinimas (kabutėse), kuriame bus
+parašyti grupių pavadinimai. Numatytoji reikšmė yra "group"
.
Kiti parametrai, kuriuos priima DescTools::MultinomCI()
.
+Žiūrėti šios funkcijos dokumentaciją.
Rezultatas – duomenų lentelė, kurios stulpeliai:
group
arba kitas vartotojo pasirinktas pavadinimas stulpeliui su grupių
+pavadinimams, numatytoji reikšmė
+(<fct>
).
est
(<dbl>
) – proporcijos įvertis.
lwr.ci
, upr.ci
(<dbl>
) – (lower CI, upper CI) apatinė ir viršutinė
+proporcijos pasikliautinojo intervalo ribos.
x
(<int>
) – Grupės dydis.
n
(<int>
) – Įvykių skaičius iš viso. / Imties dydis.
Ši funkcija naudojama taip pat, kaip DescTools::MultinomCI()
, tik
+numatytasis metodas yra Goodman metodas, o rezultatas – duomenų lentelė,
+o ne vektorius.
+Todėl rezultatą galima patogiai braižyti naudojant ggplot2.
# Dažniai be pavadinimų
+ci_multinom(c(20, 35, 54))
+#> # A tibble: 3 × 6
+#> group est lwr.ci upr.ci x n
+#> <fct> <dbl> <dbl> <dbl> <int> <int>
+#> 1 1 0.183 0.111 0.287 20 109
+#> 2 2 0.321 0.225 0.435 35 109
+#> 3 3 0.495 0.384 0.607 54 109
+
+# Nurodytas skaičiavimo metodas
+ci_multinom(c(20, 35, 54), method = "goodman")
+#> # A tibble: 3 × 6
+#> group est lwr.ci upr.ci x n
+#> <fct> <dbl> <dbl> <dbl> <int> <int>
+#> 1 1 0.183 0.111 0.287 20 109
+#> 2 2 0.321 0.225 0.435 35 109
+#> 3 3 0.495 0.384 0.607 54 109
+
+# Dažniai su grupių pavadinimais
+x <- c("dideli" = 20, "vidutiniai" = 35, "maži" = 54)
+ci_multinom(x, method = "goodman")
+#> # A tibble: 3 × 6
+#> group est lwr.ci upr.ci x n
+#> <fct> <dbl> <dbl> <dbl> <int> <int>
+#> 1 dideli 0.183 0.111 0.287 20 109
+#> 2 vidutiniai 0.321 0.225 0.435 35 109
+#> 3 maži 0.495 0.384 0.607 54 109
+
+# Dažniai su grupių pavadinimais ir jungimo operatorius
+c("dideli" = 20, "vidutiniai" = 35, "maži" = 54) |>
+ ci_multinom()
+#> # A tibble: 3 × 6
+#> group est lwr.ci upr.ci x n
+#> <fct> <dbl> <dbl> <dbl> <int> <int>
+#> 1 dideli 0.183 0.111 0.287 20 109
+#> 2 vidutiniai 0.321 0.225 0.435 35 109
+#> 3 maži 0.495 0.384 0.607 54 109
+
+# Kitas metodas
+c("dideli" = 33, "vidutiniai" = 35, "maži" = 30) |>
+ ci_multinom(method = "sisonglaz")
+#> # A tibble: 3 × 6
+#> group est lwr.ci upr.ci x n
+#> <fct> <dbl> <dbl> <dbl> <int> <int>
+#> 1 dideli 0.337 0.235 0.447 33 98
+#> 2 vidutiniai 0.357 0.255 0.468 35 98
+#> 3 maži 0.306 0.204 0.417 30 98
+
+
+
+ All functions+ + |
+ |
---|---|
+ + | +Proporcijos PI: 2 grupės |
+
+ + | +Pasikliautinieji intervalai (PI) savirankos metodais |
+
+ + | +Vidurkio PI, suskaičiuotas pagal duomenis |
+
+ + | +Vidurkio PI, suskaičiuotas pagal aprašomąsias statistikas |
+
+ + | +Proporcijos PI: 3 ar daugiau grupių |
+