{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "eb67f7a5", "metadata": {}, "outputs": [], "source": [ "# Imports\n", "\n", "from IPython.display import display, Markdown\n", "from scipy.stats import chi2_contingency\n", "from scipy.stats import t as t_test\n", "import numpy as np\n", "t_value = t_test.isf\n", "\n", "def _display_table(data_array, row_names=None, col_names=None):\n", " _row_num = len(data_array)\n", " _col_num = len(data_array[0])\n", " _rows = []\n", " for i in range(_row_num):\n", " row = f'| {row_names[i]} |'\n", " for j in range(_col_num):\n", " row += f' {data_array[i][j]:.1f} |'\n", " row += f' {sum(data_array[i]):.0f} |'\n", " _rows.append(row)\n", " _total_row = '| **Total** |'\n", " _col_tots = 0\n", " for i in range(_col_num):\n", " col_tot = 0\n", " for j in range(_row_num):\n", " col_tot += data_array[j][i]\n", " _col_tots += col_tot\n", " _total_row += f' **{col_tot:.0f}** |'\n", " _total_row += f' **{_col_tots:.0f}** |'\n", " display(Markdown(\n", " rf\"\"\"\n", "| | {' | '.join(col_names + ['Total'])} |\n", "{'|-'*(len(row_names) + 2)} |\n", "{'\\n'.join(_rows)}\n", "{_total_row}\n", "\"\"\"\n", "))\n", "\n" ] }, { "cell_type": "markdown", "id": "c0bee775", "metadata": {}, "source": [ "# Tværsnit\n", "\n", "Dette er et tværsnitstudie, da:\n", "\n", "- det giver et øjebliksbilledet (man ser på nuværende eksponering)\n", "- eksponering og udfald indhentes samtidig, dvs man kan ikke finde årsagssammenhæng\n", "- bruges til at beskrive bestanden af en given tilstand/ sygdom til et givent tidspunkt\n", "\n", "Fordele og ulemper:\n", "\n", "- hurtigt og billigt\n", "- meget sårbart, da man ikke kender årsagssammenhæng\n", "- hypotesegenererende\n", "- deskriptivt (ikke analytisk)" ] }, { "cell_type": "markdown", "id": "5a7b9dca", "metadata": {}, "source": [ "## Hyppigheds- og associationsmål\n", "\n", "Prævalens / Prævalensproportion (PP)\n", "\n", "$$\n", "PP = \\frac{antal\\ syge\\ på\\ et\\ givet\\ tidspunkt}{antal\\ personer\\ i\\ studiepopulationen\\ på\\ samme\\ tidspunkt}\n", "$$\n", "\n", "$$\n", "PPR = \\frac{PP_{eksponerede}}{PP_{ikke\\ eksponerede}}\n", "$$" ] }, { "cell_type": "code", "execution_count": 7, "id": "bdd4eb49", "metadata": {}, "outputs": [ { "data": { "text/markdown": [ "\n", "$PP_{eksponerede} = \\frac{33}{101} \\approx 32.67%$\\%\n", "\n", "$PP_{ikke\\ eksponerede} = \\frac{19}{90} \\approx 21.11%$\\%\n", "\n", "$PPR = \\frac{PP_{eksponerede}}{PP_{ikke\\ eksponerede}} = \\frac{0.3267}{0.2111} \\approx 154.77%$\\%\n", "\n", "Prævalensen er 54.77% højere blandt eksponerede i forhold til ikke-eksponerede.\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "syge_eksponerede = 33\n", "eksponerede_i_alt = 101\n", "\n", "syge_ikke_eksponerede = 19\n", "ikke_eksponerede_i_alt = 90\n", "\n", "\n", "################################\n", "pp_eksponerede = syge_eksponerede / eksponerede_i_alt\n", "pp_ikke_eksponerede = syge_ikke_eksponerede / ikke_eksponerede_i_alt\n", "ppr = pp_eksponerede / pp_ikke_eksponerede\n", "\n", "display(Markdown(\n", " rf\"\"\"\n", "$PP_{{eksponerede}} = \\frac{{{syge_eksponerede}}}{{{eksponerede_i_alt}}} \\approx {pp_eksponerede:.2%}$\\%\n", "\n", "$PP_{{ikke\\ eksponerede}} = \\frac{{{syge_ikke_eksponerede}}}{{{ikke_eksponerede_i_alt}}} \\approx {pp_ikke_eksponerede:.2%}$\\%\n", "\n", "$PPR = \\frac{{PP_{{eksponerede}}}}{{PP_{{ikke\\ eksponerede}}}} = \\frac{{{pp_eksponerede:.4f}}}{{{pp_ikke_eksponerede:.4f}}} \\approx {ppr:.2%}$\\%\n", "\n", "Prævalensen er {ppr-1:.2%} højere blandt eksponerede i forhold til ikke-eksponerede.\n", "\"\"\"\n", "))" ] }, { "cell_type": "code", "execution_count": null, "id": "5f8b2150", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "base", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.9" } }, "nbformat": 4, "nbformat_minor": 5 }