diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4634d78 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +template/*.pdf \ No newline at end of file diff --git a/template/image.jpeg b/template/image.jpeg new file mode 100644 index 0000000..83db8b8 Binary files /dev/null and b/template/image.jpeg differ diff --git a/template/main.typ b/template/main.typ new file mode 100644 index 0000000..f7b743c --- /dev/null +++ b/template/main.typ @@ -0,0 +1,207 @@ +#import "@local/ktu-paper:0.1.0": ( + //lab-report, setup-code, set-table-head-size, TableCellSize, + setup-page, setup-code, + ktu-table-of-contents, ktu-picture-list, ktu-table-list, + ktu-heading-page-normal, + ktu-table, + custom-ref, ref-no +) + +#show: setup-page.with() +#show: setup-code.with() + +#show math.equation: it => { + show regex("\d+\.\d+"): it => {show ".": {","+h(0pt)} + it} + it +} + +#ktu-heading-page-normal( + faculty: "Fakulteto pavadinimas", + title: "Rašto darbo pavadinimas", + subtitles: "Praktikos ataskaita / referatas ir pan. (įrašyti rašto darbo tipą)", + authors: ( + ("Vardenis Pavardenis", "Projekto autorius"), + ("Vardenis Pavardenis", "Vadovas"), + ), + place: "Kaunas", + year: datetime.today().year(), +) +#pagebreak() + +#ktu-table-of-contents() +#pagebreak() + +#ktu-picture-list() +#pagebreak() + +#ktu-table-list() +#pagebreak() + += Sąrašai + +Vienas sąrašas: + +#set enum(indent: 12pt) +1. Vienas; +2. Du; +3. Trys. + +Kitas sąrašas: + +#set list(indent: 12pt) +- Vienas; +- Du; +- Trys. + +#pagebreak() + += Skyrius + +== Poskyris + +=== Skyrelis + +... + +== Matematikos poskyris + +Skaitiniams tipams yra naudojamas histogramos. Histogramų binų (stulpelių) skaičius nustatomas formule: $1 + 3.22 dot log_10 n$, kur n -- imties dydis. + +Mūsų atveju, $n = 4908$, tada $"binų skaičius" approx 12.88 = 12$. + +== Tolydaus tipo atributai + +Šias apskaičiuotas charakteristikas pateikiame lentelėje: + +#{ +show table.cell: set text(size: 8pt) +[#figure( + ktu-table( + columns: (25mm, 13mm, 17mm, 20mm, auto, auto, auto, auto, auto, auto, 17mm), + align: (x, y) => if x == 0 or y == 0 { horizon + left } else { horizon + right }, + table.header([*Atributo pavadinimas*], [*Kiekis (eilučių skaičius)*], [*Trūkstamos reikšmės, %*], [*Kardinalumas*], [*Min reikšmė*], [*Max reikšmė*], [*1-asis kvartilis*], [*Mediana*], [*3-iasis kvartilis*], [*Vidurkis*], [*Standartinis nuokrypis*]), + [age], [5110], [0,0], [104], [0,08], [82,0], [25,0], [45,0], [61,0], [43,227], [22,613], + [avg_glucose_level], [5110], [0,0], [3979], [55,12], [271,74], [77,245], [91,885], [114,09], [106,148], [45,284], + [bmi], [5110], [3,933], [418], [10,3], [97,6], [23,5], [28,1], [33,1], [28,893], [7,854], + ), + caption: [ + Skaitinio tipo atributų statistinės charakteristikos + ], +) ] +} + +Įdomus pastebėjimas, kad amžiaus minimali reikšmė yra "0,080". Tai yra logiška, kadangi yra vaikų duomenų. Kitas pastebėjimas -- trūksta "bmi" duomenų 3,9% visų įrašų. Atributų kardinalumas yra aukštas, todėl juos tikrai galima laikyti tolydžiais. + + +Duomenų sklaidą yra patogu pavaizduoti ir stačiakampe diagrama: + +#figure( + image("image.jpeg", width: 70%), + caption: [ + Skaitinių atributų stačiakampė diagrama + ], +) + +Matome, kad "avg_glucose_level" ir "bmi" atributai turi gana daug išimčių. Tačiau čia reikia būti atsargiems, kadangi išimtys nustatomos kaip reikšmės už interkvartilinio intervalo. Patikrinkime ar šios vertės nėra įvedimo klaidos. + +Anot https://www.who.int/data/gho/indicator-metadata-registry/imr-details/2380, normalus gliukozės lygis nevalgius yra apie 70-100 mg/dL. Lyginant su mmol/L, tikėtina, kad "avg_glucose_level" yra matuojamas mg/dL. Tada matome, kad maksimali vertė 2,72 kartų didesnė už normą. + +Kūno masės indekso rodiklis apskaičiuojamas formule: $"BMI" = "svoris" / "ūgis" = "kg" / "m"^2$. Tikrinami maksimalią vertę darykime prielaidą, kad asmens ūgis = 1,6 m, tada svoris = $97 dot 1.6^2$ = 248,32 kg. + +== Duomenų problemų taisymas + +#lorem(70) + +#lorem(70) + +#lorem(70) + +Kažkas... $[Q_1 - 1.5 dot "IQR"; Q_3 + 1.5 dot "IQR"]$ intervale. + +#figure(```python +def main(): + print("Hello, world!") + +if __name__ == "__main__": + main() +```, caption: [ + Python kodas +]) + + +== Image grids + +#lorem(120) + +Paveikslėlius galima grupuoti į "grid" #custom-ref(, ) + +#figure(grid( + columns: 2, + gutter: 2mm, + image("image.jpeg", width: 100%), + image("image.jpeg", width: 100%), +), caption: [ + Paveikslėliai "grid'e" 1 +]) + +#figure(grid( + columns: 3, + gutter: 2mm, + image("image.jpeg", width: 100%), + image("image.jpeg", width: 100%), + image("image.jpeg", width: 100%), + image("image.jpeg", width: 100%), + image("image.jpeg", width: 100%), +), caption: [ + Paveikslėliai "grid'e" 2 +]) + +#pagebreak() + += Skyrius + +#lorem(160) Gauti skaičiai @table-1 tikrai dideli. + +#{ +show table.cell: set text(size: 8pt) +[#figure( + table( + columns: (33mm, 13mm, 17mm, 20mm, 13mm, 13mm, 13mm, 13mm, 13mm, 13mm, 17mm), + align: (x, y) => if x == 0 or y == 0 { horizon + left } else { horizon + right }, + + [*Atributo pavadinimas*], [*Kiekis (eilučių skaičius)*], [*Trūkstamos reikšmės, %*], [*Kardinalumas*], [*Min reikšmė*], [*Max reikšmė*], [*1-asis kvartilis*], [*Mediana*], [*3-iasis kvartilis*], [*Vidurkis*], [*Standartinis nuokrypis*], + [age], [4908], [0.0], [104], [0.08], [82.0], [25.0], [44.0], [60.0], [42.869], [22.556], + [hypertension], [4908], [0.0], [2], [0], [1], [0.0], [0.0], [0.0], [0.092], [0.289], + [heart_disease], [4908], [0.0], [2], [0], [1], [0.0], [0.0], [0.0], [0.05], [0.217], + [avg_glucose_level], [4908], [0.0], [3851], [55.12], [271.74], [77.0675], [91.68], [113.495], [105.297], [44.426], + [bmi], [4908], [0.0], [418], [10.3], [97.6], [23.5], [28.1], [33.1], [28.895], [7.854], + [stroke], [4908], [0.0], [2], [0], [1], [0.0], [0.0], [0.0], [0.043], [0.202], + ), + caption: [ + Lentelės pavadinimas + ], +) ] +} + +Kažkokia formulė apibrėžiama taip: + +$ + Z = (X - mu) / sigma +$ + +čia $X$ -- imtis, $mu$ -- imties vidurkis, $sigma$ -- imties standartinis nuokrypis. Fragmentas pateikiamas #ref-no() paveikslėlyje. + +#figure( + image("image.jpeg", width: 90%), + caption: [ + Paveikslėlio pavadinimas + ], +) + +#pagebreak() + += Išvados + +- Viską bandėme. +- Viskas pavyko.