[it,pl,tr] chore(i18n): sync translations

Sync translations with latest source changes.
Languages: Italian [it], Polish [pl], Turkish [tr]
update-translations
localizeflow[bot] 2 months ago
parent fc898aee9c
commit 503574287f

@ -12,8 +12,8 @@
"language_code": "it" "language_code": "it"
}, },
"1-Introduction/01-defining-data-science/notebook.ipynb": { "1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec", "original_hash": "8eb07e3d899aaba7ea9c9ec9b5aa2850",
"translation_date": "2026-02-27T10:57:28+00:00", "translation_date": "2026-07-17T21:23:31+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb", "source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "it" "language_code": "it"
}, },
@ -42,8 +42,8 @@
"language_code": "it" "language_code": "it"
}, },
"1-Introduction/03-defining-data/README.md": { "1-Introduction/03-defining-data/README.md": {
"original_hash": "12339119c0165da569a93ddba05f9339", "original_hash": "7217c6f9eb464d4ff4bae6c036ab53cb",
"translation_date": "2025-09-06T08:51:32+00:00", "translation_date": "2026-07-17T21:30:07+00:00",
"source_file": "1-Introduction/03-defining-data/README.md", "source_file": "1-Introduction/03-defining-data/README.md",
"language_code": "it" "language_code": "it"
}, },
@ -65,6 +65,12 @@
"source_file": "1-Introduction/04-stats-and-probability/assignment.md", "source_file": "1-Introduction/04-stats-and-probability/assignment.md",
"language_code": "it" "language_code": "it"
}, },
"1-Introduction/04-stats-and-probability/notebook.ipynb": {
"original_hash": "0c77e104b29c723287bf11b773fcc5d5",
"translation_date": "2026-07-17T21:24:36+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "it"
},
"1-Introduction/README.md": { "1-Introduction/README.md": {
"original_hash": "696a8474a01054281704cbfb09148949", "original_hash": "696a8474a01054281704cbfb09148949",
"translation_date": "2025-08-28T11:18:33+00:00", "translation_date": "2025-08-28T11:18:33+00:00",
@ -108,8 +114,8 @@
"language_code": "it" "language_code": "it"
}, },
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": { "2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38", "original_hash": "da97f98781c7cd271063f605fe8d71d0",
"translation_date": "2026-02-27T10:58:58+00:00", "translation_date": "2026-07-17T21:22:58+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb", "source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "it" "language_code": "it"
}, },
@ -192,14 +198,14 @@
"language_code": "it" "language_code": "it"
}, },
"3-Data-Visualization/13-meaningful-visualizations/solution/README.md": { "3-Data-Visualization/13-meaningful-visualizations/solution/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e", "original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2025-08-28T11:14:56+00:00", "translation_date": "2026-07-17T21:30:17+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md", "source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md",
"language_code": "it" "language_code": "it"
}, },
"3-Data-Visualization/13-meaningful-visualizations/starter/README.md": { "3-Data-Visualization/13-meaningful-visualizations/starter/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e", "original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2025-08-28T11:15:09+00:00", "translation_date": "2026-07-17T21:30:12+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md", "source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md",
"language_code": "it" "language_code": "it"
}, },

File diff suppressed because one or more lines are too long

@ -4,73 +4,76 @@
|:---:| |:---:|
|Definizione dei Dati - _Sketchnote di [@nitya](https://twitter.com/nitya)_ | |Definizione dei Dati - _Sketchnote di [@nitya](https://twitter.com/nitya)_ |
I dati sono fatti, informazioni, osservazioni e misurazioni utilizzati per fare scoperte e supportare decisioni informate. Un punto dati è una singola unità di dati all'interno di un dataset, che è una raccolta di punti dati. I dataset possono avere formati e strutture diversi e di solito dipendono dalla loro origine, ovvero da dove provengono i dati. Ad esempio, i guadagni mensili di un'azienda potrebbero essere in un foglio di calcolo, mentre i dati sulla frequenza cardiaca oraria di uno smartwatch potrebbero essere in formato [JSON](https://stackoverflow.com/a/383699). È comune per i data scientist lavorare con diversi tipi di dati all'interno di un dataset. I dati sono fatti, informazioni, osservazioni e misurazioni utilizzati per fare scoperte e supportare decisioni informate. Un punto dati è un'unità singola di dati all'interno di un dataset, che è una raccolta di punti dati. I dataset possono avere diversi formati e strutture, e solitamente dipenderanno dalla loro fonte, ovvero da dove provengono i dati. Per esempio, i guadagni mensili di un'azienda potrebbero essere in un foglio di calcolo mentre i dati sul battito cardiaco orario di uno smartwatch potrebbero essere in formato [JSON](https://stackoverflow.com/a/383699). È comune per i data scientist lavorare con diversi tipi di dati all'interno di un dataset.
Questa lezione si concentra sull'identificazione e la classificazione dei dati in base alle loro caratteristiche e alle loro fonti. Questa lezione si concentra sull'identificare e classificare i dati in base alle loro caratteristiche e alle loro fonti.
## [Quiz Pre-Lezione](https://ff-quizzes.netlify.app/en/ds/quiz/4) ## [Quiz Pre-Lezione](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## Come vengono Descritti i Dati
## Come vengono descritti i dati
### Dati Grezzi ### Dati Grezzi
I dati grezzi sono dati che provengono dalla loro fonte nel loro stato iniziale e non sono stati analizzati o organizzati. Per comprendere cosa sta accadendo in un dataset, è necessario organizzarli in un formato comprensibile sia per gli esseri umani che per la tecnologia che potrebbe essere utilizzata per analizzarli ulteriormente. La struttura di un dataset descrive come è organizzato e può essere classificata come strutturata, non strutturata e semi-strutturata. Questi tipi di struttura variano a seconda della fonte, ma rientrano comunque in queste tre categorie. I dati grezzi sono dati che provengono dalla loro fonte nel loro stato iniziale e non sono stati analizzati o organizzati. Per dare senso a quello che accade in un dataset, è necessario organizzarli in un formato comprensibile sia dagli esseri umani che dalla tecnologia che potrebbe essere usata per analizzarli ulteriormente. La struttura di un dataset descrive come è organizzato e può essere classificata come strutturata, non strutturata e semi-strutturata. Questi tipi di struttura variano a seconda della fonte ma alla fine rientrano in queste tre categorie.
### Dati Quantitativi ### Dati Quantitativi
I dati quantitativi sono osservazioni numeriche all'interno di un dataset e possono essere generalmente analizzati, misurati e utilizzati matematicamente. Alcuni esempi di dati quantitativi sono: la popolazione di un paese, l'altezza di una persona o i guadagni trimestrali di un'azienda. Con un'analisi aggiuntiva, i dati quantitativi potrebbero essere utilizzati per scoprire tendenze stagionali dell'Indice di Qualità dell'Aria (AQI) o stimare la probabilità di traffico nelle ore di punta in una tipica giornata lavorativa. I dati quantitativi sono osservazioni numeriche all'interno di un dataset e generalmente possono essere analizzati, misurati e usati matematicamente. Alcuni esempi di dati quantitativi sono: la popolazione di un paese, l'altezza di una persona o i guadagni trimestrali di un'azienda. Con un'analisi aggiuntiva, i dati quantitativi potrebbero essere usati per scoprire tendenze stagionali dell'Indice di Qualità dell'Aria (AQI) o stimare la probabilità del traffico nelle ore di punta in un normale giorno lavorativo.
### Dati Qualitativi ### Dati Qualitativi
I dati qualitativi, noti anche come dati categoriali, sono dati che non possono essere misurati oggettivamente come le osservazioni dei dati quantitativi. Generalmente si tratta di vari formati di dati soggettivi che catturano la qualità di qualcosa, come un prodotto o un processo. A volte, i dati qualitativi sono numerici ma non vengono utilizzati matematicamente, come numeri di telefono o timestamp. Alcuni esempi di dati qualitativi sono: commenti video, marca e modello di un'auto o il colore preferito dei tuoi amici più stretti. I dati qualitativi potrebbero essere utilizzati per comprendere quali prodotti piacciono di più ai consumatori o per identificare parole chiave popolari nei curriculum delle domande di lavoro. I dati qualitativi, noti anche come dati categorici, sono dati che non possono essere misurati oggettivamente come le osservazioni dei dati quantitativi. Sono generalmente varie forme di dati soggettivi che catturano la qualità di qualcosa, come un prodotto o un processo. A volte i dati qualitativi sono numerici e tipicamente non usati matematicamente, come numeri di telefono o timestamp. Alcuni esempi di dati qualitativi sono: commenti video, marca e modello di unauto o il colore preferito dei tuoi amici più stretti. I dati qualitativi potrebbero essere utilizzati per capire quali prodotti piacciono di più ai consumatori o per identificare parole chiave popolari nei curriculum per l'applicazione a un lavoro.
### Dati Strutturati ### Dati Strutturati
I dati strutturati sono dati organizzati in righe e colonne, dove ogni riga avrà lo stesso set di colonne. Le colonne rappresentano un valore di un particolare tipo e saranno identificate con un nome che descrive cosa rappresenta il valore, mentre le righe contengono i valori effettivi. Le colonne spesso hanno un insieme specifico di regole o restrizioni sui valori, per garantire che i valori rappresentino accuratamente la colonna. Ad esempio, immagina un foglio di calcolo di clienti in cui ogni riga deve avere un numero di telefono e i numeri di telefono non contengono caratteri alfabetici. Potrebbero esserci regole applicate alla colonna del numero di telefono per assicurarsi che non sia mai vuota e contenga solo numeri. I dati strutturati sono dati organizzati in righe e colonne, dove ogni riga ha lo stesso set di colonne. Le colonne rappresentano un valore di un tipo particolare e sono identificate da un nome che descrive cosa rappresenta il valore, mentre le righe contengono i valori effettivi. Le colonne spesso hanno un insieme specifico di regole o restrizioni sui valori, per assicurare che rappresentino accuratamente la colonna. Per esempio, immagina un foglio di calcolo dei clienti in cui ogni riga deve avere un numero di telefono e i numeri di telefono non contengono mai caratteri alfabetici. Potrebbero esserci regole applicate alla colonna del numero di telefono per garantire che non sia mai vuota e che contenga solo numeri.
Un vantaggio dei dati strutturati è che possono essere organizzati in modo tale da essere correlati ad altri dati strutturati. Tuttavia, poiché i dati sono progettati per essere organizzati in un modo specifico, apportare modifiche alla loro struttura generale può richiedere molto sforzo. Ad esempio, aggiungere una colonna email al foglio di calcolo dei clienti che non può essere vuota significa che dovrai capire come aggiungere questi valori alle righe esistenti dei clienti nel dataset. Un vantaggio dei dati strutturati è che possono essere organizzati in modo tale da poter essere correlati ad altri dati strutturati. Tuttavia, poiché i dati sono progettati per essere organizzati in un modo specifico, modificare la loro struttura complessiva può richiedere molto sforzo. Per esempio, aggiungere una colonna di email al foglio clienti che non può essere vuota significa che devi capire come aggiungere questi valori alle righe esistenti dei clienti nel dataset.
Esempi di dati strutturati: fogli di calcolo, database relazionali, numeri di telefono, estratti conto bancari. Esempi di dati strutturati: fogli di calcolo, database relazionali, numeri di telefono, estratti conto bancari
### Dati Non Strutturati ### Dati Non Strutturati
I dati non strutturati generalmente non possono essere categorizzati in righe o colonne e non contengono un formato o un insieme di regole da seguire. Poiché i dati non strutturati hanno meno restrizioni sulla loro struttura, è più facile aggiungere nuove informazioni rispetto a un dataset strutturato. Se un sensore che cattura dati sulla pressione barometrica ogni 2 minuti riceve un aggiornamento che ora gli consente di misurare e registrare la temperatura, non è necessario modificare i dati esistenti se sono non strutturati. Tuttavia, ciò potrebbe rendere più lungo il processo di analisi o indagine di questo tipo di dati. Ad esempio, uno scienziato che vuole trovare la temperatura media del mese precedente dai dati del sensore, ma scopre che il sensore ha registrato una "e" in alcuni dei suoi dati per indicare che era rotto invece di un numero tipico, il che significa che i dati sono incompleti. I dati non strutturati tipicamente non possono essere categorizzati in righe o colonne e non hanno un formato o un insieme di regole da seguire. Poiché i dati non strutturati hanno meno restrizioni sulla loro struttura, è più facile aggiungere nuove informazioni rispetto a un dataset strutturato. Se un sensore che cattura dati sulla pressione barometrica ogni 2 minuti viene aggiornato per misurare e registrare anche la temperatura, non è necessario modificare i dati esistenti se sono non strutturati. Tuttavia, ciò può rendere più lunga l'analisi o l'indagine su questo tipo di dati. Per esempio, uno scienziato che vuole trovare la temperatura media del mese precedente dai dati del sensore ma scopre che il sensore ha registrato una "e" in alcuni valori per indicare che era rotto invece di un numero tipico, il che significa che i dati sono incompleti.
Esempi di dati non strutturati: file di testo, messaggi di testo, file video. Esempi di dati non strutturati: file di testo, messaggi di testo, file video
### Dati Semi-Strutturati ### Semi-strutturati
I dati semi-strutturati hanno caratteristiche che li rendono una combinazione di dati strutturati e non strutturati. Generalmente non seguono un formato di righe e colonne, ma sono organizzati in un modo considerato strutturato e possono seguire un formato fisso o un insieme di regole. La struttura varia tra le fonti, da una gerarchia ben definita a qualcosa di più flessibile che consente una facile integrazione di nuove informazioni. I metadati sono indicatori che aiutano a decidere come i dati sono organizzati e archiviati e avranno vari nomi, in base al tipo di dati. Alcuni nomi comuni per i metadati sono tag, elementi, entità e attributi. Ad esempio, un tipico messaggio email avrà un oggetto, un corpo e un insieme di destinatari e può essere organizzato in base a chi o quando è stato inviato. I dati semi-strutturati hanno caratteristiche che li rendono una combinazione di dati strutturati e non strutturati. Tipicamente non seguono un formato di righe e colonne ma sono organizzati in modo considerato strutturato e possono seguire un formato fisso o un insieme di regole. La struttura varia tra le fonti, da una gerarchia ben definita a qualcosa di più flessibile che permette unintegrazione facile di nuove informazioni. I metadati sono indicatori che aiutano a decidere come i dati sono organizzati e memorizzati e possono avere vari nomi, basati sul tipo di dati. Alcuni nomi comuni per i metadati sono tag, elementi, entità e attributi. Per esempio, un tipico messaggio email ha un soggetto, un corpo e un set di destinatari e può essere organizzato in base a chi o quando è stato inviato.
Esempi di dati semi-strutturati: HTML, file CSV, JavaScript Object Notation (JSON). Esempi di dati semi-strutturati: HTML, file CSV, JavaScript Object Notation (JSON)
## Fonti dei Dati ## Fonti di Dati
Una fonte di dati è il luogo iniziale in cui i dati sono stati generati o dove "vivono" e varia in base a come e quando sono stati raccolti. I dati generati dai loro utenti sono noti come dati primari, mentre i dati secondari provengono da una fonte che ha raccolto dati per uso generale. Ad esempio, un gruppo di scienziati che raccoglie osservazioni in una foresta pluviale sarebbe considerato primario e, se decidessero di condividerlo con altri scienziati, sarebbe considerato secondario per coloro che lo utilizzano. Una fonte di dati è la posizione iniziale in cui i dati sono stati generati o dove "risiedono" e varia in base a come e quando sono stati raccolti. I dati generati dagli utenti sono noti come dati primari, mentre i dati secondari provengono da una fonte che ha raccolto dati per uso generale. Per esempio, un gruppo di scienziati che raccoglie osservazioni in una foresta pluviale sarebbe considerato primaria e se decidono di condividerlo con altri scienziati sarebbe considerata secondaria per chi la usa.
I database sono una fonte comune e si basano su un sistema di gestione dei database per ospitare e mantenere i dati, dove gli utenti utilizzano comandi chiamati query per esplorare i dati. I file come fonti di dati possono essere file audio, immagini e video, così come fogli di calcolo come Excel. Le fonti internet sono un luogo comune per ospitare dati, dove si possono trovare sia database che file. Le interfacce di programmazione delle applicazioni, note anche come API, consentono ai programmatori di creare modi per condividere dati con utenti esterni tramite internet, mentre il processo di web scraping estrae dati da una pagina web. Le [lezioni su Lavorare con i Dati](../../../../../../../../../2-Working-With-Data) si concentrano su come utilizzare varie fonti di dati. I database sono una fonte comune e si basano su un sistema di gestione del database per ospitare e mantenere i dati, dove gli utenti usano comandi chiamati query per esplorare i dati. I file come fonti di dati possono essere file audio, immagine e video così come fogli di calcolo come Excel. Le fonti internet sono un luogo comune per ospitare dati, dove possono essere trovati database e file. Le Application Programming Interfaces, note anche come API, permettono ai programmatori di creare modi per condividere dati con utenti esterni attraverso internet, mentre il processo di web scraping estrae dati da una pagina web. Le [lezioni in Working with Data](../../../../../../../../../2-Working-With-Data) si concentrano su come usare varie fonti di dati.
## Conclusione ## Conclusione
In questa lezione abbiamo imparato: In questa lezione abbiamo imparato:
- Cosa sono i dati - Che cosa sono i dati
- Come vengono descritti i dati - Come vengono descritti i dati
- Come i dati vengono classificati e categorizzati - Come i dati sono classificati e categorizzati
- Dove possono essere trovati i dati - Dove si possono trovare i dati
## 🚀 Sfida ## 🚀 Sfida
Kaggle è un'ottima fonte di dataset aperti. Usa lo [strumento di ricerca dei dataset](https://www.kaggle.com/datasets) per trovare alcuni dataset interessanti e classifica 3-5 dataset con questi criteri: Kaggle è un'ottima fonte di dataset aperti. Usa il [dataset search tool](https://www.kaggle.com/datasets) per trovare alcuni dataset interessanti e classifica 3-5 dataset con questi criteri:
- I dati sono quantitativi o qualitativi? - I dati sono quantitativi o qualitativi?
- I dati sono strutturati, non strutturati o semi-strutturati? - I dati sono strutturati, non strutturati o semi-strutturati?
## [Quiz Post-Lezione](https://ff-quizzes.netlify.app/en/ds/quiz/5) ## [Quiz Post-Lezione](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## Revisione & Studio Autonomo ## Revisione & Studio Autonomo
- Questa unità di Microsoft Learn, intitolata [Classifica i tuoi Dati](https://docs.microsoft.com/en-us/learn/modules/choose-storage-approach-in-azure/2-classify-data) offre una spiegazione dettagliata dei dati strutturati, semi-strutturati e non strutturati. - Questa unità Microsoft Learn, intitolata [Identificare i formati di dati](https://learn.microsoft.com/en-us/training/modules/explore-core-data-concepts/2-data-formats?pivots=text) offre una dettagliata suddivisione di dati strutturati, semi-strutturati e non strutturati.
## Compito ## Compito
[Classificazione dei Dataset](assignment.md) [Classificare i Dataset](assignment.md)
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Disclaimer**: **Disclaimer**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un traduttore umano. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall'uso di questa traduzione. Questo documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire la precisione, si prega di notare che le traduzioni automatizzate possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un essere umano. Non siamo responsabili per eventuali malintesi o interpretazioni errate derivanti dalluso di questa traduzione.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -4,8 +4,8 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"# Introduzione a Probabilità e Statistica\n", "# Introduzione alla Probabilità e Statistica\n",
"In questo notebook, esploreremo alcuni dei concetti di cui abbiamo parlato in precedenza. Molti concetti di probabilità e statistica sono ben rappresentati nelle principali librerie per l'elaborazione dei dati in Python, come `numpy` e `pandas`.\n" "In questo notebook, giocheremo con alcuni dei concetti che abbiamo discusso in precedenza. Molti concetti di probabilità e statistica sono ben rappresentati nelle principali librerie per l'elaborazione dei dati in Python, come `numpy` e `pandas`.\n"
] ]
}, },
{ {
@ -25,7 +25,7 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Variabili Casuali e Distribuzioni\n", "## Variabili Casuali e Distribuzioni\n",
"Iniziamo estraendo un campione di 30 valori da una distribuzione uniforme da 0 a 9. Calcoleremo anche la media e la varianza.\n" "Iniziamo estraendo un campione di 30 valori da una distribuzione uniforme da 0 a 9. Calcoleremo anche media e varianza.\n"
] ]
}, },
{ {
@ -44,7 +44,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Per stimare visivamente quante diverse valori ci sono nel campione, possiamo tracciare l'**istogramma**:\n" "Per stimare visivamente quanti valori diversi ci sono nel campione, possiamo tracciare l'**istogramma**:\n"
] ]
}, },
{ {
@ -61,9 +61,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Analisi dei dati reali\n", "## Analisi di dati reali\n",
"\n", "\n",
"Media e varianza sono molto importanti quando si analizzano dati del mondo reale. Carichiamo i dati sui giocatori di baseball da [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights)\n" "Media e varianza sono molto importanti nell'analisi dei dati del mondo reale. Carichiamo i dati sui giocatori di baseball da [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights)\n"
] ]
}, },
{ {
@ -80,7 +80,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> Stiamo usando un pacchetto chiamato [**Pandas**](https://pandas.pydata.org/) per l'analisi dei dati. Parleremo più nel dettaglio di Pandas e di come lavorare con i dati in Python più avanti in questo corso.\n", "> Stiamo usando un pacchetto chiamato [**Pandas**](https://pandas.pydata.org/) qui per l'analisi dei dati. Parleremo più avanti di Pandas e di come lavorare con i dati in Python in questo corso.\n",
"\n", "\n",
"Calcoliamo i valori medi per età, altezza e peso:\n" "Calcoliamo i valori medi per età, altezza e peso:\n"
] ]
@ -98,7 +98,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Ora concentriamoci sull'altezza e calcoliamo la deviazione standard e la varianza:\n" "Ora concentriamoci sull'altezza e calcoliamo la deviazione standard e la varianza: \n"
] ]
}, },
{ {
@ -126,7 +126,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Oltre alla media, è sensato esaminare il valore mediano e i quartili. Possono essere visualizzati usando un **box plot**:\n" "Oltre alla media, ha senso guardare al valore mediano e ai quartili. Essi possono essere visualizzati usando un **diagramma a scatola**:\n"
] ]
}, },
{ {
@ -136,7 +136,7 @@
"outputs": [], "outputs": [],
"source": [ "source": [
"plt.figure(figsize=(10,2))\n", "plt.figure(figsize=(10,2))\n",
"plt.boxplot(df['Height'].ffill(), vert=False, showmeans=True)\n", "plt.boxplot(df['Height'].ffill(), orientation='horizontal', showmeans=True)\n",
"plt.grid(color='gray', linestyle='dotted')\n", "plt.grid(color='gray', linestyle='dotted')\n",
"plt.tight_layout()\n", "plt.tight_layout()\n",
"plt.show()" "plt.show()"
@ -146,7 +146,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Possiamo anche creare diagrammi a scatola di sottoinsiemi del nostro dataset, ad esempio, raggruppati per ruolo del giocatore.\n" "Possiamo anche creare box plot di sottoinsiemi del nostro set di dati, ad esempio, raggruppati per ruolo del giocatore.\n"
] ]
}, },
{ {
@ -165,7 +165,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> **Nota**: Questo diagramma suggerisce che, in media, l'altezza dei primi base è maggiore dell'altezza dei secondi base. Più avanti impareremo come possiamo testare questa ipotesi in modo più formale e come dimostrare che i nostri dati sono statisticamente significativi per mostrarlo. \n", "> **Nota**: Questo diagramma suggerisce che, in media, l'altezza dei prima base è maggiore di quella dei seconda base. Più avanti impareremo come possiamo testare formalmente questa ipotesi e come dimostrare che i nostri dati sono statisticamente significativi per mostrarlo. \n",
"\n", "\n",
"Età, altezza e peso sono tutte variabili casuali continue. Cosa pensi sia la loro distribuzione? Un buon modo per scoprirlo è tracciare l'istogramma dei valori: \n" "Età, altezza e peso sono tutte variabili casuali continue. Cosa pensi sia la loro distribuzione? Un buon modo per scoprirlo è tracciare l'istogramma dei valori: \n"
] ]
@ -231,7 +231,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Poiché la maggior parte dei valori nella vita reale segue una distribuzione normale, non dovremmo utilizzare un generatore di numeri casuali uniforme per generare dati campione. Ecco cosa succede se proviamo a generare pesi con una distribuzione uniforme (generata da `np.random.rand`):\n" "Poiché la maggior parte dei valori nella vita reale è distribuita normalmente, non dovremmo usare un generatore di numeri casuali uniformi per generare dati di esempio. Ecco cosa succede se proviamo a generare pesi con una distribuzione uniforme (generata da `np.random.rand`):\n"
] ]
}, },
{ {
@ -251,7 +251,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Intervalli di confidenza\n", "## Intervalli di Confidenza\n",
"\n", "\n",
"Calcoliamo ora gli intervalli di confidenza per i pesi e le altezze dei giocatori di baseball. Useremo il codice [da questa discussione su stackoverflow](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data):\n" "Calcoliamo ora gli intervalli di confidenza per i pesi e le altezze dei giocatori di baseball. Useremo il codice [da questa discussione su stackoverflow](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data):\n"
] ]
@ -272,7 +272,7 @@
" return m, h\n", " return m, h\n",
"\n", "\n",
"for p in [0.85, 0.9, 0.95]:\n", "for p in [0.85, 0.9, 0.95]:\n",
" m, h = mean_confidence_interval(df['Weight'].fillna(method='pad'),p)\n", " m, h = mean_confidence_interval(df['Weight'].ffill(),p)\n",
" print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")" " print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")"
] ]
}, },
@ -280,9 +280,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Test di Ipotesi\n", "## Test delle Ipotesi\n",
"\n", "\n",
"Esploriamo diversi ruoli nel nostro dataset di giocatori di baseball:\n" "Esploriamo i diversi ruoli nel nostro dataset dei giocatori di baseball:\n"
] ]
}, },
{ {
@ -298,7 +298,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Mettiamo alla prova l'ipotesi che i prima base siano più alti dei seconda base. Il modo più semplice per farlo è testare gli intervalli di confidenza:\n" "Verifichiamo l'ipotesi che i Prima Base siano più alti dei Secondi Base. Il modo più semplice per farlo è testare gli intervalli di confidenza:\n"
] ]
}, },
{ {
@ -339,8 +339,8 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"I due valori restituiti dalla funzione `ttest_ind` sono:\n", "I due valori restituiti dalla funzione `ttest_ind` sono:\n",
"* il p-value può essere considerato come la probabilità che due distribuzioni abbiano la stessa media. Nel nostro caso, è molto basso, il che significa che ci sono forti prove a supporto che i primi basi siano più alti.\n", "* il p-value può essere considerato come la probabilità che due distribuzioni abbiano la stessa media. Nel nostro caso, è molto basso, il che significa che ci sono forti prove a supporto del fatto che i prima base siano più alti.\n",
"* il t-value è il valore intermedio della differenza media normalizzata che viene utilizzato nel test t, ed è confrontato con un valore soglia per un dato livello di confidenza.\n" "* il valore t è il valore intermedio della differenza media normalizzata che viene utilizzato nel test t, ed è confrontato con un valore soglia per un dato livello di confidenza.\n"
] ]
}, },
{ {
@ -349,7 +349,7 @@
"source": [ "source": [
"## Simulazione di una Distribuzione Normale con il Teorema del Limite Centrale\n", "## Simulazione di una Distribuzione Normale con il Teorema del Limite Centrale\n",
"\n", "\n",
"Il generatore pseudo-casuale in Python è progettato per fornirci una distribuzione uniforme. Se vogliamo creare un generatore per una distribuzione normale, possiamo usare il teorema del limite centrale. Per ottenere un valore distribuito normalmente, calcoleremo semplicemente la media di un campione generato uniformemente.\n" "Il generatore pseudo-casuale in Python è progettato per fornire una distribuzione uniforme. Se vogliamo creare un generatore per la distribuzione normale, possiamo usare il teorema del limite centrale. Per ottenere un valore distribuito normalmente calcoleremo semplicemente la media di un campione generato uniformemente.\n"
] ]
}, },
{ {
@ -375,7 +375,7 @@
"source": [ "source": [
"## Correlazione e Evil Baseball Corp\n", "## Correlazione e Evil Baseball Corp\n",
"\n", "\n",
"La correlazione ci permette di trovare relazioni tra sequenze di dati. Nel nostro esempio giocattolo, immaginiamo che ci sia una cattiva corporazione di baseball che paga i suoi giocatori in base alla loro altezza - più il giocatore è alto, più soldi riceve. Supponiamo che ci sia uno stipendio base di $1000 e un bonus aggiuntivo da $0 a $100, a seconda dell'altezza. Prenderemo i giocatori reali della MLB e calcoleremo i loro stipendi immaginari:\n" "La correlazione ci permette di trovare relazioni tra sequenze di dati. Nel nostro esempio giocattolo, fingiamo che ci sia una malvagia corporazione di baseball che paga i suoi giocatori in base alla loro altezza - più alto è il giocatore, più soldi guadagna. Supponiamo ci sia un salario base di $1000, e un bonus aggiuntivo da $0 a $100, a seconda dell'altezza. Prenderemo i veri giocatori della MLB e calcoleremo i loro stipendi immaginari:\n"
] ]
}, },
{ {
@ -384,7 +384,7 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"heights = df['Height'].fillna(method='pad')\n", "heights = df['Height'].ffill()\n",
"salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n", "salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n",
"print(list(zip(heights, salaries))[:10])" "print(list(zip(heights, salaries))[:10])"
] ]
@ -393,7 +393,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Calcoliamo ora la covarianza e la correlazione di quelle sequenze. `np.cov` ci fornirà una cosiddetta **matrice di covarianza**, che è un'estensione della covarianza a variabili multiple. L'elemento $M_{ij}$ della matrice di covarianza $M$ è una correlazione tra le variabili di input $X_i$ e $X_j$, e i valori diagonali $M_{ii}$ sono la varianza di $X_{i}$. Analogamente, `np.corrcoef` ci fornirà la **matrice di correlazione**.\n" "Calcoliamo ora la covarianza e la correlazione di quelle sequenze. `np.cov` ci fornirà quella che si chiama **matrice di covarianza**, che è un'estensione della covarianza a più variabili. L'elemento $M_{ij}$ della matrice di covarianza $M$ è una correlazione tra le variabili di input $X_i$ e $X_j$, e i valori diagonali $M_{ii}$ sono la varianza di $X_{i}$. Analogamente, `np.corrcoef` ci darà la **matrice di correlazione**.\n"
] ]
}, },
{ {
@ -411,7 +411,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Una correlazione pari a 1 significa che esiste una forte **relazione lineare** tra due variabili. Possiamo vedere visivamente la relazione lineare tracciando un valore in funzione dell'altro:\n" "Una correlazione pari a 1 significa che c'è una forte **relazione lineare** tra due variabili. Possiamo vedere visivamente la relazione lineare tracciando un valore rispetto all'altro:\n"
] ]
}, },
{ {
@ -430,7 +430,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Vediamo cosa succede se la relazione non è lineare. Supponiamo che la nostra azienda abbia deciso di nascondere l'ovvia dipendenza lineare tra altezze e salari, e abbia introdotto una certa non linearità nella formula, come `sin`:\n" "Vediamo cosa succede se la relazione non è lineare. Supponiamo che la nostra azienda abbia deciso di nascondere l'evidente dipendenza lineare tra altezze e salari, e abbia introdotto una non linearità nella formula, come `sin`:\n"
] ]
}, },
{ {
@ -447,7 +447,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"In questo caso, la correlazione è leggermente inferiore, ma è ancora piuttosto alta. Ora, per rendere la relazione ancora meno evidente, potremmo voler aggiungere un po' di casualità extra aggiungendo una variabile casuale allo stipendio. Vediamo cosa succede:\n" "In questo caso, la correlazione è leggermente più piccola, ma è ancora piuttosto alta. Ora, per rendere la relazione ancora meno evidente, potremmo voler aggiungere un po' di casualità in più aggiungendo una variabile casuale allo stipendio. Vediamo cosa succede:\n"
] ]
}, },
{ {
@ -478,7 +478,7 @@
"source": [ "source": [
"> Riesci a indovinare perché i punti si allineano in linee verticali in questo modo?\n", "> Riesci a indovinare perché i punti si allineano in linee verticali in questo modo?\n",
"\n", "\n",
"Abbiamo osservato la correlazione tra un concetto artificialmente creato come lo stipendio e la variabile osservata *altezza*. Vediamo anche se le due variabili osservate, come altezza e peso, sono correlate:\n" "Abbiamo osservato la correlazione tra un concetto artificialmente costruito come il salario e la variabile osservata *altezza*. Vediamo anche se le due variabili osservate, come altezza e peso, sono correlate:\n"
] ]
}, },
{ {
@ -494,11 +494,11 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Sfortunatamente, non abbiamo ottenuto alcun risultato - solo alcuni strani valori `nan`. Ciò è dovuto al fatto che alcuni dei valori nella nostra serie non sono definiti, rappresentati come `nan`, il che causa che il risultato dell'operazione sia indefinito altrettanto. Osservando la matrice possiamo vedere che `Weight` è la colonna problematica, perché è stata calcolata l'auto-correlazione tra i valori di `Height`.\n", "Purtroppo, non abbiamo ottenuto nessun risultato - solo alcuni strani valori `nan`. Questo perché alcuni valori nella nostra serie sono indefiniti, rappresentati come `nan`, il che causa che il risultato dell'operazione sia indefinito a sua volta. Osservando la matrice possiamo vedere che `Weight` è la colonna problematica, perché è stata calcolata l'autocorrelazione tra i valori di `Height`.\n",
"\n", "\n",
"> Questo esempio mostra l'importanza della **preparazione** e **pulizia** dei dati. Senza dati adeguati non possiamo calcolare nulla.\n", "> Questo esempio mostra l'importanza della **preparazione** e della **pulizia** dei dati. Senza dati adeguati non possiamo calcolare nulla.\n",
"\n", "\n",
"Usiamo il metodo `fillna` per riempire i valori mancanti e calcoliamo la correlazione: \n" "Usiamo il metodo `fillna` per riempire i valori mancanti e calcolare la correlazione:\n"
] ]
}, },
{ {
@ -507,14 +507,14 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"np.corrcoef(df['Height'].fillna(method='pad'), df['Weight'])" "np.corrcoef(df['Height'].ffill(), df['Weight'])"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"C'è infatti una correlazione, ma non così forte come nel nostro esempio artificiale. Infatti, se guardiamo al grafico a dispersione di un valore in funzione dell'altro, la relazione sarebbe molto meno evidente:\n" "Esiste infatti una correlazione, ma non così forte come nel nostro esempio artificiale. Infatti, se guardiamo al diagramma di dispersione di un valore contro l'altro, la relazione sarebbe molto meno ovvia:\n"
] ]
}, },
{ {
@ -537,14 +537,14 @@
"source": [ "source": [
"## Conclusione\n", "## Conclusione\n",
"\n", "\n",
"In questo notebook abbiamo imparato come eseguire operazioni di base sui dati per calcolare funzioni statistiche. Ora sappiamo come utilizzare un solido apparato di matematica e statistica per dimostrare alcune ipotesi, e come calcolare intervalli di confidenza per variabili arbitrarie dato un campione di dati.\n" "In questo notebook abbiamo imparato come eseguire operazioni di base sui dati per calcolare funzioni statistiche. Ora sappiamo come utilizzare un solido apparato di matematica e statistica per dimostrare alcune ipotesi e come calcolare intervalli di confidenza per variabili arbitrarie dato un campione di dati. \n"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Disclaimer**: \nQuesto documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo a garantire laccuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un traduttore umano. Non siamo responsabili per eventuali fraintendimenti o interpretazioni errate derivanti dalluso di questa traduzione.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n" "---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Disclaimer**:\nQuesto documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire la precisione, si prega di notare che le traduzioni automatizzate possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un essere umano. Non siamo responsabili per eventuali malintesi o interpretazioni errate derivanti dalluso di questa traduzione.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
] ]
} }
], ],
@ -568,12 +568,6 @@
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.9.6" "version": "3.9.6"
},
"coopTranslator": {
"original_hash": "0f899e3c5019f948e7c787b22f3b2304",
"translation_date": "2026-01-16T13:49:37+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "it"
} }
}, },
"nbformat": 4, "nbformat": 4,

@ -4,11 +4,11 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"# Stima della pandemia di COVID-19\n", "# Stima della Pandemia di COVID-19\n",
"\n", "\n",
"## Caricamento dati\n", "## Caricamento Dati\n",
"\n", "\n",
"Utilizzeremo i dati sugli individui infetti da COVID-19, forniti dal [Center for Systems Science and Engineering](https://systems.jhu.edu/) (CSSE) presso la [Johns Hopkins University](https://jhu.edu/). Il dataset è disponibile in [questo repository GitHub](https://github.com/CSSEGISandData/COVID-19).\n" "Useremo dati sugli individui infettati da COVID-19, forniti dal [Center for Systems Science and Engineering](https://systems.jhu.edu/) (CSSE) presso la [Johns Hopkins University](https://jhu.edu/). Il dataset è disponibile in [questo Repository GitHub](https://github.com/CSSEGISandData/COVID-19).\n"
] ]
}, },
{ {
@ -48,7 +48,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Carichiamo ora i dati per le persone infette e vediamo come appaiono i dati:\n" "Carichiamo ora i dati per gli individui infetti e vediamo come appaiono i dati:\n"
] ]
}, },
{ {
@ -284,7 +284,7 @@
"source": [ "source": [
"## Dare un senso ai dati\n", "## Dare un senso ai dati\n",
"\n", "\n",
"Dal tavolo sopra il ruolo della colonna provincia non è chiaro. Vediamo i diversi valori presenti nella colonna `Province/State`:\n" "Dalla tabella sopra il ruolo della colonna della provincia non è chiaro. Vediamo i diversi valori presenti nella colonna `Province/State`:\n"
] ]
}, },
{ {
@ -1321,9 +1321,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Pre-processing the Data \n", "## Pre-elaborazione dei dati\n",
"\n", "\n",
"Non siamo interessati a suddividere i paesi in ulteriori territori, quindi elimineremo prima questa suddivisione e aggiungeremo le informazioni su tutti i territori insieme, per ottenere informazioni sull'intero paese. Questo può essere fatto usando `groupby`:\n" "Non siamo interessati a scomporre i paesi in ulteriori territori, quindi prima elimineremmo questa suddivisione e aggiungeremmo le informazioni di tutti i territori insieme, per ottenere informazioni sull'intero paese. Questo può essere fatto usando `groupby`:\n"
] ]
}, },
{ {
@ -1578,7 +1578,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Puoi vedere che, utilizzando `groupby`, tutti i DataFrame sono ora indicizzati per Paese/Regione. Possiamo quindi accedere ai dati per un paese specifico utilizzando `.loc`:|\n" "Come si può vedere, grazie allutilizzo di `groupby` tutti i DataFrame sono ora indicizzati per Paese/Regione. Possiamo quindi accedere ai dati di un paese specifico usando `.loc`:|\n"
] ]
}, },
{ {
@ -1607,7 +1607,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> **Nota** come usiamo `[3:]` per rimuovere i primi tre elementi di una sequenza che contengono metadata non di data (le colonne della Provincia/Stato e della geolocalizzazione). Possiamo anche eliminare completamente quelle tre colonne:\n" "> **Nota** come usiamo `[3:]` per rimuovere i primi tre elementi di una sequenza che contengono metadati non relativi alla data (le colonne Provincia/Stato e geolocalizzazione). Possiamo anche eliminare completamente quelle tre colonne:\n"
] ]
}, },
{ {
@ -1625,9 +1625,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Investigating the Data\n", "## Indagare sui Dati\n",
"\n", "\n",
"Passiamo ora a esaminare un paese specifico. Creiamo un frame che contenga i dati sulle infezioni indicizzati per data:\n" "Passiamo ora a indagare un paese specifico. Creiamo un frame che contenga i dati sulle infezioni indicizzati per data:\n"
] ]
}, },
{ {
@ -1793,7 +1793,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Calcoliamo ora il numero di nuove persone infette ogni giorno. Questo ci permetterà di vedere la velocità con cui la pandemia procede. Il modo più semplice per farlo è utilizzare `diff`:\n" "Calcoliamo ora il numero di nuove persone infette ogni giorno. Questo ci permetterà di vedere la velocità con cui la pandemia avanza. Il modo più semplice per farlo è usare `diff`:\n"
] ]
}, },
{ {
@ -1823,7 +1823,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Possiamo vedere forti fluttuazioni nei dati. Diamo un'occhiata più da vicino a uno dei mesi:\n" "Possiamo vedere grandi fluttuazioni nei dati. Diamo un'occhiata più da vicino a uno dei mesi:\n"
] ]
}, },
{ {
@ -1852,7 +1852,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"È chiaro che ci sono fluttuazioni settimanali nei dati. Poiché vogliamo essere in grado di vedere le tendenze, ha senso smussare la curva calcolando la media mobile (cioè per ogni giorno calcoleremo il valore medio dei giorni precedenti):\n" "È chiaro che ci sono fluttuazioni settimanali nei dati. Poiché vogliamo essere in grado di vedere le tendenze, ha senso smussare la curva calcolando la media mobile (cioè per ogni giorno calcoleremo il valore medio dei giorni precedenti): \n"
] ]
}, },
{ {
@ -1882,7 +1882,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Per poter confrontare diversi paesi, potremmo voler considerare la popolazione del paese e confrontare la percentuale di individui infetti rispetto alla popolazione del paese. Per ottenere la popolazione del paese, carichiamo il dataset dei paesi:\n" "Per poter confrontare diversi Paesi, potremmo voler considerare la popolazione del Paese e confrontare la percentuale di individui infetti rispetto alla popolazione del Paese. Per ottenere la popolazione del Paese, carichiamo il dataset dei Paesi:\n"
] ]
}, },
{ {
@ -2153,7 +2153,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Poiché questo set di dati contiene informazioni sia sui paesi che sulle province, per ottenere la popolazione dell'intero paese dobbiamo essere un po' più astuti:\n" "Poiché questo set di dati contiene informazioni sia sui paesi che sulle province, per ottenere la popolazione dell'intero paese dobbiamo essere un po' più astuti: \n"
] ]
}, },
{ {
@ -2261,14 +2261,15 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"\n",
"## Calcolo di $R_t$\n", "## Calcolo di $R_t$\n",
"\n", "\n",
"Per capire quanto sia contagiosa la malattia, esaminiamo il **numero di riproduzione di base** $R_0$, che indica il numero di persone che una persona infetta potrebbe infettare ulteriormente. Quando $R_0$ è maggiore di 1, è probabile che l'epidemia si diffonda.\n", "Per capire quanto sia contagiosa la malattia, osserviamo il **numero di riproduzione di base** $R_0$, che indica il numero di persone che una persona infetta infetterebbe ulteriormente. Quando $R_0$ è maggiore di 1, l'epidemia tende a diffondersi.\n",
"\n", "\n",
"$R_0$ è una caratteristica della malattia stessa e non tiene conto di alcune misure protettive che le persone potrebbero adottare per rallentare la pandemia. Durante la progressione della pandemia, possiamo stimare il numero di riproduzione $R_t$ in un dato momento $t$. È stato dimostrato che questo numero può essere approssimativamente stimato prendendo una finestra di 8 giorni e calcolando $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n", "$R_0$ è una proprietà della malattia stessa e non tiene conto di alcune misure protettive che le persone possono adottare per rallentare la pandemia. Durante la progressione della pandemia, possiamo stimare il numero di riproduzione $R_t$ in un dato momento $t$. È stato dimostrato che questo numero può essere approssimativamente stimato prendendo una finestra di 8 giorni e calcolando $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"dove $I_t$ è il numero di nuovi individui infetti al giorno $t$.\n", "dove $I_t$ è il numero di individui appena infettati al giorno $t$.\n",
"\n", "\n",
"Calcoliamo $R_t$ per i nostri dati della pandemia. Per fare ciò, prenderemo una finestra mobile di 8 valori `ninfected` e applicheremo la funzione per calcolare il rapporto sopra:\n" "Calcoliamo $R_t$ per i nostri dati pandemici. Per farlo, prenderemo una finestra mobile di 8 valori `ninfected` e applicheremo la funzione per calcolare il rapporto sopra:\n"
] ]
}, },
{ {
@ -2298,9 +2299,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Puoi vedere che ci sono alcune lacune nel grafico. Queste possono essere causate da valori `NaN`, o dalla presenza di valori `inf` nel dataset. `inf` può essere causato da una divisione per 0, e `NaN` può indicare dati mancanti, o nessun dato disponibile per calcolare il risultato (come all'inizio del nostro frame, dove la finestra mobile di larghezza 8 non è ancora disponibile). Per rendere il grafico più bello, dobbiamo riempire quei valori usando le funzioni `replace` e `fillna`.\n", "Puoi vedere che ci sono alcune lacune nel grafico. Queste possono essere causate sia da `NaN`, sia dalla presenza di valori `inf` nel dataset. `inf` può essere causato da una divisione per 0, e `NaN` può indicare dati mancanti o nessun dato disponibile per calcolare il risultato (come all'inizio del nostro frame, dove la finestra mobile di larghezza 8 non è ancora disponibile). Per rendere il grafico più bello, dobbiamo riempire quei valori usando le funzioni `replace` e `fillna`.\n",
"\n", "\n",
"Osserviamo più da vicino l'inizio della pandemia. Limiteremo anche i valori dell'asse y per mostrare solo valori inferiori a 6, per vedere meglio, e disegneremo una linea orizzontale a 1.\n" "Guardiamo più da vicino l'inizio della pandemia. Limiteremo anche i valori dell'asse y per mostrare solo valori inferiori a 6, in modo da vedere meglio, e disegneremo una linea orizzontale a 1.\n"
] ]
}, },
{ {
@ -2360,7 +2361,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Dato il fatto che ci sono molte fluttuazioni nei dati causate dalla segnalazione, ha senso lisciare la curva eseguendo una media mobile per ottenere una visione complessiva. Torniamo a concentrarci sui primi mesi della pandemia:\n" "Considerando il fatto che ci sono molte fluttuazioni nei dati causate dalla segnalazione, ha senso lisciare la curva eseguendo una media mobile per ottenere un quadro generale. Concentriamoci di nuovo sui primi mesi della pandemia:\n"
] ]
}, },
{ {
@ -2390,14 +2391,15 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"\n",
"## Sfida\n", "## Sfida\n",
"\n", "\n",
"Ora è il momento di giocare di più con il codice e i dati! Ecco alcuni suggerimenti con cui puoi sperimentare:\n", "Ora è il momento di giocare di più con il codice e i dati! Ecco alcuni suggerimenti con cui puoi sperimentare:\n",
"* Vedere la diffusione della pandemia in diversi paesi.\n", "* Vedere la diffusione della pandemia in diversi paesi.\n",
"* Tracciare i grafici di $R_t$ per diversi paesi in un unico grafico per confronto, o creare più grafici affiancati.\n", "* Tracciare grafici di $R_t$ per diversi paesi in un unico grafico per confronto, oppure creare più grafici affiancati.\n",
"* Vedere come il numero di decessi e guarigioni si correla con il numero di casi infetti.\n", "* Vedere come il numero di morti e di guarigioni si correlano con il numero di casi infetti.\n",
"* Cercare di scoprire quanto dura tipicamente una malattia correlando visivamente il tasso di infezione e il tasso di mortalità e cercando alcune anomalie. Potrebbe essere necessario osservare diversi paesi per scoprirlo.\n", "* Provare a scoprire quanto dura tipicamente una malattia correlando visivamente il tasso di infezione e il tasso di mortalità e cercando alcune anomalie. Potrebbe essere necessario guardare diversi paesi per scoprirlo.\n",
"* Calcolare il tasso di mortalità e come cambia nel tempo. Potresti voler considerare la durata della malattia in giorni per spostare una serie temporale prima di fare i calcoli.\n" "* Calcolare il tasso di mortalità e come cambia nel tempo. Potresti voler tenere conto della durata della malattia in giorni per spostare una serie temporale prima di fare i calcoli.\n"
] ]
}, },
{ {
@ -2406,10 +2408,10 @@
"source": [ "source": [
"## Riferimenti\n", "## Riferimenti\n",
"\n", "\n",
"Puoi consultare ulteriori studi sulla diffusione dell'epidemia COVID nelle seguenti pubblicazioni:\n", "Potete consultare ulteriori studi sulla diffusione dell'epidemia di COVID nelle seguenti pubblicazioni:\n",
"* [Modello SIR Scorrevole per la Stima di Rt durante la Pandemia COVID](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/), post sul blog di [Dmitry Soshnikov](http://soshnikov.com)\n", "* [Sliding SIR Model for Rt Estimation during COVID Pandemic](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/), post del blog di [Dmitry Soshnikov](http://soshnikov.com)\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [Stima del Numero di Riproduzione Dipendente dal Tempo per l'Outbreak Globale COVID-19](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n", "* T.Petrova, D.Soshnikov, A.Grunin. [Estimation of Time-Dependent Reproduction Number for Global COVID-19 Outbreak](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [Codice per il documento sopra su GitHub](https://github.com/shwars/SlidingSIR)\n" "* [Codice per il suddetto articolo su GitHub](https://github.com/shwars/SlidingSIR)\n"
] ]
}, },
{ {
@ -2423,7 +2425,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Disclaimer**: \nQuesto documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Pur impegnandoci per laccuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o inesattezze. Il documento originale nella sua lingua originale deve essere considerato la fonte autorevole. Per informazioni critiche si raccomanda la traduzione professionale effettuata da un essere umano. Non ci assumiamo responsabili per eventuali malintesi o interpretazioni errate derivanti dalluso di questa traduzione.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n" "---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Disclaimer**:\nQuesto documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire la precisione, si prega di notare che le traduzioni automatizzate possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un essere umano. Non siamo responsabili per eventuali malintesi o interpretazioni errate derivanti dalluso di questa traduzione.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
] ]
} }
], ],

@ -1,31 +1,33 @@
# Progetto di visualizzazione dati Dangerous Liaisons # Progetto di visualizzazione dati Dangerous Liaisons
Per iniziare, assicurati di avere NPM e Node installati e funzionanti sulla tua macchina. Installa le dipendenze (npm install) e poi esegui il progetto localmente (npm run serve): Per iniziare, assicurati di avere NPM e Node **>=20.0.0** in esecuzione sulla tua macchina. Installa le dipendenze (npm install) e poi esegui il progetto in locale (npm run serve):
## Configurazione del progetto ## Configurazione del progetto
``` ```
npm install npm install
``` ```
### Compilazione e ricaricamento automatico per lo sviluppo ### Compila e ricarica a caldo per lo sviluppo
``` ```
npm run serve npm run serve
``` ```
### Compilazione e minimizzazione per la produzione ### Compila e minimizza per la produzione
``` ```
npm run build npm run build
``` ```
### Analisi e correzione dei file ### Effettua il lint e corregge i file
``` ```
npm run lint npm run lint
``` ```
### Personalizza la configurazione ### Personalizza la configurazione
Consulta [Configuration Reference](https://cli.vuejs.org/config/). Vedi [Configuration Reference](https://cli.vuejs.org/config/).
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Disclaimer**: **Disclaimer**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si consiglia una traduzione professionale eseguita da un traduttore umano. Non siamo responsabili per eventuali fraintendimenti o interpretazioni errate derivanti dall'uso di questa traduzione. Questo documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire la precisione, si prega di notare che le traduzioni automatizzate possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un essere umano. Non siamo responsabili per eventuali malintesi o interpretazioni errate derivanti dalluso di questa traduzione.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,31 +1,33 @@
# Progetto di visualizzazione dati Dangerous Liaisons # Progetto di visualizzazione dati Relazioni Pericolose
Per iniziare, assicurati di avere NPM e Node installati e funzionanti sulla tua macchina. Installa le dipendenze (npm install) e poi esegui il progetto localmente (npm run serve): Per iniziare, è necessario assicurarsi di avere NPM e Node **>=20.0.0** in esecuzione sulla tua macchina. Installa le dipendenze (npm install) e quindi esegui il progetto localmente (npm run serve):
## Configurazione del progetto ## Configurazione del progetto
``` ```
npm install npm install
``` ```
### Compilazione e ricaricamento automatico per lo sviluppo ### Compila e ricarica a caldo per lo sviluppo
``` ```
npm run serve npm run serve
``` ```
### Compilazione e minimizzazione per la produzione ### Compila e comprime per la produzione
``` ```
npm run build npm run build
``` ```
### Analisi e correzione dei file ### Controlla e corregge i file
``` ```
npm run lint npm run lint
``` ```
### Personalizza la configurazione ### Personalizza la configurazione
Consulta [Configuration Reference](https://cli.vuejs.org/config/). Vedi [Configuration Reference](https://cli.vuejs.org/config/).
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Disclaimer**: **Disclaimer**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche potrebbero contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si consiglia una traduzione professionale eseguita da un traduttore umano. Non siamo responsabili per eventuali fraintendimenti o interpretazioni errate derivanti dall'uso di questa traduzione. Questo documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire la precisione, si prega di notare che le traduzioni automatizzate possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un essere umano. Non siamo responsabili per eventuali malintesi o interpretazioni errate derivanti dalluso di questa traduzione.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -12,8 +12,8 @@
"language_code": "pl" "language_code": "pl"
}, },
"1-Introduction/01-defining-data-science/notebook.ipynb": { "1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec", "original_hash": "8eb07e3d899aaba7ea9c9ec9b5aa2850",
"translation_date": "2026-02-27T10:59:45+00:00", "translation_date": "2026-07-17T21:26:04+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb", "source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "pl" "language_code": "pl"
}, },
@ -42,8 +42,8 @@
"language_code": "pl" "language_code": "pl"
}, },
"1-Introduction/03-defining-data/README.md": { "1-Introduction/03-defining-data/README.md": {
"original_hash": "12339119c0165da569a93ddba05f9339", "original_hash": "7217c6f9eb464d4ff4bae6c036ab53cb",
"translation_date": "2025-09-05T14:45:01+00:00", "translation_date": "2026-07-17T21:30:39+00:00",
"source_file": "1-Introduction/03-defining-data/README.md", "source_file": "1-Introduction/03-defining-data/README.md",
"language_code": "pl" "language_code": "pl"
}, },
@ -65,6 +65,12 @@
"source_file": "1-Introduction/04-stats-and-probability/assignment.md", "source_file": "1-Introduction/04-stats-and-probability/assignment.md",
"language_code": "pl" "language_code": "pl"
}, },
"1-Introduction/04-stats-and-probability/notebook.ipynb": {
"original_hash": "0c77e104b29c723287bf11b773fcc5d5",
"translation_date": "2026-07-17T21:27:08+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "pl"
},
"1-Introduction/README.md": { "1-Introduction/README.md": {
"original_hash": "696a8474a01054281704cbfb09148949", "original_hash": "696a8474a01054281704cbfb09148949",
"translation_date": "2025-08-24T21:15:18+00:00", "translation_date": "2025-08-24T21:15:18+00:00",
@ -108,8 +114,8 @@
"language_code": "pl" "language_code": "pl"
}, },
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": { "2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38", "original_hash": "da97f98781c7cd271063f605fe8d71d0",
"translation_date": "2026-02-27T11:01:19+00:00", "translation_date": "2026-07-17T21:25:29+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb", "source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "pl" "language_code": "pl"
}, },
@ -192,14 +198,14 @@
"language_code": "pl" "language_code": "pl"
}, },
"3-Data-Visualization/13-meaningful-visualizations/solution/README.md": { "3-Data-Visualization/13-meaningful-visualizations/solution/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e", "original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2025-08-24T22:34:44+00:00", "translation_date": "2026-07-17T21:30:46+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md", "source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md",
"language_code": "pl" "language_code": "pl"
}, },
"3-Data-Visualization/13-meaningful-visualizations/starter/README.md": { "3-Data-Visualization/13-meaningful-visualizations/starter/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e", "original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2025-08-24T22:34:13+00:00", "translation_date": "2026-07-17T21:30:42+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md", "source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md",
"language_code": "pl" "language_code": "pl"
}, },

File diff suppressed because one or more lines are too long

@ -1,75 +1,79 @@
# Definiowanie danych # Definiowanie danych
|![ Sketchnote by [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)| |![ Sketchnote autorstwa [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)|
|:---:| |:---:|
|Definiowanie danych - _Sketchnote by [@nitya](https://twitter.com/nitya)_ | |Definiowanie danych - _Sketchnote autorstwa [@nitya](https://twitter.com/nitya)_ |
Dane to fakty, informacje, obserwacje i pomiary, które są wykorzystywane do dokonywania odkryć i podejmowania świadomych decyzji. Punkt danych to pojedyncza jednostka danych w zbiorze danych, który jest kolekcją punktów danych. Zbiory danych mogą mieć różne formaty i struktury, zazwyczaj zależne od ich źródła, czyli miejsca, z którego pochodzą dane. Na przykład miesięczne dochody firmy mogą być zapisane w arkuszu kalkulacyjnym, ale dane dotyczące tętna z smartwatcha mogą być w formacie [JSON](https://stackoverflow.com/a/383699). Często zdarza się, że naukowcy zajmujący się danymi pracują z różnymi typami danych w jednym zbiorze danych. Dane to fakty, informacje, obserwacje i pomiary, które są używane do dokonywania odkryć i wspierania świadomych decyzji. Punkt danych to pojedyncza jednostka danych w zbiorze danych, który jest kolekcją punktów danych. Zbiory danych mogą występować w różnych formatach i strukturach, zwykle zależnie od ich źródła, czyli miejsca, z którego pochodzą dane. Na przykład miesięczne przychody firmy mogą być w arkuszu kalkulacyjnym, ale dane o częstości akcji serca co godzinę z zegarka mogą być w formacie [JSON](https://stackoverflow.com/a/383699). Często naukowcy danych pracują z różnymi typami danych w obrębie jednego zbioru danych.
Ta lekcja koncentruje się na identyfikacji i klasyfikacji danych na podstawie ich cech i źródeł. Ta lekcja skupia się na identyfikacji i klasyfikacji danych według ich cech i źródeł.
## [Quiz przed wykładem](https://ff-quizzes.netlify.app/en/ds/quiz/4) ## [Quiz przed wykładem](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## Jak opisuje się dane ## Jak opisujemy dane
### Surowe dane ### Surowe dane
Surowe dane to dane, które pochodzą bezpośrednio ze swojego źródła w pierwotnym stanie i nie zostały jeszcze przeanalizowane ani zorganizowane. Aby zrozumieć, co dzieje się w zbiorze danych, muszą one zostać zorganizowane w formacie, który będzie zrozumiały zarówno dla ludzi, jak i technologii, którą mogą wykorzystać do dalszej analizy. Struktura zbioru danych opisuje, jak jest on zorganizowany i może być sklasyfikowana jako strukturalna, niestrukturalna lub półstrukturalna. Te typy struktur będą się różnić w zależności od źródła, ale ostatecznie pasują do jednej z tych trzech kategorii. Surowe dane to dane, które pochodzą ze swojego źródła w stanie pierwotnym i nie zostały jeszcze przeanalizowane ani zorganizowane. Aby zrozumieć, co się dzieje ze zbiorem danych, musi on zostać zorganizowany w formacie zrozumiałym dla ludzi oraz technologii, które mogą służyć do dalszej analizy. Struktura zbioru danych opisuje, jak jest on zorganizowany i może być sklasyfikowana jako strukturalna, niestrukturalna oraz półstrukturalna. Te rodzaje struktur będą się różnić w zależności od źródła, ale ostatecznie mieszczą się w tych trzech kategoriach.
### Dane ilościowe ### Dane ilościowe
Dane ilościowe to obserwacje numeryczne w zbiorze danych, które można zazwyczaj analizować, mierzyć i wykorzystywać matematycznie. Przykłady danych ilościowych to: populacja kraju, wzrost osoby czy kwartalne dochody firmy. Przy dodatkowej analizie dane ilościowe mogą być używane do odkrywania sezonowych trendów wskaźnika jakości powietrza (AQI) lub szacowania prawdopodobieństwa korków w godzinach szczytu w typowy dzień pracy. Dane ilościowe to obserwacje numeryczne w zbiorze danych, które zazwyczaj mogą być analizowane, mierzone i wykorzystywane matematycznie. Przykładami danych ilościowych są: liczba ludności kraju, wzrost osoby lub kwartalne przychody firmy. Po dodatkowej analizie dane ilościowe mogą służyć do odkrywania sezonowych trendów Wskaźnika Jakości Powietrza (AQI) lub oszacowania prawdopodobieństwa wystąpienia korków w godzinach szczytu w zwykły dzień pracy.
### Dane jakościowe ### Dane jakościowe
Dane jakościowe, znane również jako dane kategoryczne, to dane, których nie można mierzyć obiektywnie, jak w przypadku obserwacji danych ilościowych. Zazwyczaj są to różne formaty danych subiektywnych, które uchwytują jakość czegoś, na przykład produktu lub procesu. Czasami dane jakościowe są numeryczne, ale nie są zazwyczaj wykorzystywane matematycznie, jak numery telefonów czy znaczniki czasu. Przykłady danych jakościowych to: komentarze wideo, marka i model samochodu czy ulubiony kolor najbliższych przyjaciół. Dane jakościowe mogą być używane do zrozumienia, które produkty konsumenci lubią najbardziej lub do identyfikacji popularnych słów kluczowych w życiorysach aplikacyjnych. Dane jakościowe, znane również jako dane kategoryczne, to dane, których nie da się obiektywnie zmierzyć, takich jak obserwacje danych ilościowych. Są to zazwyczaj różne formy subiektywnych danych, które odzwierciedlają jakość czegoś, np. produktu lub procesu. Czasami dane jakościowe mają formę liczbową, ale zwykle nie są wykorzystywane matematycznie, jak numery telefonów czy znaczniki czasu. Przykłady danych jakościowych to: komentarze wideo, marka i model samochodu lub ulubiony kolor najbliższych przyjaciół. Dane jakościowe mogą służyć do zrozumienia, które produkty konsumenci lubią najbardziej lub do identyfikacji popularnych słów kluczowych w życiorysach aplikacji o pracę.
### Dane strukturalne ### Dane strukturalne
Dane strukturalne to dane zorganizowane w wiersze i kolumny, gdzie każdy wiersz ma ten sam zestaw kolumn. Kolumny reprezentują wartość określonego typu i są identyfikowane nazwą opisującą, co dana wartość reprezentuje, podczas gdy wiersze zawierają rzeczywiste wartości. Kolumny często mają określony zestaw reguł lub ograniczeń dotyczących wartości, aby zapewnić, że wartości dokładnie reprezentują kolumnę. Na przykład wyobraź sobie arkusz kalkulacyjny klientów, gdzie każdy wiersz musi zawierać numer telefonu, a numery telefonów nigdy nie zawierają znaków alfabetycznych. Mogą być zastosowane reguły dotyczące kolumny numeru telefonu, aby upewnić się, że nigdy nie jest pusta i zawiera tylko liczby. Dane strukturalne to dane zorganizowane w wiersze i kolumny, gdzie każdy wiersz ma ten sam zestaw kolumn. Kolumny reprezentują wartość określonego typu i są oznaczone nazwą opisującą, co dana wartość reprezentuje, podczas gdy wiersze zawierają faktyczne wartości. Kolumny często mają określony zestaw zasad lub ograniczeń dotyczących wartości, aby upewnić się, że wartości dokładnie reprezentują kolumnę. Na przykład wyobraź sobie arkusz kalkulacyjny klientów, gdzie każdy wiersz musi mieć numer telefonu, a numery telefonów nigdy nie zawierają znaków alfabetycznych. W kolumnie z numerem telefonu mogą obowiązywać zasady, które zapewniają, że ta kolumna nigdy nie jest pusta i zawiera tylko cyfry.
Zaletą danych strukturalnych jest to, że mogą być zorganizowane w sposób umożliwiający ich powiązanie z innymi danymi strukturalnymi. Jednakże, ponieważ dane są zaprojektowane tak, aby były zorganizowane w określony sposób, wprowadzenie zmian w ich ogólnej strukturze może wymagać dużego wysiłku. Na przykład dodanie kolumny e-mail do arkusza kalkulacyjnego klientów, która nie może być pusta, oznacza, że trzeba będzie ustalić, jak dodać te wartości do istniejących wierszy klientów w zbiorze danych. Zaleta danych strukturalnych jest taka, że mogą być zorganizowane tak, aby można je było powiązać z innymi danymi strukturalnymi. Jednak ponieważ dane zaprojektowano tak, aby były zorganizowane w określony sposób, wprowadzanie zmian w ich ogólnej strukturze może wymagać dużego wysiłku. Na przykład dodanie kolumny z adresem e-mail do arkusza klientów, która nie może być pusta, oznacza, że trzeba będzie ustalić, jak dodać te wartości do istniejących wierszy klientów w zbiorze danych.
Przykłady danych strukturalnych: arkusze kalkulacyjne, relacyjne bazy danych, numery telefonów, wyciągi bankowe. Przykłady danych strukturalnych: arkusze kalkulacyjne, relacyjne bazy danych, numery telefonów, wyciągi bankowe
### Dane niestrukturalne ### Dane niestrukturalne
Dane niestrukturalne zazwyczaj nie mogą być kategoryzowane w wiersze lub kolumny i nie zawierają formatu ani zestawu reguł do przestrzegania. Ponieważ dane niestrukturalne mają mniej ograniczeń dotyczących swojej struktury, łatwiej jest dodawać nowe informacje w porównaniu do zbioru danych strukturalnych. Jeśli czujnik rejestrujący dane o ciśnieniu barometrycznym co 2 minuty otrzyma aktualizację, która pozwala mu mierzyć i rejestrować temperaturę, nie wymaga to zmiany istniejących danych, jeśli są one niestrukturalne. Jednakże, może to sprawić, że analiza lub badanie tego typu danych zajmie więcej czasu. Na przykład naukowiec, który chce znaleźć średnią temperaturę z poprzedniego miesiąca na podstawie danych z czujnika, ale odkrywa, że czujnik zarejestrował "e" w niektórych swoich danych, aby zaznaczyć, że był uszkodzony, zamiast typowej liczby, co oznacza, że dane są niekompletne. Dane niestrukturalne zazwyczaj nie mogą być skategoryzowane w wiersze lub kolumny i nie zawierają ustalonego formatu lub zestawu zasad do przestrzegania. Ponieważ dane niestrukturalne mają mniej ograniczeń dotyczących struktury, łatwiej jest do nich dodawać nowe informacje w porównaniu do zbioru danych strukturalnych. Jeśli czujnik mierzący ciśnienie barometryczne co 2 minuty otrzyma aktualizację pozwalającą na pomiar i rejestrację temperatury, nie wymaga to zmieniania istniejących danych, jeśli są one niestrukturalne. Jednak może to wydłużyć czas analizowania lub badania tego typu danych. Na przykład naukowiec, który chce znaleźć średnią temperaturę z poprzedniego miesiąca na podstawie danych z czujników, odkrywa, że czujnik w niektórych zapisanych danych zanotował „e”, oznaczając uszkodzenie zamiast typowej liczby, co oznacza, że dane są niepełne.
Przykłady danych niestrukturalnych: pliki tekstowe, wiadomości tekstowe, pliki wideo. Przykłady danych niestrukturalnych: pliki tekstowe, wiadomości tekstowe, pliki wideo
### Dane półstrukturalne ### Dane półstrukturalne
Dane półstrukturalne mają cechy, które sprawiają, że są kombinacją danych strukturalnych i niestrukturalnych. Zazwyczaj nie odpowiadają formatowi wierszy i kolumn, ale są zorganizowane w sposób uznawany za strukturalny i mogą przestrzegać ustalonego formatu lub zestawu reguł. Struktura będzie się różnić w zależności od źródła, od dobrze zdefiniowanej hierarchii po coś bardziej elastycznego, co pozwala na łatwą integrację nowych informacji. Metadane to wskaźniki, które pomagają zdecydować, jak dane są zorganizowane i przechowywane, i mają różne nazwy w zależności od rodzaju danych. Niektóre popularne nazwy metadanych to tagi, elementy, jednostki i atrybuty. Na przykład typowa wiadomość e-mail będzie miała temat, treść i zestaw odbiorców i może być zorganizowana według tego, kto ją wysłał lub kiedy została wysłana. Dane półstrukturalne mają cechy łączące dane strukturalne i niestrukturalne. Zazwyczaj nie odpowiadają formatowi wierszy i kolumn, ale są zorganizowane w sposób uznawany za strukturalny i mogą mieć ustalony format lub zestaw zasad. Struktura będzie się różnić w zależności od źródeł, od dobrze określonej hierarchii do czegoś bardziej elastycznego, co ułatwia integrację nowych informacji. Metadane to wskaźniki pomagające zadecydować, jak dane są organizowane i przechowywane, i mają różne nazwy w zależności od rodzaju danych. Najczęstsze nazwy metadanych to tagi, elementy, jednostki i atrybuty. Na przykład typowa wiadomość e-mail ma temat, treść i zestaw odbiorców i może być zorganizowana według tego, kto lub kiedy ją wysłał.
Przykłady danych półstrukturalnych: HTML, pliki CSV, JavaScript Object Notation (JSON). Przykłady danych półstrukturalnych: HTML, pliki CSV, JavaScript Object Notation (JSON)
## Źródła danych ## Źródła danych
Źródło danych to początkowe miejsce, w którym dane zostały wygenerowane lub gdzie "żyją" i będzie się różnić w zależności od tego, jak i kiedy zostały zebrane. Dane generowane przez użytkownika są znane jako dane pierwotne, podczas gdy dane wtórne pochodzą ze źródła, które zebrało dane do ogólnego użytku. Na przykład grupa naukowców zbierająca obserwacje w lesie deszczowym byłaby uznana za dane pierwotne, a jeśli zdecydują się je udostępnić innym naukowcom, byłyby uznane za dane wtórne dla tych, którzy je wykorzystują. Źródło danych to pierwotna lokalizacja, w której dane zostały wygenerowane lub gdzie „mieszkają”, i różni się w zależności od sposobu i czasu ich zebrania. Dane generowane przez użytkownika(-ów) są znane jako dane pierwotne, podczas gdy dane wtórne pochodzą ze źródła, które zebrało dane do użytku ogólnego. Na przykład grupa naukowców zbierająca obserwacje w lesie deszczowym byłaby uznana za źródło pierwotne, a jeśli zdecydują się udostępnić je innym naukowcom, dla tych ostatnich będzie to źródło wtórne.
Bazy danych są powszechnym źródłem i polegają na systemie zarządzania bazą danych, aby hostować i utrzymywać dane, gdzie użytkownicy używają poleceń zwanych zapytaniami do eksploracji danych. Pliki jako źródła danych mogą być plikami audio, obrazami, plikami wideo, a także arkuszami kalkulacyjnymi, takimi jak Excel. Źródła internetowe są powszechnym miejscem przechowywania danych, gdzie można znaleźć zarówno bazy danych, jak i pliki. Interfejsy programowania aplikacji, znane również jako API, pozwalają programistom tworzyć sposoby udostępniania danych użytkownikom zewnętrznym przez internet, podczas gdy proces web scrapingu wyodrębnia dane ze strony internetowej. [Lekcje w Praca z danymi](../../../../../../../../../2-Working-With-Data) koncentrują się na tym, jak korzystać z różnych źródeł danych. Bazy danych są powszechnym źródłem i opierają się na systemie zarządzania bazą danych do hostowania i utrzymywania danych, gdzie użytkownicy korzystają z poleceń zwanych zapytaniami, aby eksplorować dane. Pliki jako źródła danych mogą być plikami audio, obrazów, wideo, a także arkuszami kalkulacyjnymi, jak Excel. Źródła internetowe są powszechnym miejscem przechowywania danych, gdzie można znaleźć bazy danych i pliki. Interfejsy programistyczne aplikacji, znane jako API, pozwalają programistom tworzyć sposoby udostępniania danych zewnętrznym użytkownikom przez internet, podczas gdy proces web scrapingu wyodrębnia dane ze strony internetowej. [Lekcje z zakresu Pracy z danymi](../../../../../../../../../2-Working-With-Data) koncentrują się na tym, jak korzystać z różnych źródeł danych.
## Podsumowanie ## Podsumowanie
W tej lekcji dowiedzieliśmy się: Na tej lekcji dowiedzieliśmy się:
- Czym są dane - Czym są dane
- Jak opisuje się dane - Jak opisujemy dane
- Jak klasyfikuje się i kategoryzuje dane - Jak dane są klasyfikowane i kategoryzowane
- Gdzie można znaleźć dane - Gdzie można znaleźć dane
## 🚀 Wyzwanie ## 🚀 Wyzwanie
Kaggle to doskonałe źródło otwartych zbiorów danych. Skorzystaj z [narzędzia wyszukiwania zbiorów danych](https://www.kaggle.com/datasets), aby znaleźć kilka interesujących zbiorów danych i sklasyfikować 3-5 zbiorów danych według tych kryteriów: Kaggle to doskonałe źródło otwartych zbiorów danych. Użyj [narzędzia wyszukiwania zbiorów danych](https://www.kaggle.com/datasets), aby znaleźć ciekawe zbiory danych i sklasyfikuj 3-5 z nich według następujących kryteriów:
- Czy dane są ilościowe czy jakościowe? - Czy dane są ilościowe czy jakościowe?
- Czy dane są strukturalne, niestrukturalne czy półstrukturalne? - Czy dane są strukturalne, niestrukturalne czy półstrukturalne?
## [Quiz po wykładzie](https://ff-quizzes.netlify.app/en/ds/quiz/5) ## [Quiz po wykładzie](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## Przegląd i samodzielna nauka ## Przegląd i samodzielna nauka
- Ta jednostka Microsoft Learn, zatytułowana [Klasyfikowanie danych](https://docs.microsoft.com/en-us/learn/modules/choose-storage-approach-in-azure/2-classify-data), zawiera szczegółowy podział danych strukturalnych, półstrukturalnych i niestrukturalnych. - Ten moduł Microsoft Learn, zatytułowany [Identify data formats](https://learn.microsoft.com/en-us/training/modules/explore-core-data-concepts/2-data-formats?pivots=text), zawiera szczegółowe omówienie danych strukturalnych, półstrukturalnych oraz niestrukturalnych.
## Zadanie ## Zadanie
[Klasyfikowanie zbiorów danych](assignment.md) [Klasyfikacja zbiorów danych](assignment.md)
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Zastrzeżenie**: **Zastrzeżenie**:
Ten dokument został przetłumaczony za pomocą usługi tłumaczeniowej AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż dokładamy wszelkich starań, aby tłumaczenie było precyzyjne, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za wiarygodne źródło. W przypadku informacji krytycznych zaleca się skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia. Niniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Choć dążymy do dokładności, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego języku źródłowym należy uznawać za autorytatywne źródło. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -5,7 +5,7 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"# Wprowadzenie do prawdopodobieństwa i statystyki\n", "# Wprowadzenie do prawdopodobieństwa i statystyki\n",
"W tym notatniku pobawimy się niektórymi z koncepcji, które omawialiśmy wcześniej. Wiele koncepcji z prawdopodobieństwa i statystyki jest dobrze reprezentowanych w głównych bibliotekach do przetwarzania danych w Pythonie, takich jak `numpy` i `pandas`.\n" "W tym zeszycie poeksperymentujemy z niektórymi koncepcjami, o których wcześniej rozmawialiśmy. Wiele koncepcji z dziedziny prawdopodobieństwa i statystyki jest dobrze reprezentowanych w głównych bibliotekach do przetwarzania danych w Pythonie, takich jak `numpy` i `pandas`.\n"
] ]
}, },
{ {
@ -25,7 +25,7 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Zmienne losowe i rozkłady\n", "## Zmienne losowe i rozkłady\n",
"Zacznijmy od pobrania próbki 30 wartości z rozkładu jednostajnego od 0 do 9. Obliczymy również średnią i wariancję.\n" "Zacznijmy od wylosowania próbki 30 wartości z rozkładu jednostajnego od 0 do 9. Obliczymy również średnią i wariancję.\n"
] ]
}, },
{ {
@ -61,9 +61,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Analiza rzeczywistych danych\n", "## Analiza danych rzeczywistych\n",
"\n", "\n",
"Średnia i wariancja są bardzo ważne przy analizie danych ze świata rzeczywistego. Załadujmy dane o baseballistach z [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights)\n" "Średnia i wariancja są bardzo ważne przy analizie danych ze świata rzeczywistego. Załadujmy dane dotyczące graczy baseballu z [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights)\n"
] ]
}, },
{ {
@ -80,7 +80,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> Używamy tutaj pakietu o nazwie [**Pandas**](https://pandas.pydata.org/) do analizy danych. O Pandas i pracy z danymi w Pythonie porozmawiamy więcej później w tym kursie.\n", "> Używamy tutaj pakietu o nazwie [**Pandas**](https://pandas.pydata.org/) do analizy danych. Później w tym kursie omówimy więcej o Pandas i pracy z danymi w Pythonie.\n",
"\n", "\n",
"Obliczmy średnie wartości dla wieku, wzrostu i wagi:\n" "Obliczmy średnie wartości dla wieku, wzrostu i wagi:\n"
] ]
@ -98,7 +98,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Skoncentrujmy się teraz na wzroście i obliczmy odchylenie standardowe oraz wariancję:\n" "Skoncentrujmy się teraz na wzroście i obliczmy odchylenie standardowe oraz wariancję: \n"
] ]
}, },
{ {
@ -126,7 +126,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Oprócz średniej warto spojrzeć na medianę i kwartyle. Można je zwizualizować za pomocą **wykresu pudełkowego**:\n" "Oprócz średniej warto spojrzeć na wartość mediany i kwartyle. Można je zobrazować za pomocą **wykresu pudełkowego**:\n"
] ]
}, },
{ {
@ -136,7 +136,7 @@
"outputs": [], "outputs": [],
"source": [ "source": [
"plt.figure(figsize=(10,2))\n", "plt.figure(figsize=(10,2))\n",
"plt.boxplot(df['Height'].ffill(), vert=False, showmeans=True)\n", "plt.boxplot(df['Height'].ffill(), orientation='horizontal', showmeans=True)\n",
"plt.grid(color='gray', linestyle='dotted')\n", "plt.grid(color='gray', linestyle='dotted')\n",
"plt.tight_layout()\n", "plt.tight_layout()\n",
"plt.show()" "plt.show()"
@ -146,7 +146,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Możemy także tworzyć wykresy pudełkowe podzbiorów naszego zbioru danych, na przykład pogrupowanych według roli zawodnika.\n" "Możemy także tworzyć wykresy skrzynkowe dla podzbiorów naszego zestawu danych, na przykład pogrupowanych według roli gracza.\n"
] ]
}, },
{ {
@ -165,9 +165,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> **Uwaga**: Ten diagram sugeruje, że średnio wzrost pierwszych bazmanów jest wyższy niż wzrost drugich bazmanów. Później nauczymy się, jak bardziej formalnie przetestować tę hipotezę i jak wykazać, że nasze dane są statystycznie istotne, aby to udowodnić. \n", "> **Uwaga**: Ten diagram sugeruje, że przeciętnie wzrost pierwszych bazmanów jest wyższy niż wzrost drugich bazmanów. Później nauczymy się, jak formalniej przetestować tę hipotezę oraz jak wykazać, że nasze dane są statystycznie istotne, by to pokazać. \n",
"\n", "\n",
"Wiek, wzrost i waga to wszystkie ciągłe zmienne losowe. Jak myślisz, jaki mają rozkład? Dobrym sposobem, aby się tego dowiedzieć, jest wykreślenie histogramu wartości: \n" "Wiek, wzrost i waga to wszystkie ciągłe zmienne losowe. Jak myślisz, jaki jest ich rozkład? Dobrym sposobem, by się tego dowiedzieć, jest wykres histogramu wartości: \n"
] ]
}, },
{ {
@ -190,7 +190,7 @@
"source": [ "source": [
"## Rozkład normalny\n", "## Rozkład normalny\n",
"\n", "\n",
"Stwórzmy sztuczną próbkę wag, która będzie podążać za rozkładem normalnym o takim samym średnim i wariancji jak nasze rzeczywiste dane:\n" "Stwórzmy sztuczną próbkę wag, która podąża za rozkładem normalnym o takim samym średnim i wariancji jak nasze rzeczywiste dane:\n"
] ]
}, },
{ {
@ -231,7 +231,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Ponieważ większość wartości w rzeczywistym życiu jest rozłożona normalnie, nie powinniśmy używać generatora liczb losowych o rozkładzie jednostajnym do generowania danych próbki. Oto co się stanie, jeśli spróbujemy wygenerować wagi z rozkładem jednostajnym (wygenerowanym przez `np.random.rand`):\n" "Ponieważ większość wartości w rzeczywistym życiu jest rozłożona normalnie, nie powinniśmy używać generatora liczb losowych o rozkładzie jednostajnym do generowania danych próbnych. Oto co się dzieje, gdy próbujemy wygenerować wagi o rozkładzie jednostajnym (wygenerowane przez `np.random.rand`):\n"
] ]
}, },
{ {
@ -253,7 +253,7 @@
"source": [ "source": [
"## Przedziały ufności\n", "## Przedziały ufności\n",
"\n", "\n",
"Obliczmy teraz przedziały ufności dla wag i wzrostów zawodników baseballu. Użyjemy kodu [z tej dyskusji na stackoverflow](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data):\n" "Obliczmy teraz przedziały ufności dla wag i wzrostów baseballistów. Użyjemy kodu [z tej dyskusji na stackoverflow](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data):\n"
] ]
}, },
{ {
@ -272,7 +272,7 @@
" return m, h\n", " return m, h\n",
"\n", "\n",
"for p in [0.85, 0.9, 0.95]:\n", "for p in [0.85, 0.9, 0.95]:\n",
" m, h = mean_confidence_interval(df['Weight'].fillna(method='pad'),p)\n", " m, h = mean_confidence_interval(df['Weight'].ffill(),p)\n",
" print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")" " print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")"
] ]
}, },
@ -282,7 +282,7 @@
"source": [ "source": [
"## Testowanie hipotez\n", "## Testowanie hipotez\n",
"\n", "\n",
"Przyjrzyjmy się różnym rolom w naszym zestawie danych graczy baseballowych:\n" "Zbadajmy różne role w naszym zbiorze danych o baseballistach:\n"
] ]
}, },
{ {
@ -298,7 +298,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Przetestujmy hipotezę, że gracze na pozycji pierwszej bazy są wyżsi niż gracze na pozycji drugiej bazy. Najprostszym sposobem jest sprawdzenie przedziałów ufności:\n" "Przetestujmy hipotezę, że pierwszi bazowi są wyżsi niż drudzy bazowi. Najprostszym sposobem, aby to sprawdzić, jest analiza przedziałów ufności:\n"
] ]
}, },
{ {
@ -317,7 +317,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Widzimy, że przedziały nie nakładają się.\n", "Widzimy, że przedziały nie nakładają się na siebie.\n",
"\n", "\n",
"Statystycznie bardziej poprawnym sposobem na udowodnienie hipotezy jest użycie **testu t-Studenta**:\n" "Statystycznie bardziej poprawnym sposobem na udowodnienie hipotezy jest użycie **testu t-Studenta**:\n"
] ]
@ -339,8 +339,8 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"Dwie wartości zwracane przez funkcję `ttest_ind` to:\n", "Dwie wartości zwracane przez funkcję `ttest_ind` to:\n",
"* wartość p można uznać za prawdopodobieństwo, że dwie rozkłady mają tę samą średnią. W naszym przypadku jest ona bardzo niska, co oznacza, że istnieją mocne dowody na to, że pierwszi bazowi są wyżsi.\n", "* p-value można uważać za prawdopodobieństwo, że dwie dystrybucje mają tę samą średnią. W naszym przypadku jest ono bardzo niskie, co oznacza, że istnieją mocne dowody na to, że pierwszobazowi są wyżsi.\n",
"* wartość t jest pośrednią wartością znormalizowanej różnicy średnich, która jest używana w teście t i porównywana z wartością progową dla określonego poziomu ufności.\n" "* t-value to pośrednia wartość znormalizowanej różnicy średnich, która jest używana w teście t i porównywana z wartością progową dla danego poziomu ufności.\n"
] ]
}, },
{ {
@ -349,7 +349,7 @@
"source": [ "source": [
"## Symulacja rozkładu normalnego za pomocą twierdzenia granicznego centralnego\n", "## Symulacja rozkładu normalnego za pomocą twierdzenia granicznego centralnego\n",
"\n", "\n",
"Generator pseudolosowy w Pythonie jest zaprojektowany tak, aby dawać rozkład jednostajny. Jeśli chcemy stworzyć generator dla rozkładu normalnego, możemy użyć twierdzenia granicznego centralnego. Aby uzyskać wartość o rozkładzie normalnym, po prostu obliczymy średnią z próbki wygenerowanej równomiernie.\n" "Generator pseudolosowy w Pythonie jest zaprojektowany tak, aby dawał rozkład jednostajny. Jeśli chcemy stworzyć generator rozkładu normalnego, możemy użyć twierdzenia granicznego centralnego. Aby uzyskać wartość o rozkładzie normalnym, wystarczy obliczyć średnią z próbki wygenerowanej jednostajnie.\n"
] ]
}, },
{ {
@ -375,7 +375,7 @@
"source": [ "source": [
"## Korelacja i Zła Korporacja Baseballowa\n", "## Korelacja i Zła Korporacja Baseballowa\n",
"\n", "\n",
"Korelacja pozwala nam znaleźć zależności między sekwencjami danych. W naszym przykładowym przykładzie załóżmy, że istnieje zła korporacja baseballowa, która płaci swoim graczom zgodnie z ich wzrostem - im wyższy zawodnik, tym więcej pieniędzy otrzymuje. Załóżmy, że jest podstawowa pensja w wysokości 1000$, oraz dodatkowa premia od 0 do 100$, w zależności od wzrostu. Weźmiemy prawdziwych graczy z MLB i obliczymy ich wyimaginowane wynagrodzenia:\n" "Korelacja pozwala nam znaleźć zależności między sekwencjami danych. W naszym przykładowym przypadku załóżmy, że istnieje zła korporacja baseballowa, która płaci swoim graczom według ich wzrostu - im wyższy gracz, tym więcej pieniędzy otrzymuje. Załóżmy, że istnieje podstawowa pensja w wysokości 1000 dolarów oraz dodatkowy bonus od 0 do 100 dolarów, zależny od wzrostu. Weźmiemy prawdziwych graczy z MLB i obliczymy ich wyimaginowane wynagrodzenia:\n"
] ]
}, },
{ {
@ -384,7 +384,7 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"heights = df['Height'].fillna(method='pad')\n", "heights = df['Height'].ffill()\n",
"salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n", "salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n",
"print(list(zip(heights, salaries))[:10])" "print(list(zip(heights, salaries))[:10])"
] ]
@ -393,7 +393,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Obliczmy teraz kowariancję i korelację tych sekwencji. `np.cov` da nam tzw. **macierz kowariancji**, która jest rozszerzeniem kowariancji na wiele zmiennych. Element $M_{ij}$ macierzy kowariancji $M$ jest kowariancją między zmiennymi wejściowymi $X_i$ i $X_j$, a wartości diagonalne $M_{ii}$ to wariancje $X_{i}$. Podobnie, `np.corrcoef` da nam **macierz korelacji**.\n" "Obliczmy teraz kowariancję i korelację tych sekwencji. Funkcja `np.cov` da nam tzw. **macierz kowariancji**, która jest rozszerzeniem kowariancji na wiele zmiennych. Element $M_{ij}$ macierzy kowariancji $M$ to kowariancja między zmiennymi wejściowymi $X_i$ i $X_j$, a wartości diagonalne $M_{ii}$ to wariancje $X_{i}$. Podobnie, `np.corrcoef` da nam **macierz korelacji**.\n"
] ]
}, },
{ {
@ -411,7 +411,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Korelacja równa 1 oznacza, że istnieje silna **liniowa zależność** między dwiema zmiennymi. Możemy wizualnie zobaczyć liniową zależność, wykreślając jedną wartość względem drugiej:\n" "Korelacja równa 1 oznacza, że istnieje silna **liniowa zależność** między dwiema zmiennymi. Możemy wizualnie zobaczyć zależność liniową, wykreślając jedną wartość względem drugiej:\n"
] ]
}, },
{ {
@ -430,7 +430,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Zobaczmy, co się stanie, jeśli relacja nie jest liniowa. Załóżmy, że nasza korporacja postanowiła ukryć oczywistą liniową zależność między wzrostem a wynagrodzeniem i wprowadziła do wzoru pewną nieliniowość, na przykład `sin`:\n" "Sprawdźmy, co się stanie, jeśli zależność nie będzie liniowa. Załóżmy, że nasza korporacja postanowiła ukryć oczywistą liniową zależność między wzrostem a wynagrodzeniami i wprowadziła pewną nieliniowość do wzoru, taką jak `sin`:\n"
] ]
}, },
{ {
@ -447,7 +447,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"W tym przypadku korelacja jest nieco mniejsza, ale nadal dość wysoka. Teraz, aby związek był jeszcze mniej oczywisty, możemy dodać trochę dodatkowego losowego elementu, dodając do wynagrodzenia jakąś losową zmienną. Zobaczmy, co się stanie:\n" "W tym przypadku korelacja jest nieco mniejsza, ale nadal dość wysoka. Teraz, aby związek był jeszcze mniej oczywisty, możemy chcieć dodać trochę dodatkowej losowości, dodając jakąś losową zmienną do wynagrodzenia. Zobaczmy, co się stanie:\n"
] ]
}, },
{ {
@ -478,7 +478,7 @@
"source": [ "source": [
"> Czy potrafisz zgadnąć, dlaczego kropki układają się w pionowe linie w ten sposób?\n", "> Czy potrafisz zgadnąć, dlaczego kropki układają się w pionowe linie w ten sposób?\n",
"\n", "\n",
"Zaobserwowaliśmy korelację między sztucznie zaprojektowaną koncepcją, taką jak wynagrodzenie, a obserwowaną zmienną *wzrost*. Zobaczmy także, czy dwie obserwowane zmienne, takie jak wzrost i waga, również korelują:\n" "Zaobserwowaliśmy korelację między sztucznie skonstruowaną koncepcją, taką jak wynagrodzenie, a obserwowaną zmienną *wzrost*. Zobaczmy również, czy dwie zmienne obserwowane, takie jak wzrost i waga, również korelują:\n"
] ]
}, },
{ {
@ -494,11 +494,11 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Niestety, nie otrzymaliśmy żadnych wyników tylko kilka dziwnych wartości `nan`. Wynika to z faktu, że niektóre wartości w naszej serii są niezdefiniowane, reprezentowane jako `nan`, co powoduje, że wynik operacji również jest niezdefiniowany. Patrząc na macierz widzimy, że kolumna `Weight` jest problematyczna, ponieważ została obliczona autokorelacja pomiędzy wartościami `Height`.\n", "Niestety, nie uzyskaliśmy żadnych wyników — tylko dziwne wartości `nan`. Wynika to z faktu, że niektóre wartości w naszej serii są niezdefiniowane, reprezentowane jako `nan`, co powoduje, że wynik operacji również jest niezdefiniowany. Patrząc na macierz widzimy, że problematyczną kolumną jest `Weight`, ponieważ obliczana była autokorelacja między wartościami `Height`.\n",
"\n", "\n",
"> Ten przykład pokazuje, jak ważne jest **przygotowanie danych** i **czyszczenie**. Bez odpowiednich danych nie możemy nic obliczyć.\n", "> Ten przykład pokazuje znaczenie **przygotowania danych** i **oczyszczania**. Bez odpowiednich danych nic nie możemy obliczyć.\n",
"\n", "\n",
"Użyjmy metody `fillna`, aby wypełnić brakujące wartości i obliczyć korelację:\n" "Użyjmy metody `fillna`, aby uzupełnić brakujące wartości i obliczmy korelację:\n"
] ]
}, },
{ {
@ -507,14 +507,14 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"np.corrcoef(df['Height'].fillna(method='pad'), df['Weight'])" "np.corrcoef(df['Height'].ffill(), df['Weight'])"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Istnieje faktycznie korelacja, ale nie tak silna jak w naszym sztucznym przykładzie. Rzeczywiście, jeśli spojrzymy na wykres rozrzutu jednej wartości względem drugiej, związek byłby znacznie mniej oczywisty:\n" "Istnieje rzeczywiście korelacja, ale nie tak silna jak w naszym sztucznym przykładzie. Rzeczywiście, jeśli spojrzymy na wykres rozrzutu jednej wartości względem drugiej, zależność byłaby znacznie mniej oczywista:\n"
] ]
}, },
{ {
@ -537,14 +537,14 @@
"source": [ "source": [
"## Wnioski\n", "## Wnioski\n",
"\n", "\n",
"W tym notatniku nauczyliśmy się, jak wykonywać podstawowe operacje na danych, aby obliczać funkcje statystyczne. Wiemy teraz, jak używać solidnego aparatu matematycznego i statystycznego, aby udowodnić niektóre hipotezy oraz jak obliczać przedziały ufności dla dowolnych zmiennych, mając próbkę danych.\n" "W tym notatniku nauczyliśmy się, jak wykonywać podstawowe operacje na danych, aby obliczać funkcje statystyczne. Teraz wiemy, jak używać solidnego aparatu matematycznego i statystycznego, aby dowodzić pewnych hipotez oraz jak obliczać przedziały ufności dla dowolnych zmiennych na podstawie próbki danych.\n"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Zrzeczenie się odpowiedzialności**: \nNiniejszy dokument został przetłumaczony przy użyciu automatycznej usługi tłumaczeniowej AI [Co-op Translator](https://github.com/Azure/co-op-translator). Mimo że dokładamy starań, aby tłumaczenie było jak najbardziej precyzyjne, prosimy mieć na uwadze, że automatyczne przekłady mogą zawierać błędy lub nieścisłości. Oryginalny dokument w języku źródłowym należy uważać za ostateczne i autorytatywne źródło. W przypadku informacji o krytycznym znaczeniu zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n" "---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Zastrzeżenie**:\nNiniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Choć dążymy do dokładności, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego języku źródłowym należy uznawać za autorytatywne źródło. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
] ]
} }
], ],
@ -568,12 +568,6 @@
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.9.6" "version": "3.9.6"
},
"coopTranslator": {
"original_hash": "0f899e3c5019f948e7c787b22f3b2304",
"translation_date": "2026-01-16T13:50:48+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "pl"
} }
}, },
"nbformat": 4, "nbformat": 4,

@ -4,11 +4,11 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"# Oszacowanie pandemii COVID-19\n", "# Estymacja pandemii COVID-19\n",
"\n", "\n",
"## Ładowanie danych\n", "## Ładowanie danych\n",
"\n", "\n",
"Użyjemy danych na temat zakażonych COVID-19, dostarczonych przez [Center for Systems Science and Engineering](https://systems.jhu.edu/) (CSSE) na [Johns Hopkins University](https://jhu.edu/). Zestaw danych jest dostępny w [tym repozytorium GitHub](https://github.com/CSSEGISandData/COVID-19).\n" "Skorzystamy z danych o osobach zakażonych COVID-19, udostępnionych przez [Center for Systems Science and Engineering](https://systems.jhu.edu/) (CSSE) na [Johns Hopkins University](https://jhu.edu/). Zbiór danych jest dostępny w [tym repozytorium GitHub](https://github.com/CSSEGISandData/COVID-19).\n"
] ]
}, },
{ {
@ -27,7 +27,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Możemy załadować najnowsze dane bezpośrednio z GitHub za pomocą `pd.read_csv`. Jeśli z jakiegoś powodu dane nie są dostępne, zawsze możesz użyć kopii dostępnej lokalnie w folderze `data` - wystarczy odkomentować poniższą linię definiującą `base_url`:\n" "Możemy załadować najnowsze dane bezpośrednio z GitHub używając `pd.read_csv`. Jeśli z jakiegoś powodu dane nie są dostępne, zawsze możesz użyć kopii dostępnej lokalnie w folderze `data` - po prostu odkomentuj poniższą linię, która definiuje `base_url`:\n"
] ]
}, },
{ {
@ -48,7 +48,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Załadujmy teraz dane dotyczące osób zakażonych i zobaczmy, jak wyglądają te dane:\n" "Załadujmy teraz dane dotyczące zakażonych osób i zobaczmy, jak wyglądają dane:\n"
] ]
}, },
{ {
@ -265,7 +265,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Możemy zobaczyć, że każdy wiersz tabeli określa liczbę zakażonych osób dla każdego kraju i/lub prowincji, a kolumny odpowiadają datom. Podobne tabele można wczytać dla innych danych, takich jak liczba ozdrowieńców i liczba zgonów.\n" "Możemy zauważyć, że każdy wiersz tabeli definiuje liczbę zakażonych osób dla każdego kraju i/lub prowincji, a kolumny odpowiadają datom. Podobne tabele można załadować dla innych danych, takich jak liczba ozdrowieńców i liczba zgonów.\n"
] ]
}, },
{ {
@ -282,9 +282,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Rozumienie danych\n", "## Zrozumienie danych\n",
"\n", "\n",
"Z powyższej tabeli rola kolumny prowincji nie jest jasna. Sprawdźmy różne wartości, które znajdują się w kolumnie `Province/State`:\n" "Z powyższej tabeli rola kolumny prowincja nie jest jasna. Sprawdźmy różne wartości obecne w kolumnie `Province/State`:\n"
] ]
}, },
{ {
@ -1321,9 +1321,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Przetwarzanie danych wstępnych\n", "## Wstępne przetwarzanie danych \n",
"\n", "\n",
"Nie jesteśmy zainteresowani dzieleniem krajów na dalsze terytoria, więc najpierw pozbędziemy się tego podziału i dodamy informacje o wszystkich terytoriach razem, aby uzyskać dane dla całego kraju. Można to zrobić za pomocą `groupby`:\n" "Nie jesteśmy zainteresowani dalszym dzieleniem krajów na terytoria, dlatego najpierw pozbędziemy się tego podziału i dodamy informacje dla wszystkich terytoriów razem, aby uzyskać dane dla całego kraju. Można to zrobić za pomocą `groupby`:\n"
] ]
}, },
{ {
@ -1578,7 +1578,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Możesz zobaczyć, że dzięki użyciu `groupby` wszystkie DataFrame'y są teraz indeksowane według Kraju/Regionu. Możemy więc uzyskać dostęp do danych dla konkretnego kraju za pomocą `.loc`:|\n" "Widać, że dzięki użyciu `groupby` wszystkie DataFrame'y są teraz indeksowane według kraju/regionu. Możemy więc uzyskać dostęp do danych dla konkretnego kraju, używając `.loc`:|\n"
] ]
}, },
{ {
@ -1607,7 +1607,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> **Uwaga** jak używamy `[3:]`, aby usunąć pierwsze trzy elementy sekwencji zawierające metadane niewchodzące w skład daty (kolumny Województwo/Stan i geolokalizacja). Możemy również całkowicie usunąć te trzy kolumny:\n" "> **Zauważ** jak używamy `[3:]`, aby usunąć pierwsze trzy elementy sekwencji zawierające metadane inne niż daty (kolumny Prowincja/Stan oraz geolokalizacja). Możemy również całkowicie odrzucić te trzy kolumny:\n"
] ]
}, },
{ {
@ -1627,7 +1627,7 @@
"source": [ "source": [
"## Badanie danych\n", "## Badanie danych\n",
"\n", "\n",
"Przełączmy się teraz na badanie konkretnego kraju. Stwórzmy ramkę zawierającą dane o zakażeniach indeksowanych według daty:\n" "Przełączmy się teraz na badanie konkretnego kraju. Stwórzmy ramkę, która będzie zawierać dane o zakażeniach zindeksowane według daty:\n"
] ]
}, },
{ {
@ -1793,7 +1793,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Teraz obliczmy liczbę nowych zakażonych osób każdego dnia. Pozwoli nam to zobaczyć, jak szybko postępuje pandemia. Najprostszy sposób na to to użycie `diff`:\n" "Obliczmy teraz liczbę nowych zakażonych każdego dnia. Pozwoli nam to zobaczyć tempo, w jakim postępuje pandemia. Najprostszy sposób, aby to zrobić, to użycie `diff`:\n"
] ]
}, },
{ {
@ -1823,7 +1823,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Możemy zauważyć duże wahania w danych. Przyjrzyjmy się bliżej jednemu z miesięcy:\n" "Możemy zaobserwować duże wahania w danych. Przyjrzyjmy się bliżej jednemu z miesięcy:\n"
] ]
}, },
{ {
@ -1852,7 +1852,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Wyraźnie widać tygodniowe wahania danych. Ponieważ chcemy móc dostrzec trendy, sensowne jest wygładzenie krzywej poprzez obliczenie średniej ruchomej (czyli dla każdego dnia będziemy obliczać średnią wartość z poprzednich kilku dni):\n" "Wyraźnie widać, że w danych występują cotygodniowe wahania. Ponieważ chcemy mieć możliwość obserwowania trendów, sensowne jest wygładzenie krzywej poprzez obliczenie średniej kroczącej (tzn. dla każdego dnia obliczymy średnią wartość z poprzednich kilku dni):\n"
] ]
}, },
{ {
@ -1882,7 +1882,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Aby móc porównać kilka krajów, możemy chcieć uwzględnić populację kraju i porównać procent osób zakażonych względem populacji kraju. Aby uzyskać populację kraju, załadujmy zestaw danych krajów:\n" "Aby móc porównać kilka krajów, możemy chcieć uwzględnić populację kraju i porównać procent zarażonych osób w stosunku do populacji kraju. Aby uzyskać populację kraju, załadujmy zbiór danych krajów:\n"
] ]
}, },
{ {
@ -2153,7 +2153,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Ponieważ ten zbiór danych zawiera informacje zarówno o krajach, jak i prowincjach, aby uzyskać populację całego kraju, musimy być trochę sprytni:\n" "Ponieważ ten zestaw danych zawiera informacje zarówno o krajach, jak i prowincjach, aby uzyskać populację całego kraju, musimy być trochę sprytni: \n"
] ]
}, },
{ {
@ -2261,14 +2261,15 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"\n",
"## Obliczanie $R_t$\n", "## Obliczanie $R_t$\n",
"\n", "\n",
"Aby zobaczyć, jak zakaźna jest choroba, patrzymy na **podstawową liczbę reprodukcji** $R_0$, która wskazuje liczbę osób, które zakażona osoba mogłaby dalej zarazić. Gdy $R_0$ jest większe niż 1, epidemia prawdopodobnie się rozprzestrzeni.\n", "Aby zobaczyć, jak zakaźna jest choroba, patrzymy na **podstawową liczbę reprodukcji** $R_0$, która wskazuje, ile osób może zakazić jedna zakażona osoba. Gdy $R_0$ jest większe niż 1, epidemia prawdopodobnie się rozprzestrzeni.\n",
"\n", "\n",
"$R_0$ jest właściwością samej choroby i nie uwzględnia niektórych środków ochronnych, które ludzie mogą podjąć, aby spowolnić pandemię. W trakcie trwania pandemii możemy oszacować współczynnik reprodukcji $R_t$ w dowolnym czasie $t$. Wykazano, że tę liczbę można w przybliżeniu oszacować, biorąc okno czasowe 8 dni i obliczając $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n", "$R_0$ jest właściwością samej choroby i nie uwzględnia niektórych środków ochronnych, które ludzie mogą podjąć, aby spowolnić pandemię. W trakcie rozwoju pandemii możemy oszacować liczbę reprodukcji $R_t$ w dowolnym czasie $t$. Wykazano, że tę liczbę można w przybliżeniu oszacować, biorąc okno 8 dni i obliczając $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$\n",
"gdzie $I_t$ to liczba nowo zakażonych osób w dniu $t$.\n", "gdzie $I_t$ jest liczbą nowo zakażonych osób w dniu $t$.\n",
"\n", "\n",
"Policzmy $R_t$ dla naszych danych pandemicznych. W tym celu weźmiemy przesuwające się okno 8 wartości `ninfected` i zastosujemy funkcję do obliczenia powyższego współczynnika:\n" "Obliczmy $R_t$ dla naszych danych pandemicznych. W tym celu weźmiemy przesuwające się okno 8 wartości `ninfected` i zastosujemy funkcję do obliczenia powyższego stosunku:\n"
] ]
}, },
{ {
@ -2298,9 +2299,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Możesz zauważyć, że na wykresie występują pewne luki. Mogą one być spowodowane obecnością `NaN` lub `inf` w zestawie danych. `inf` może być spowodowane dzieleniem przez 0, a `NaN` może oznaczać brak danych lub brak dostępnych danych do obliczenia wyniku (np. na samym początku naszego ramki, gdzie okno kroczące o szerokości 8 nie jest jeszcze dostępne). Aby wykres wyglądał lepiej, musimy wypełnić te wartości za pomocą funkcji `replace` i `fillna`.\n", "Możesz zauważyć, że na wykresie są pewne przerwy. Mogą być one spowodowane przez `NaN` lub obecność wartości `inf` w zbiorze danych. `inf` może być wynikiem dzielenia przez 0, a `NaN` może oznaczać brakujące dane lub brak danych do obliczenia wyniku (na przykład na samym początku naszego ramki, gdzie okno ruchome o szerokości 8 jeszcze nie jest dostępne). Aby wykres wyglądał lepiej, musimy wypełnić te wartości za pomocą funkcji `replace` i `fillna`.\n",
"\n", "\n",
"Spójrzmy dalej na początek pandemii. Ograniczymy również wartości osi y, aby pokazać tylko wartości poniżej 6, aby lepiej widzieć, oraz narysujemy linię poziomą na wartości 1.\n" "Przyjrzyjmy się bliżej początkowi pandemii. Ograniczymy także wartości osi y, aby pokazać tylko wartości poniżej 6, aby lepiej widzieć, oraz narysujemy linię poziomą na 1.\n"
] ]
}, },
{ {
@ -2331,7 +2332,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Kolejnym interesującym wskaźnikiem pandemii jest **pochodna**, czyli **dzienne różnice** w nowych przypadkach. Pozwala nam to wyraźnie zobaczyć, kiedy pandemia rośnie, a kiedy maleje.\n" "Kolejnym interesującym wskaźnikiem pandemii jest **pochodna**, czyli **dzienne przyrosty** nowych przypadków. Pozwala nam to wyraźnie dostrzec, kiedy pandemia rośnie, a kiedy maleje. \n"
] ]
}, },
{ {
@ -2360,7 +2361,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Biorąc pod uwagę fakt, że w danych występuje wiele wahań spowodowanych raportowaniem, sensowne jest wygładzenie krzywej poprzez zastosowanie średniej kroczącej, aby uzyskać ogólny obraz. Skupmy się ponownie na pierwszych miesiącach pandemii:\n" "Biorąc pod uwagę fakt, że w danych występuje wiele wahań spowodowanych raportowaniem, sensowne jest wygładzenie krzywej poprzez obliczenie średniej kroczącej, aby uzyskać ogólny obraz. Skupmy się ponownie na pierwszych miesiącach pandemii:\n"
] ]
}, },
{ {
@ -2390,26 +2391,27 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"\n",
"## Wyzwanie\n", "## Wyzwanie\n",
"\n", "\n",
"Teraz czas, abyś więcej poeksperymentował z kodem i danymi! Oto kilka sugestii, z którymi możesz się pobawić:\n", "Teraz nadszedł czas, abyś więcej poeksperymentował z kodem i danymi! Oto kilka propozycji, które możesz wypróbować:\n",
"* Zobacz rozprzestrzenianie się pandemii w różnych krajach.\n", "* Zobacz rozprzestrzenianie się pandemii w różnych krajach.\n",
"* Wyświetl wykresy $R_t$ dla kilku krajów na jednym wykresie w celu porównania lub stwórz kilka wykresów obok siebie.\n", "* Narysuj wykresy $R_t$ dla kilku krajów na jednym wykresie do porównania lub utwórz kilka wykresów obok siebie\n",
"* Zobacz, jak liczba zgonów i wyzdrowień koreluje z liczbą zakażonych.\n", "* Sprawdź, jak liczba zgonów i wyzdrowień koreluje z liczbą zakażonych przypadków.\n",
"* Spróbuj dowiedzieć się, jak długo zwykle trwa choroba, wizualnie korelując wskaźnik zakażeń i wskaźnik zgonów oraz szukając anomalii. Może być konieczne spojrzenie na różne kraje, aby to ustalić.\n", "* Spróbuj dowiedzieć się, jak długo trwa typowa choroba, wizualnie korelując wskaźnik infekcji i wskaźnik zgonów oraz szukając pewnych anomalii. Możesz potrzebować spojrzeć na różne kraje, aby to odkryć.\n",
"* Oblicz wskaźnik śmiertelności i jak zmienia się w czasie. Możesz chcieć uwzględnić długość trwania choroby w dniach, aby przesunąć jedną serię czasową przed wykonaniem obliczeń.\n" "* Oblicz wskaźnik śmiertelności i jak zmienia się on w czasie. Możesz chcieć uwzględnić długość choroby w dniach, aby przesunąć jedną serię czasową przed wykonaniem obliczeń\n"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## References\n", "## Referencje\n",
"\n", "\n",
"You may look at further studies of COVID epidemic spread in the following publications:\n", "Możesz zapoznać się z dalszymi badaniami rozprzestrzeniania się epidemii COVID w następujących publikacjach:\n",
"* [Sliding SIR Model for Rt Estimation during COVID Pandemic](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/), wpis na blogu [Dmitry Soshnikov](http://soshnikov.com)\n", "* [Model przesuwnego SIR do oszacowania Rt podczas pandemii COVID](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/), wpis na blogu [Dmitry Soshnikov](http://soshnikov.com)\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [Estimation of Time-Dependent Reproduction Number for Global COVID-19 Outbreak](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n", "* T.Petrova, D.Soshnikov, A.Grunin. [Oszacowanie zmiennej w czasie liczby reprodukcji dla globalnej epidemii COVID-19](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [Code for the above paper on GitHub](https://github.com/shwars/SlidingSIR)\n" "* [Kod do powyższego artykułu na GitHub](https://github.com/shwars/SlidingSIR)\n"
] ]
}, },
{ {
@ -2423,7 +2425,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Zastrzeżenie**: \nDokument ten został przetłumaczony przy użyciu usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż dokładamy wszelkich starań, aby zachować poprawność, prosimy mieć na uwadze, że tłumaczenia automatyczne mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego języku źródłowym powinien być uznawany za źródło ostateczne. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonywanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n" "---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Zastrzeżenie**:\nNiniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Choć dążymy do dokładności, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego języku źródłowym należy uznawać za autorytatywne źródło. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
] ]
} }
], ],

@ -1,29 +1,33 @@
# Projekt wizualizacji danych Dangerous Liaisons # Projekt wizualizacji danych Dangerous Liaisons
Aby rozpocząć, upewnij się, że masz zainstalowane NPM i Node na swoim komputerze. Zainstaluj zależności (npm install), a następnie uruchom projekt lokalnie (npm run serve): Aby rozpocząć, musisz upewnić się, że na twoim komputerze działa NPM i Node **>=20.0.0**. Zainstaluj zależności (npm install), a następnie uruchom projekt lokalnie (npm run serve):
## Konfiguracja projektu ## Konfiguracja projektu
``` ```
npm install npm install
``` ```
### Kompilacja i automatyczne odświeżanie dla rozwoju ### Kompiluje i przeładowuje na gorąco podczas developmentu
``` ```
npm run serve npm run serve
``` ```
### Kompilacja i minimalizacja dla produkcji ### Kompiluje i minimalizuje do produkcji
``` ```
npm run build npm run build
``` ```
### Sprawdzanie i poprawianie plików ### Sprawdza i naprawia pliki
``` ```
npm run lint npm run lint
``` ```
### Dostosowanie konfiguracji ### Dostosuj konfigurację
Zobacz [Odnośnik do konfiguracji](https://cli.vuejs.org/config/). Zobacz [Configuration Reference](https://cli.vuejs.org/config/).
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Zastrzeżenie**: **Zastrzeżenie**:
Ten dokument został przetłumaczony za pomocą usługi tłumaczeniowej AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż dokładamy wszelkich starań, aby zapewnić precyzję, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za autorytatywne źródło. W przypadku informacji o kluczowym znaczeniu zaleca się skorzystanie z profesjonalnego tłumaczenia przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia. Niniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Choć dążymy do dokładności, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego języku źródłowym należy uznawać za autorytatywne źródło. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,29 +1,33 @@
# Projekt wizualizacji danych Dangerous Liaisons # Projekt wizualizacji danych Dangerous Liaisons
Aby rozpocząć, upewnij się, że masz zainstalowane NPM i Node na swoim komputerze. Zainstaluj zależności (npm install), a następnie uruchom projekt lokalnie (npm run serve): Aby rozpocząć, musisz upewnić się, że na Twoim komputerze działa NPM i Node **>=20.0.0**. Zainstaluj zależności (npm install), a następnie uruchom projekt lokalnie (npm run serve):
## Konfiguracja projektu ## Konfiguracja projektu
``` ```
npm install npm install
``` ```
### Kompilacja i automatyczne odświeżanie podczas rozwoju ### Kompiluje i przeładowuje na gorąco podczas programowania
``` ```
npm run serve npm run serve
``` ```
### Kompilacja i minimalizacja dla produkcji ### Kompiluje i minifikuje do produkcji
``` ```
npm run build npm run build
``` ```
### Sprawdzanie i poprawianie plików ### Sprawdza i naprawia pliki
``` ```
npm run lint npm run lint
``` ```
### Dostosowanie konfiguracji ### Dostosuj konfigurację
Zobacz [Odnośnik do konfiguracji](https://cli.vuejs.org/config/). Zobacz [Configuration Reference](https://cli.vuejs.org/config/).
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Zastrzeżenie**: **Zastrzeżenie**:
Ten dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż staramy się zapewnić dokładność, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za autorytatywne źródło. W przypadku informacji krytycznych zaleca się skorzystanie z profesjonalnego tłumaczenia przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia. Niniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Choć dążymy do dokładności, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego języku źródłowym należy uznawać za autorytatywne źródło. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -12,8 +12,8 @@
"language_code": "tr" "language_code": "tr"
}, },
"1-Introduction/01-defining-data-science/notebook.ipynb": { "1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec", "original_hash": "8eb07e3d899aaba7ea9c9ec9b5aa2850",
"translation_date": "2026-02-27T11:01:50+00:00", "translation_date": "2026-07-17T21:28:33+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb", "source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "tr" "language_code": "tr"
}, },
@ -42,8 +42,8 @@
"language_code": "tr" "language_code": "tr"
}, },
"1-Introduction/03-defining-data/README.md": { "1-Introduction/03-defining-data/README.md": {
"original_hash": "12339119c0165da569a93ddba05f9339", "original_hash": "7217c6f9eb464d4ff4bae6c036ab53cb",
"translation_date": "2025-09-06T09:06:08+00:00", "translation_date": "2026-07-17T21:31:09+00:00",
"source_file": "1-Introduction/03-defining-data/README.md", "source_file": "1-Introduction/03-defining-data/README.md",
"language_code": "tr" "language_code": "tr"
}, },
@ -65,6 +65,12 @@
"source_file": "1-Introduction/04-stats-and-probability/assignment.md", "source_file": "1-Introduction/04-stats-and-probability/assignment.md",
"language_code": "tr" "language_code": "tr"
}, },
"1-Introduction/04-stats-and-probability/notebook.ipynb": {
"original_hash": "0c77e104b29c723287bf11b773fcc5d5",
"translation_date": "2026-07-17T21:29:39+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "tr"
},
"1-Introduction/README.md": { "1-Introduction/README.md": {
"original_hash": "696a8474a01054281704cbfb09148949", "original_hash": "696a8474a01054281704cbfb09148949",
"translation_date": "2025-08-28T11:18:42+00:00", "translation_date": "2025-08-28T11:18:42+00:00",
@ -108,8 +114,8 @@
"language_code": "tr" "language_code": "tr"
}, },
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": { "2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38", "original_hash": "da97f98781c7cd271063f605fe8d71d0",
"translation_date": "2026-02-27T11:03:17+00:00", "translation_date": "2026-07-17T21:28:01+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb", "source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "tr" "language_code": "tr"
}, },
@ -192,14 +198,14 @@
"language_code": "tr" "language_code": "tr"
}, },
"3-Data-Visualization/13-meaningful-visualizations/solution/README.md": { "3-Data-Visualization/13-meaningful-visualizations/solution/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e", "original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2025-08-28T11:15:02+00:00", "translation_date": "2026-07-17T21:31:17+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md", "source_file": "3-Data-Visualization/13-meaningful-visualizations/solution/README.md",
"language_code": "tr" "language_code": "tr"
}, },
"3-Data-Visualization/13-meaningful-visualizations/starter/README.md": { "3-Data-Visualization/13-meaningful-visualizations/starter/README.md": {
"original_hash": "5c51a54dd89075a7a362890117b7ed9e", "original_hash": "2b3b2632bb02af608ca60be828e8097d",
"translation_date": "2025-08-28T11:15:15+00:00", "translation_date": "2026-07-17T21:31:13+00:00",
"source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md", "source_file": "3-Data-Visualization/13-meaningful-visualizations/starter/README.md",
"language_code": "tr" "language_code": "tr"
}, },

File diff suppressed because one or more lines are too long

@ -1,75 +1,79 @@
# Veriyi Tanımlama # Veri Tanımlama
|![ Sketchnote by [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)| |![ Sketchnote by [(@sketchthedocs)](https://sketchthedocs.dev) ](../../sketchnotes/03-DefiningData.png)|
|:---:| |:---:|
|Veriyi Tanımlama - _Sketchnote by [@nitya](https://twitter.com/nitya)_ | |Veri Tanımlama - _Sketchnote by [@nitya](https://twitter.com/nitya)_ |
Veri, keşifler yapmak ve bilinçli kararlar desteklemek için kullanılan gerçekler, bilgiler, gözlemler ve ölçümlerdir. Bir veri noktası, bir veri kümesindeki tek bir veri birimidir ve veri noktalarının bir koleksiyonudur. Veri kümeleri farklı formatlarda ve yapılarda olabilir ve genellikle kaynağına, yani verinin nereden geldiğine bağlıdır. Örneğin, bir şirketin aylık kazançları bir elektronik tablo formatında olabilirken, bir akıllı saatten gelen saatlik kalp atış hızı verileri [JSON](https://stackoverflow.com/a/383699) formatında olabilir. Veri bilimciler genellikle bir veri kümesindeki farklı veri türleriyle çalışırlar. Veri, keşif yapmak ve bilinçli kararlar almak için kullanılan gerçekler, bilgiler, gözlemler ve ölçümlerdir. Veri noktası, veri noktalarının bir koleksiyonu olan bir veri seti içindeki tek bir veri birimidir. Veri setleri farklı formatlarda ve yapılarda olabilir ve genellikle kaynağına veya verinin nereden geldiğine bağlıdır. Örneğin, bir şirketin aylık kazancı bir elektronik tabloda olabilir ancak bir akıllı saatten gelen saatlik kalp atış hızı verisi [JSON](https://stackoverflow.com/a/383699) formatında olabilir. Veri bilimcilerin bir veri seti içindeki farklı türde verilerle çalışması yaygındır.
Bu ders, veriyi özelliklerine ve kaynaklarına göre tanımlamaya ve sınıflandırmaya odaklanmaktadır. Bu ders, veriyi özellikleri ve kaynaklarına göre tanımlama ve sınıflandırmaya odaklanmaktadır.
## [Ders Öncesi Testi](https://ff-quizzes.netlify.app/en/ds/quiz/4) ## [Ders Öncesi Quiz](https://ff-quizzes.netlify.app/en/ds/quiz/4)
## Verinin Tanımlanması ## Veri Nasıl Tanımlanır
### Ham Veri ### Ham Veri
Ham veri, kaynağından gelen ve henüz analiz edilmemiş veya organize edilmemiş veridir. Bir veri kümesinde neler olduğunu anlamak için, verinin insanlar ve analiz için kullanılan teknolojiler tarafından anlaşılabilir bir formata organize edilmesi gerekir. Bir veri kümesinin yapısı, nasıl organize edildiğini tanımlar ve yapılandırılmış, yapılandırılmamış ve yarı yapılandırılmış olarak sınıflandırılabilir. Bu yapılar, kaynağa bağlı olarak değişiklik gösterebilir ancak nihayetinde bu üç kategoriye uyacaktır. Ham veri, kaynağından alınmış, ilk halindeki ve henüz analiz edilmemiş veya düzenlenmemiş veridir. Bir veri setinde olan biteni anlamak için, verilerin insanlar ve onları analiz etmek için kullanabilecekleri teknolojiler tarafından anlaşılabilir bir formata organize edilmesi gerekir. Bir veri setinin yapısı, onun nasıl düzenlendiğini açıklar ve yapılandırılmış, yapılandırılmamış ve yarı yapılandırılmış olarak sınıflandırılabilir. Bu yapı türleri kaynağa bağlı olarak değişir ancak nihayetinde bu üç kategoriye uyar.
### Nicel Veri ### Nicel Veri
Nicel veri, bir veri kümesindeki sayısal gözlemlerdir ve genellikle analiz edilebilir, ölçülebilir ve matematiksel olarak kullanılabilir. Nicel veriye bazı örnekler: bir ülkenin nüfusu, bir kişinin boyu veya bir şirketin üç aylık kazançları. Ek analizlerle, nicel veri Hava Kalitesi İndeksi (AQI) için mevsimsel eğilimleri keşfetmek veya tipik bir iş gününde yoğun saat trafiği olasılığını tahmin etmek için kullanılabilir. Nicel veri, bir veri setindeki sayısal gözlemlerdir ve tipik olarak analiz edilebilir, ölçülebilir ve matematiksel olarak kullanılabilir. Nicel veri örnekleri: bir ülkenin nüfusu, bir kişinin boyu veya bir şirketin üç aylık kazancı. Bazı ek analizlerle, nicel veriler Hava Kalitesi İndeksi'nin (AQI) mevsimsel trendlerini keşfetmek veya tipik bir iş günündeki yoğun saat trafiği olasılığını tahmin etmek için kullanılabilir.
### Nitel Veri ### Nitel Veri
Nitel veri, kategorik veri olarak da bilinir ve nicel veri gözlemleri gibi nesnel olarak ölçülemeyen veridir. Genellikle bir ürün veya sürecin kalitesini yakalayan çeşitli formatlarda öznel veridir. Bazen nitel veri sayısal olabilir ancak genellikle matematiksel olarak kullanılmaz, örneğin telefon numaraları veya zaman damgaları. Nitel veriye bazı örnekler: video yorumları, bir arabanın marka ve modeli veya en yakın arkadaşlarınızın en sevdiği renk. Nitel veri, tüketicilerin en çok hangi ürünleri sevdiğini anlamak veya iş başvurusu özgeçmişlerinde popüler anahtar kelimeleri belirlemek için kullanılabilir. Nitel veri, kategorik veri olarak da bilinir, nicel verinin gözlemleri gibi nesnel olarak ölçülemeyen verilerdir. Genellikle bir ürün veya sürecin kalitesini yakalayan çeşitli biçimlerde öznel veridir. Bazen nitel veri sayısaldır ve tipik olarak matematiksel olarak kullanılmaz, örneğin telefon numaraları veya zaman damgaları gibi. Nitel veri örnekleri: video yorumları, bir arabanın marka ve modeli veya en yakın arkadaşlarınızın favori rengi. Nitel veri, tüketicilerin en çok hangi ürünleri sevdiğini anlamak veya iş başvurusu özgeçmişlerinde popüler anahtar kelimeleri belirlemek için kullanılabilir.
### Yapılandırılmış Veri ### Yapılandırılmış Veri
Yapılandırılmış veri, satır ve sütunlara organize edilmiş veridir; her satır aynı sütun setine sahip olacaktır. Sütunlar, belirli bir türdeki bir değeri temsil eder ve değerin neyi temsil ettiğini açıklayan bir isimle tanımlanır, satırlar ise gerçek değerleri içerir. Sütunlar genellikle değerlerin sütunu doğru bir şekilde temsil etmesini sağlamak için belirli bir dizi kural veya kısıtlama içerir. Örneğin, her satırda bir telefon numarasının olması gereken ve telefon numaralarının alfabetik karakterler içermediği bir müşteri elektronik tablosunu hayal edin. Telefon numarası sütununda boş olmaması ve yalnızca sayılar içermesi gerektiğini belirten kurallar uygulanabilir. Yapılandırılmış veri, satırlar ve sütunlar halinde düzenlenmiş verilerdir ve her satır aynı sütun setine sahip olur. Sütunlar belirli bir türden bir değeri temsil eder ve değerin neyi temsil ettiğini açıklayan bir isimle tanımlanır, satırlar ise gerçek değerleri içerir. Sütunlarda genellikle değerlerin doğru temsilini sağlamak için belirli kurallar veya kısıtlamalar bulunur. Örneğin, her satırda bir telefon numarası bulunması gereken ve telefon numaralarında asla harf bulunmayan bir müşteri elektronik tablosunu düşünün. Telefon numarası sütununda boş olmaması ve sadece sayı içermesi için kurallar uygulanabilir.
Yapılandırılmış verinin bir avantajı, diğer yapılandırılmış verilerle ilişkilendirilebilecek şekilde organize edilebilmesidir. Ancak, veri belirli bir şekilde organize edilmek üzere tasarlandığından, genel yapısında değişiklik yapmak oldukça fazla çaba gerektirebilir. Örneğin, müşteri elektronik tablosuna boş olamayacak bir e-posta sütunu eklemek, mevcut müşteri satırlarına bu değerleri nasıl ekleyeceğinizi belirlemenizi gerektirir. Yapılandırılmış verinin bir avantajı, diğer yapılandırılmış verilerle ilişkili olacak şekilde düzenlenebilmesidir. Ancak, veriler belirli bir şekilde düzenlenmek üzere tasarlandığı için, genel yapısında değişiklik yapmak büyük çaba gerektirebilir. Örneğin, müşteri elektronik tablosuna boş bırakılmaması gereken bir e-posta sütunu eklemek, bu değerlerin var olan müşteri satırlarına nasıl eklenebileceğini çözmek anlamına gelir.
Yapılandırılmış veri örnekleri: elektronik tablolar, ilişkisel veritabanları, telefon numaraları, banka ekstreleri Yapılandırılmış veri örnekleri: elektronik tablolar, ilişkisel veritabanları, telefon numaraları, banka hesap dökümleri
### Yapılandırılmamış Veri ### Yapılandırılmamış Veri
Yapılandırılmamış veri genellikle satır veya sütunlara kategorize edilemez ve bir format veya takip edilmesi gereken bir dizi kural içermez. Yapılandırılmamış verinin yapısında daha az kısıtlama olduğu için, yapılandırılmış bir veri kümesine kıyasla yeni bilgi eklemek daha kolaydır. Örneğin, her 2 dakikada bir barometrik basınç verisi toplayan bir sensörün artık sıcaklık ölçüp kaydedebilmesini sağlayan bir güncelleme alması, veri yapılandırılmamışsa mevcut veriyi değiştirmeyi gerektirmez. Ancak, bu tür veriyi analiz etmek veya incelemek daha uzun sürebilir. Örneğin, bir bilim insanı sensör verilerinden geçen ayın ortalama sıcaklığını bulmak ister ancak sensörün bazı verilerinde "e" kaydettiğini ve bunun sensörün bozuk olduğunu belirttiğini keşfeder, bu da verinin eksik olduğu anlamına gelir. Yapılandırılmamış veri genellikle satırlara veya sütunlara kategorize edilemez ve takip etmesi gereken bir format ya da kural seti yoktur. Yapılandırılmamış veride yapısal kısıtlamalar daha az olduğu için, yeni bilgi eklemek yapılandırılmış veri setine kıyasla daha kolaydır. Örneğin, her 2 dakikada bir barometrik basıncı ölçen bir sensör artık sıcaklığı da ölçüp kaydedebiliyorsa, yapılandırılmamış veri ise mevcut verileri değiştirmeye gerek yoktur. Ancak bu tür verinin analiz edilmesi veya incelenmesi daha uzun sürebilir. Örneğin, bir bilim insanı sensör verilerinden geçen ayın ortalama sıcaklığını bulmak ister ancak sensörün bazı verilerde kırık olduğunu belirtmek için "e" yazdığını keşfeder, bu da verilerin eksik olduğu anlamına gelir.
Yapılandırılmamış veri örnekleri: metin dosyaları, metin mesajları, video dosyaları Yapılandırılmamış veri örnekleri: metin dosyaları, kısa mesajlar, video dosyaları
### Yarı Yapılandırılmış Veri ### Yarı Yapılandırılmış Veri
Yarı yapılandırılmış veri, yapılandırılmış ve yapılandırılmamış verinin bir kombinasyonu olmasını sağlayan özelliklere sahiptir. Genellikle satır ve sütun formatına uymaz ancak yapılandırılmış olarak kabul edilen bir şekilde organize edilmiştir ve sabit bir format veya bir dizi kurala uyabilir. Yapı, kaynaklar arasında değişiklik gösterebilir; iyi tanımlanmış bir hiyerarşiden, yeni bilgilerin kolayca entegre edilmesine izin veren daha esnek bir yapıya kadar. Meta veriler, verinin nasıl organize edildiğini ve saklandığını belirlemeye yardımcı olan göstergelerdir ve veri türüne bağlı olarak çeşitli isimlere sahip olacaktır. Meta veriler için yaygın isimler arasında etiketler, öğeler, varlıklar ve öznitelikler bulunur. Örneğin, tipik bir e-posta mesajı bir konu, gövde ve bir alıcılar setine sahip olacaktır ve kim tarafından veya ne zaman gönderildiğine göre organize edilebilir. Yarı yapılandırılmış veri, yapılandırılmış ile yapılandırılmamış verinin birleşimi özellikler taşır. Genellikle satır ve sütun formatına uymasa da yapılandırılmış şekilde düzenlenmiş olup sabit format veya kurallar seti izleyebilir. Yapı, iyi tanımlanmış bir hiyerarşiden yeni bilgilerin kolayca entegre edilmesine izin veren daha esnek yapılara kadar kaynaklar arasında değişebilir. Meta veriler, verinin nasıl düzenlendiği ve saklandığını belirlemeye yardımcı olan göstergelerdir ve veri tipine göre farklı isimler taşıyabilir. Meta verilerin bazı yaygın isimleri etiketler, elementler, varlıklar ve niteliklerdir. Örneğin, tipik bir e-posta mesajının bir konusu, gövdesi ve alıcıları vardır ve kim tarafından ya da ne zaman gönderildiğine göre düzenlenebilir.
Yarı yapılandırılmış veri örnekleri: HTML, CSV dosyaları, JavaScript Object Notation (JSON) Yarı yapılandırılmış veri örnekleri: HTML, CSV dosyaları, JavaScript Nesne Gösterimi (JSON)
## Veri Kaynakları ## Veri Kaynakları
Bir veri kaynağı, verinin oluşturulduğu veya "yaşadığı" ilk konumdur ve nasıl ve ne zaman toplandığına bağlı olarak değişiklik gösterebilir. Kullanıcı(lar) tarafından oluşturulan veri birincil veri olarak bilinirken, genel kullanım için veri toplayan bir kaynaktan gelen veri ikincil veri olarak kabul edilir. Örneğin, bir grup bilim insanının bir yağmur ormanında gözlemler toplaması birincil veri olarak kabul edilir ve bu veriyi diğer bilim insanlarıyla paylaşmaya karar verirlerse, bunu kullananlar için ikincil veri olarak kabul edilir. Veri kaynağı, verinin üretildiği ilk yerdir veya verinin "yaşadığı" yerdir ve ne zaman ve nasıl toplandığına göre değişir. Kullanıcıları tarafından üretilen veriler birincil veri olarak bilinirken, genel kullanım için veri toplayan kaynaktan gelen veriler ikincil veri olarak adlandırılır. Örneğin, bir grup bilim insanının bir yağmur ormanında yaptığı gözlemler birincil kabul edilir ve onları diğer bilim insanlarıyla paylaşırlarsa kullananlar için ikincil olur.
Veritabanları yaygın bir kaynaktır ve bir veritabanı yönetim sistemi, veriyi barındırmak ve korumak için kullanılır; kullanıcılar, veriyi keşfetmek için sorgu adı verilen komutlar kullanır. Dosyalar veri kaynakları olarak ses, görüntü ve video dosyaları ile Excel gibi elektronik tablolar olabilir. İnternet kaynakları, veritabanlarının yanı sıra dosyaların bulunabileceği yaygın bir veri barındırma yeridir. Uygulama programlama arayüzleri, API'ler olarak da bilinir, programcıların internet üzerinden harici kullanıcılarla veri paylaşma yolları oluşturmasına olanak tanır, web kazıma ise bir web sayfasından veri çıkarma işlemidir. [Veriyle Çalışma Dersleri](../../../../../../../../../2-Working-With-Data), çeşitli veri kaynaklarını nasıl kullanacağınızı öğrenmeye odaklanır. Veritabanları yaygın bir kaynaktır ve veriyi barındırmak ve yönetmek için veritabanı yönetim sistemi gerektirir; kullanıcılar veriyi keşfetmek için sorgu adı verilen komutları kullanır. Dosyalar da ses, görüntü ve video dosyaları ile Excel gibi elektronik tablolar olabilir. İnternet kaynakları veri barındırma için yaygın yerlerdir; burada hem veritabanları hem de dosyalar bulunabilir. Uygulama programlama arayüzleri (API'ler), programcıların veriyi dış kullanıcılarla internet üzerinden paylaşmanın yollarını oluşturmasını sağlar, web kazıma ise bir web sayfasından veri çıkarır. [Veri ile Çalışma](../../../../../../../../../2-Working-With-Data) dersleri çeşitli veri kaynaklarının nasıl kullanılacağını anlatır.
## Sonuç ## Sonuç
Bu derste öğrendik: Bu derste şunları öğrendik:
- Verinin ne olduğunu - Veri nedir
- Verinin nasıl tanımlandığını - Verinin nasıl tanımlandığı
- Verinin nasıl sınıflandırıldığını ve kategorize edildiğini - Veri nasıl sınıflandırılır ve kategorize edilir
- Verinin nerede bulunabileceğini - Veri nerede bulunur
## 🚀 Meydan Okuma ## 🚀 Meydan Okuma
Kaggle, açık veri kümeleri için mükemmel bir kaynaktır. [Veri kümesi arama aracı](https://www.kaggle.com/datasets) ile bazı ilginç veri kümeleri bulun ve 3-5 veri kümesini şu kriterlere göre sınıflandırın: Kaggle, açık veri setleri için mükemmel bir kaynaktır. [Veri seti arama aracını](https://www.kaggle.com/datasets) kullanarak ilginç veri setleri bulun ve 3-5 veri setini bu kriterlere göre sınıflandırın:
- Veri nicel mi yoksa nitel mi? - Veri nicel mi yoksa nitel mi?
- Veri yapılandırılmış, yapılandırılmamış mı yoksa yarı yapılandırılmış mı? - Veri yapılandırılmış, yapılandırılmamış mı yoksa yarı yapılandırılmış mı?
## [Ders Sonrası Testi](https://ff-quizzes.netlify.app/en/ds/quiz/5) ## [Ders Sonrası Quiz](https://ff-quizzes.netlify.app/en/ds/quiz/5)
## Gözden Geçirme ve Kendi Kendine Çalışma
- Bu Microsoft Learn birimi, [Verinizi Sınıflandırın](https://docs.microsoft.com/en-us/learn/modules/choose-storage-approach-in-azure/2-classify-data) başlıklı, yapılandırılmış, yarı yapılandırılmış ve yapılandırılmamış verinin ayrıntılı bir dökümüne sahiptir.
## İnceleme & Kendi Kendine Çalışma
- Bu Microsoft Learn ünitesi, [Veri formatlarını tanımlama](https://learn.microsoft.com/en-us/training/modules/explore-core-data-concepts/2-data-formats?pivots=text) yapılandırılmış, yarı yapılandırılmış ve yapılandırılmamış verinin detaylı bir dökümünü sunar.
## Ödev ## Ödev
[Veri Kümelerini Sınıflandırma](assignment.md) [Veri Setlerini Sınıflandırma](assignment.md)
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Feragatname**: **Feragatname**:
Bu belge, [Co-op Translator](https://github.com/Azure/co-op-translator) adlı yapay zeka çeviri hizmeti kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlama veya yanlış yorumlamalardan sorumlu değiliz. Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu ortaya çıkabilecek yanlış anlamalardan veya yanlış yorumlamalardan sorumlu değiliz.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -5,7 +5,7 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"# Olasılık ve İstatistiğe Giriş\n", "# Olasılık ve İstatistiğe Giriş\n",
"Bu not defterinde, daha önce tartıştığımız bazı kavramlarla oynayacağız. Olasılık ve istatistiğin birçok kavramı, Python'da veri işleme için kullanılan `numpy` ve `pandas` gibi büyük kütüphanelerde iyi bir şekilde temsil edilmektedir.\n" "Bu defterde, daha önce tartıştığımız bazı kavramlarla oynayacağız. Olasılık ve istatistiğin birçok kavramı, Python'da veri işleme için kullanılan önemli kütüphanelerde, örneğin `numpy` ve `pandas` içinde iyi temsil edilmektedir.\n"
] ]
}, },
{ {
@ -25,7 +25,7 @@
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Rastgele Değişkenler ve Dağılımlar\n", "## Rastgele Değişkenler ve Dağılımlar\n",
"0 ile 9 arasında uniform bir dağılımdan 30 değerlik bir örneklem çizmeyle başlayalım. Ayrıca ortalama ve varyansı da hesaplayacağız.\n" "0'dan 9'a kadar olan uniform bir dağılımdan 30 değerden oluşan bir örnek çizerek başlayalım. Ayrıca ortalama ve varyansı da hesaplayacağız.\n"
] ]
}, },
{ {
@ -44,7 +44,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Örnekte kaç farklı değer olduğunu görsel olarak tahmin etmek için **histogram** çizebiliriz:\n" "Örnekte kaç farklı değer olduğunu görsel olarak tahmin etmek için, **histogram** çizebiliriz:\n"
] ]
}, },
{ {
@ -63,7 +63,7 @@
"source": [ "source": [
"## Gerçek Verilerin Analizi\n", "## Gerçek Verilerin Analizi\n",
"\n", "\n",
"Ortalama ve varyans, gerçek dünya verilerini incelerken çok önemlidir. [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights) sitesinden beyzbol oyuncularına ait verileri yükleyelim.\n" "Ortalama ve varyans, gerçek dünya verilerini analiz ederken çok önemlidir. [SOCR MLB Height/Weight Data](http://wiki.stat.ucla.edu/socr/index.php/SOCR_Data_MLB_HeightsWeights) sitesinden beyzbol oyuncularına ait verileri yükleyelim\n"
] ]
}, },
{ {
@ -80,7 +80,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> Burada veri analizi için [**Pandas**](https://pandas.pydata.org/) adlı bir paket kullanıyoruz. Pandas ve Python'da veri ile çalışma konusu kursun ilerleyen bölümlerinde daha ayrıntılı ele alınacaktır.\n", "> Burada veri analizi için [**Pandas**](https://pandas.pydata.org/) adlı bir paket kullanıyoruz. Bu derste daha sonra Pandas ve Python ile veri ile çalışma hakkında daha fazla konuşacağız.\n",
"\n", "\n",
"Yaş, boy ve kilo için ortalama değerleri hesaplayalım:\n" "Yaş, boy ve kilo için ortalama değerleri hesaplayalım:\n"
] ]
@ -98,7 +98,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Şimdi yükseklik üzerine odaklanalım ve standart sapma ile varyansı hesaplayalım:\n" "Şimdi yükseklik üzerine odaklanalım ve standart sapma ile varyansı hesaplayalım: \n"
] ]
}, },
{ {
@ -126,7 +126,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Ortalamanın yanı sıra, medyan değeri ve çeyrek değerlerine bakmak da mantıklıdır. Bunlar bir **kutu grafiği** kullanılarak görselleştirilebilir:\n" "Ortalama değerinin yanı sıra, medyan değere ve çeyrekliklere bakmak mantıklıdır. Bunlar **kutu grafiği** kullanılarak görselleştirilebilir:\n"
] ]
}, },
{ {
@ -136,7 +136,7 @@
"outputs": [], "outputs": [],
"source": [ "source": [
"plt.figure(figsize=(10,2))\n", "plt.figure(figsize=(10,2))\n",
"plt.boxplot(df['Height'].ffill(), vert=False, showmeans=True)\n", "plt.boxplot(df['Height'].ffill(), orientation='horizontal', showmeans=True)\n",
"plt.grid(color='gray', linestyle='dotted')\n", "plt.grid(color='gray', linestyle='dotted')\n",
"plt.tight_layout()\n", "plt.tight_layout()\n",
"plt.show()" "plt.show()"
@ -146,7 +146,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Veri setimizin alt kümelerinin kutu grafikleri de oluşturabiliriz, örneğin, oyuncu rolüne göre gruplanmış olarak.\n" "Veri setimizin alt kümelemelerini de kutu grafiklerle gösterebiliriz, örneğin oyuncu rolüne göre gruplanmış olarak.\n"
] ]
}, },
{ {
@ -165,9 +165,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> **Not**: Bu diyagram, ortalama olarak birinci kale oyuncularının boylarının ikinci kale oyuncularının boylarından daha uzun olduğunu göstermektedir. Daha sonra, bu hipotezi daha resmi olarak nasıl test edebileceğimizi ve verilerimizin bunu göstermek için istatistiksel olarak anlamlı olduğunu nasıl kanıtlayabileceğimizi öğreneceğiz. \n", "> **Not**: Bu diyagram, ortalama olarak birinci baz oyuncularının boylarının ikinci baz oyuncularının boylarından daha uzun olduğunu göstermektedir. Daha sonra bu hipotezi daha resmi olarak nasıl test edeceğimizi ve verilerimizin bunu göstermek için istatistiksel olarak nasıl anlamlı olduğunu nasıl kanıtlayacağımızı öğreneceğiz. \n",
"\n", "\n",
"Yaş, boy ve kilo sürekli rastgele değişkenlerdir. Sizce bunların dağılımı nedir? Bunu anlamanın iyi bir yolu değerlerin histogramını çizmektir: \n" "Yaş, boy ve kilo hepsi sürekli rastgele değişkenlerdir. Sizce bunların dağılımı nedir? Öğrenmenin iyi bir yolu, değerlerin histogramını çizmektir: \n"
] ]
}, },
{ {
@ -190,7 +190,7 @@
"source": [ "source": [
"## Normal Dağılım\n", "## Normal Dağılım\n",
"\n", "\n",
"Gerçek verilerimizle aynı ortalama ve varyansa sahip normal dağılımı takip eden yapay bir ağırlık örneği oluşturalım:\n" "Gerçek verilerimizle aynı ortalama ve varyansa sahip normal dağılımı izleyen yapay bir ağırlık örneği oluşturalım:\n"
] ]
}, },
{ {
@ -231,7 +231,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Gerçek hayattaki değerlerin çoğu normal dağıldığı için, örnek veri oluşturmak için uniform rastgele sayı üreteci kullanmamalıyız. İşte uniform dağılımla ağırlık oluşturmaya çalışırsak ( `np.random.rand` tarafından oluşturulan) ne olur:\n" "Gerçek hayattaki çoğu değer normal dağılım gösterdiğinden, örnek veri oluşturmak için uniform rastgele sayı üreteci kullanmamalıyız. İşte uniform dağılım kullanarak ağırlıklar üretmeye çalıştığımızda ( `np.random.rand` ile üretilen) olanlar:\n"
] ]
}, },
{ {
@ -253,7 +253,7 @@
"source": [ "source": [
"## Güven Aralıkları\n", "## Güven Aralıkları\n",
"\n", "\n",
"Şimdi beyzbol oyuncularının kilo ve boyları için güven aralıklarını hesaplayalım. [Bu stackoverflow tartışmasından](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data) kodu kullanacağız:\n" "Şimdi beyzbol oyuncularının ırlıkları ve boyları için güven aralıklarını hesaplayalım. Kodu [bu stackoverflow tartışmasından](https://stackoverflow.com/questions/15033511/compute-a-confidence-interval-from-sample-data) kullanacağız:\n"
] ]
}, },
{ {
@ -272,7 +272,7 @@
" return m, h\n", " return m, h\n",
"\n", "\n",
"for p in [0.85, 0.9, 0.95]:\n", "for p in [0.85, 0.9, 0.95]:\n",
" m, h = mean_confidence_interval(df['Weight'].fillna(method='pad'),p)\n", " m, h = mean_confidence_interval(df['Weight'].ffill(),p)\n",
" print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")" " print(f\"p={p:.2f}, mean = {m:.2f} ± {h:.2f}\")"
] ]
}, },
@ -282,7 +282,7 @@
"source": [ "source": [
"## Hipotez Testi\n", "## Hipotez Testi\n",
"\n", "\n",
"Hadi beyzbol oyuncuları veri setimizde farklı rolleri inceleyelim:\n" "Hadi beyzbol oyuncuları veri setimizdeki farklı rolleri inceleyelim:\n"
] ]
}, },
{ {
@ -298,7 +298,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Birinci Kale Oyuncularının İkinci Kale Oyuncularından daha uzun olduğu hipotezini test edelim. Bunu yapmanın en basit yolu güven aralıklarını test etmektir:\n" "Birinci Kalecilerin İkinci Kalecilerden daha uzun olduğu hipotezini test edelim. Bunu yapmanın en basit yolu güven aralıklarını test etmektir:\n"
] ]
}, },
{ {
@ -317,9 +317,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Aralıkların çakışmadığını görebiliyoruz.\n", "Aralıkların örtüşmediğini görebiliyoruz.\n",
"\n", "\n",
"Hipotezi kanıtlamak için istatistiksel olarak daha doğru bir yol **Student t-testi** kullanmaktır:\n" "Hipotezi kanıtlamak için istatistiksel olarak daha doğru bir yol, **Student t-testi** kullanmaktır:\n"
] ]
}, },
{ {
@ -338,18 +338,18 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"`ttest_ind` fonksiyonunun döndürdüğü iki değer şunlardır:\n", "`ttest_ind` fonksiyonu tarafından döndürülen iki değer şunlardır:\n",
"* p-değeri, iki dağılımın aynı ortalamaya sahip olma olasılığı olarak düşünülebilir. Bizim durumumuzda, bu çok düşüktür, bu da ilk baz oyuncularının daha uzun olduğunu destekleyen güçlü kanıt olduğu anlamına gelir.\n", "* p-değeri, iki dağılımın aynı ortalamaya sahip olma olasılığı olarak düşünülebilir. Bizim durumumuzda, bu çok düşük, bu da ilk basemanların daha uzun olduğuna dair güçlü kanıtlar olduğu anlamına gelir.\n",
"* t-değeri, t-testinde kullanılan normalize edilmiş ortalama farkının ara değeridir ve belirli bir güven değeri için eşik değerle karşılaştırılır.\n" "* t-değeri, t-testinde kullanılan normalize edilmiş ortalama farkının ara değeridir ve verilen bir güven değeri için bir eşik değeriyle karşılaştırılır.\n"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Merkezi Limit Teoremi ile Normal Dağılım Simülasyonu\n", "## Merkezi Limit Teoremi ile Normal Dağılımın Simülasyonu\n",
"\n", "\n",
"Python'daki sahte rasgele sayı üreteci, bize uniform dağılım sağlaması için tasarlanmıştır. Normal dağılım için bir üreteç oluşturmak istiyorsak, merkezi limit teoremini kullanabiliriz. Normal dağılımlı bir değer elde etmek için, uniform dağılım kullanılarak oluşturulan bir örneklemin ortalamasını hesaplarız.\n" "Python'daki sahte-rasgele üreteç, bize bir uniform dağılım vermek için tasarlanmıştır. Eğer normal dağılım için bir üreteç oluşturmak istiyorsak, merkezi limit teoremini kullanabiliriz. Normal dağılım gösteren bir değer elde etmek için, uniform olarak üretilmiş bir örneklem kümesinin ortalamasını hesaplayacağız.\n"
] ]
}, },
{ {
@ -373,9 +373,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Korelasyon ve Kötü Niyetli Beyzbol Şirketi\n", "## Korelasyon ve Kötü Beyzbol Şirketi\n",
"\n", "\n",
"Korelasyon, veri dizileri arasındaki ilişkileri bulmamıza olanak tanır. Oyuncak örneğimizde, kötücül bir beyzbol şirketinin oyuncularına boylarına göre ödeme yaptığını varsayalım - oyuncu ne kadar uzunsa, o kadar çok para kazanır. Diyelim ki bir taban maaş 1000 $ ve boy uzunluğuna bağlı olarak 0 ile 100 $ arasında ek bir bonus vardır. MLB'den gerçek oyuncuları alacağız ve hayali maaşlarını hesaplayacağız:\n" "Korelasyon, veri dizileri arasındaki ilişkileri bulmamıza olanak tanır. Oyuncak örneğimizde, kötü bir beyzbol şirketinin oyuncularına boylarına göre ödeme yaptığını varsayalım - oyuncu ne kadar uzun olursa, o kadar fazla para kazanır. Taban maaşın 1000$, artı boya bağlı olarak 0 ila 100$ arasında ek bir prim olduğunu düşünelim. Gerçek MLB oyuncularını alıp, hayali maaşlarını hesaplayacağız:\n"
] ]
}, },
{ {
@ -384,7 +384,7 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"heights = df['Height'].fillna(method='pad')\n", "heights = df['Height'].ffill()\n",
"salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n", "salaries = 1000+(heights-heights.min())/(heights.max()-heights.mean())*100\n",
"print(list(zip(heights, salaries))[:10])" "print(list(zip(heights, salaries))[:10])"
] ]
@ -393,7 +393,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Şimdi bu dizilerin kovaryansını ve korelasyonunu hesaplayalım. `np.cov` bize çoklu değişkenlere genişletilmiş olan **kovaryans matrisini** verecektir. Kovaryans matrisi $M$'nin elemanı $M_{ij}$, giriş değişkenleri $X_i$ ve $X_j$ arasındaki bir korelasyondur ve çapraz değerler $M_{ii}$, $X_{i}$'nin varyansıdır. Benzer şekilde, `np.corrcoef` bize **korelasyon matrisini** verecektir.\n" "Şimdi bu dizilerin kovaryansını ve korelasyonunu hesaplayalım. `np.cov` bize çok değişkenli kovaryansın bir uzantısı olan **kovaryans matrisi** verecektir. Kovaryans matrisi $M$'nin elemanı $M_{ij}$, giriş değişkenleri $X_i$ ve $X_j$ arasındaki korelasyondur ve köşegen değerleri $M_{ii}$, $X_{i}$ değişkeninin varyansıdır. Benzer şekilde, `np.corrcoef` bize **korelasyon matrisi** verecektir. \n"
] ]
}, },
{ {
@ -411,7 +411,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Bir korelasyonun 1'e eşit olması, iki değişken arasında güçlü bir **doğrusal ilişki** olduğu anlamına gelir. Doğrusal ilişkiyi, bir değeri diğerine karşı çizerek görsel olarak görebiliriz:\n" "1'e eşit bir korelasyon, iki değişken arasında güçlü bir **doğrusal ilişki** olduğu anlamına gelir. Bir değeri diğerine karşı çizerek doğrusal ilişkiyi görsel olarak görebiliriz:\n"
] ]
}, },
{ {
@ -430,7 +430,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"İlişki doğrusal değilse ne olur, buna bakalım. Diyelim ki şirketimiz, boylar ile maaşlar arasındaki bariz doğrusal bağımlılığı gizlemeye karar verdi ve formüle `sin` gibi bazı doğrusal olmayanlıklar ekledi:\n" "İlişkinin doğrusal olmadığı durumda ne olacağını görelim. Diyelim ki şirketimiz, boylar ve maaşlar arasındaki bariz doğrusal bağı gizlemeye karar verdi ve formüle `sin` gibi bazı doğrusal olmayanlıklar ekledi:\n"
] ]
}, },
{ {
@ -447,7 +447,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Bu durumda, korelasyon biraz daha küçük, ancak yine de oldukça yüksek. Şimdi, ilişkiyi daha az belirgin hale getirmek için maaşa bazı rastgele değişkenler ekleyerek ekstra rastgelelik katmak isteyebiliriz. Bakalım ne olacak:\n" "Bu durumda, korelasyon biraz daha küçük, ancak yine de oldukça yüksek. Şimdi, ilişkiyi daha az belirgin hale getirmek için maaşa rastgele bir değişken ekleyerek biraz ekstra rastgelelik katmak isteyebiliriz. Ne olduğunu görelim:\n"
] ]
}, },
{ {
@ -476,7 +476,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> Noktaların neden bu şekilde dikey çizgiler halinde sıralandığını tahmin edebilir misiniz?\n", "> Noktaların neden bu şekilde dikey çizgiler halinde dizildiğini tahmin edebilir misiniz?\n",
"\n", "\n",
"Maaş gibi yapay olarak tasarlanmış bir kavram ile gözlemlenen değişken *boy* arasındaki korelasyonu gözlemledik. Şimdi de boy ve kilo gibi iki gözlemlenen değişkenin birbirleriyle korelasyon gösterip göstermediğine bakalım:\n" "Maaş gibi yapay olarak tasarlanmış bir kavram ile gözlemlenen değişken *boy* arasındaki korelasyonu gözlemledik. Şimdi de boy ve kilo gibi iki gözlemlenen değişkenin birbirleriyle korelasyon gösterip göstermediğine bakalım:\n"
] ]
@ -494,11 +494,11 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Maalesef, herhangi bir sonuç alamadık - sadece bazı garip `nan` değerler. Bu, serimizdeki bazı değerlerin tanımsız olması, `nan` olarak temsil edilmesi ve bunun işlemin sonucunun da tanımsız olmasına neden olmasıdır. Matrikse baktığımızda, `Weight` sütununun problemin kaynağı olduğunu görebiliriz, çünkü `Height` değerleri arasındaki kendi kendine korelasyon hesaplanmıştır.\n", "Ne yazık ki, herhangi bir sonuç alamadık - sadece bazı garip `nan` değerleri oldu. Bu, serimizdeki bazı değerlerin tanımsız olması ve `nan` ile temsil edilmesi nedeniyle, işlemin sonucunun da tanımsız olmasına yol açar. Matrisi incelediğimizde, sorunlu sütunun `Weight` olduğu görülüyor, çünkü `Height` değerleri arasındaki kendi kendine korelasyon hesaplanmış.\n",
"\n", "\n",
"> Bu örnek, **veri hazırlama** ve **temizleme**nin önemini göstermektedir. Doğru veriler olmadan hiçbir şey hesaplayamayız.\n", "> Bu örnek, **veri hazırlama** ve **temizleme** nin önemini gösteriyor. Uygun veri olmadan hiçbir şey hesaplayamayız.\n",
"\n", "\n",
"Eksik değerleri doldurmak için `fillna` metodunu kullanalım ve korelasyonu hesaplayalım: \n" "Eksik değerleri doldurmak için `fillna` yöntemini kullanalım ve korelasyonu hesaplayalım: \n"
] ]
}, },
{ {
@ -507,14 +507,14 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"np.corrcoef(df['Height'].fillna(method='pad'), df['Weight'])" "np.corrcoef(df['Height'].ffill(), df['Weight'])"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Gerçekten bir korelasyon vardır, ancak bizim yapay örneğimizdeki kadar güçlü değildir. Gerçekten de, bir değeri diğerine karşı gösteren dağılım grafiğine bakarsak, ilişki çok daha az belirgin olacaktır:\n" "Gerçekten bir korelasyon var, ancak yapay örneğimizdeki kadar güçlü değil. Gerçekten de, bir değerin diğerine karşı dağılım grafiğine bakarsak, ilişkinin çok daha az belirgin olacağını görürüz:\n"
] ]
}, },
{ {
@ -537,14 +537,14 @@
"source": [ "source": [
"## Sonuç\n", "## Sonuç\n",
"\n", "\n",
"Bu not defterinde, istatistiksel fonksiyonları hesaplamak için veri üzerinde temel işlemlerin nasıl yapılacağını öğrendik. Artık bazı hipotezleri kanıtlamak için sağlam bir matematik ve istatistik düzenini nasıl kullanacağımızı ve veri örneği verilmiş rastgele değişkenler için güven aralıklarının nasıl hesaplanacağını biliyoruz.\n" "Bu not defterinde, istatistiksel fonksiyonları hesaplamak için veriler üzerinde temel işlemlerin nasıl yapılacağını öğrendik. Artık bazı hipotezleri kanıtlamak için sağlam bir matematik ve istatistik aracı kullanmayı ve bir veri örneği verildiğinde keyfi değişkenler için güven aralıklarını nasıl hesaplayacağımızı biliyoruz. \n"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Feragatname**: \nBu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hatalar veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu oluşabilecek yanlış anlamalar veya yanlış yorumlardan sorumlu tutulmayız.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n" "---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Feragatname**:\nBu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu ortaya çıkabilecek yanlış anlamalardan veya yanlış yorumlamalardan sorumlu değiliz.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
] ]
} }
], ],
@ -568,12 +568,6 @@
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.9.6" "version": "3.9.6"
},
"coopTranslator": {
"original_hash": "0f899e3c5019f948e7c787b22f3b2304",
"translation_date": "2026-01-16T13:51:51+00:00",
"source_file": "1-Introduction/04-stats-and-probability/notebook.ipynb",
"language_code": "tr"
} }
}, },
"nbformat": 4, "nbformat": 4,

@ -8,7 +8,7 @@
"\n", "\n",
"## Veri Yükleme\n", "## Veri Yükleme\n",
"\n", "\n",
"Johns Hopkins Üniversitesi ([Johns Hopkins University](https://jhu.edu/)) bünyesindeki [Sistemler Bilimi ve Mühendisliği Merkezi](https://systems.jhu.edu/) (CSSE) tarafından sağlanan COVID-19 enfekte bireylerine ait verileri kullanacağız. Veri seti bu [GitHub Deposu](https://github.com/CSSEGISandData/COVID-19) içinde mevcuttur.\n" "Johns Hopkins Üniversitesi'nin [Sistem Bilimleri ve Mühendislik Merkezi](https://systems.jhu.edu/) (CSSE) tarafından sağlanan COVID-19 enfekte bireylerle ilgili verileri kullanacağız. Veri seti [bu GitHub Deposu](https://github.com/CSSEGISandData/COVID-19) üzerinden erişilebilir.\n"
] ]
}, },
{ {
@ -27,7 +27,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"En güncel veriyi doğrudan GitHub'dan `pd.read_csv` ile yükleyebiliriz. Veri herhangi bir nedenle kullanılamazsa, her zaman `data` klasöründe bulunan yerel kopyayı kullanabilirsiniz - `base_url`'i tanımlayan aşağıdaki satırın yorumunu kaldırmanız yeterlidir:\n" "En güncel verileri doğrudan GitHubdan `pd.read_csv` kullanarak yükleyebiliriz. Veri herhangi bir nedenle mevcut değilse, her zaman yerel olarak `data` klasöründe bulunan kopyayı kullanabilirsiniz - sadece `base_url`'i tanımlayan aşağıdaki satırın yorumunu kaldırmanız yeterlidir:\n"
] ]
}, },
{ {
@ -265,7 +265,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Tablonun her satırının her ülke ve/veya il için enfekte olmuş bireylerin sayısını belirttiğini ve sütunların tarihlere karşılık geldiğini görebiliriz. Benzer tablolar iyileşen kişi sayısı ve ölüm sayısı gibi diğer veriler için de yüklenebilir.\n" "Tabloya her satırın her ülke ve/veya il için hasta sayısını tanımladığı ve sütunların tarihlere karşılık geldiği görülmektedir. Benzer tablolar iyileşen sayısı ve ölüm sayısı gibi diğer veriler için de yüklenebilir.\n"
] ]
}, },
{ {
@ -284,7 +284,7 @@
"source": [ "source": [
"## Verilerin Anlamlandırılması\n", "## Verilerin Anlamlandırılması\n",
"\n", "\n",
"Yukarıdaki tablodan province sütununun rolü net değil. `Province/State` sütununda bulunan farklı değerlere bakalım:\n" "Yukarıdaki tablodan, il sütununun rolü net değil. `Province/State` sütununda bulunan farklı değerleri görelim:\n"
] ]
}, },
{ {
@ -322,7 +322,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"İsimlerden, Avustralya ve Çin gibi ülkelerin illere göre daha ayrıntılı bir ayrımı olduğunu çıkarabiliriz. Örnek görmek için Çin hakkında bilgi arayalım:\n" "İsimlerden Avustralya ve Çin gibi ülkelerin eyaletlere göre daha ayrıntılı bir dökümüne sahip olduğunu çıkarabiliriz. Örnek görmek için Çin hakkında bilgi arayalım:\n"
] ]
}, },
{ {
@ -1321,9 +1321,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Verileri Ön İşleme\n", "## Veriyi Ön İşleme \n",
"\n", "\n",
"Ülkeleri daha küçük bölgelere ayırmakla ilgilenmiyoruz, bu nedenle öncelikle bu ayrımı kaldırıp tüm bölgelerin bilgilerini birleştirerek ülkenin tamamı için bilgi alacağız. Bu, `groupby` kullanılarak yapılabilir:\n" "Ülkeleri daha küçük bölgelere ayırmakla ilgilenmiyoruz, bu yüzden önce bu ayrımı kaldırıp tüm bölgelerin bilgilerini bir araya ekleyerek ülkenin tamamı için bilgi alacağız. Bu, `groupby` kullanılarak yapılabilir:\n"
] ]
}, },
{ {
@ -1578,7 +1578,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"`groupby` kullanımı sayesinde tüm DataFrame'lerin artık Ülke/Bölge tarafından indekslendiğini görebilirsiniz. Bu nedenle belirli bir ülkenin verilerine `.loc` kullanarak erişebiliriz:|\n" "`groupby` kullanımı nedeniyle tüm DataFrame'lerin artık Ülke/Bölge tarafından indekslendiğini görebilirsiniz. Böylece `.loc` kullanarak belirli bir ülkenin verilerine erişebiliriz:|\n"
] ]
}, },
{ {
@ -1607,7 +1607,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"> **Not** olarak, bir dizideki ilk üç elemanı kaldırmak için `[3:]` kullanmamıza dikkat edin (İl/Şehir ve coğrafi konum sütunları gibi tarih dışı meta veriler içerir). Bu üç sütunu tamamen de kaldırabiliriz:\n" "> **Not** olarak, tarih dışı meta veriler içeren dizinin ilk üç öğesini (Eyalet/Vilayet ve coğrafi konum sütunları) kaldırmak için `[3:]` kullandığımızı görebilirsiniz. Bu üç sütunu tamamen de kaldırabiliriz:\n"
] ]
}, },
{ {
@ -1625,7 +1625,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"## Verileri Araştırma\n", "## Veriyi İnceleme\n",
"\n", "\n",
"Şimdi belirli bir ülkeyi incelemeye geçelim. Tarihe göre indekslenmiş enfeksiyon verilerini içeren bir çerçeve oluşturalım:\n" "Şimdi belirli bir ülkeyi incelemeye geçelim. Tarihe göre indekslenmiş enfeksiyon verilerini içeren bir çerçeve oluşturalım:\n"
] ]
@ -1852,7 +1852,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Verilerde haftalık dalgalanmalar olduğu açıkça görülüyor. Trendleri görebilmek istediğimiz için, eğriyi düzgünleştirmek mantıklıdır; bunun için hareketli ortalama hesaplanacaktır (yani her gün için önceki birkaç günün ortalama değeri hesaplanacaktır):\n" "Verilerde ıkça haftalık dalgalanmalar var gibi görünüyor. Trendleri görebilmek istediğimiz için eğriyi yumuşatmak amacıyla hareketli ortalama hesaplamak mantıklıdır (yani her gün için önceki birkaç günün ortalamasını hesaplayacağız):\n"
] ]
}, },
{ {
@ -1882,7 +1882,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Birden fazla ülkeyi karşılaştırabilmek için, ülkenin nüfusunu göz önünde bulundurmak ve enfekte olan bireylerin ülke nüfusuna göre yüzdesini karşılaştırmak isteyebiliriz. Ülke nüfusunu elde etmek için, ülkelerin veri setini yükleyelim:\n" "Birden fazla ülkeyi karşılaştırabilmek için, ülkenin nüfusunu dikkate almak ve enfekte bireylerin ülke nüfusuna göre yüzdesini karşılaştırmak isteyebiliriz. Ülkenin nüfusunu elde etmek için, ülkeler veri setini yükleyelim:\n"
] ]
}, },
{ {
@ -2153,7 +2153,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Bu veri seti hem ülkeler hem de iller hakkında bilgi içerdiği için, tüm ülkenin nüfusunu almak için biraz daha zekice olmamız gerekiyor:\n" "Bu veri seti hem ülkeler hem de iller hakkında bilgi içerdiği için, tüm ülkenin nüfusunu almak için biraz zeki olmamız gerekiyor: \n"
] ]
}, },
{ {
@ -2261,13 +2261,15 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"\n",
"## $R_t$ Hesaplama\n", "## $R_t$ Hesaplama\n",
"\n", "\n",
"Hastalığın ne kadar bulaşıcı olduğunu görmek için, enfekte olan bir kişinin kaç kişiyi daha enfekte edeceğini gösteren **temel üreme sayısı** $R_0$'a bakarız. $R_0$ 1'den büyük olduğunda, salgının yayılması muhtemeldir.\n", "Hastalığın ne kadar bulaşıcı olduğunu görmek için, enfekte bir kişinin daha kaç kişiyi enfekte edeceğini gösteren **temel üreme sayısı** $R_0$'a bakarız. $R_0$ 1'den büyük olduğunda, salgının yayılması muhtemeldir.\n",
"\n", "\n",
"$R_0$ hastalığın kendine özgü bir özelliğidir ve pandemiyi yavaşlatmak için insanların alabileceği bazı koruyucu önlemleri dikkate almaz. Pandeminin ilerlemesi sırasında, herhangi bir zaman $t$'de üreme sayısı $R_t$ tahmin edilebilir. Bu sayının, yaklaşık olarak 8 günlük bir pencere alınarak ve aşağıdaki şekilde hesaplanarak tahmin edilebileceği gösterilmiştir: $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$ burada $I_t$, t günündeki yeni enfekte bireylerin sayısıdır.\n", "$R_0$ hastalığın kendine ait bir özelliğidir ve insanların pandemi sürecini yavaşlatmak için alabileceği bazı koruyucu önlemleri hesaba katmaz. Pandemi ilerlerken, herhangi bir $t$ zamanında üreme sayısı $R_t$ tahmin edilebilir. Bu sayının yaklaşık olarak, 8 günlük bir pencere alınarak ve $$R_t=\\frac{I_{t-7}+I_{t-6}+I_{t-5}+I_{t-4}}{I_{t-3}+I_{t-2}+I_{t-1}+I_t}$$ formülü kullanılarak hesaplanabileceği gösterilmiştir.\n",
"burada $I_t$ $t$ gününde yeni enfekte olmuş bireylerin sayısıdır.\n",
"\n", "\n",
"Pandemi verilerimiz için $R_t$'yi hesaplayalım. Bunu yapmak için, 8 günlük `ninfected` değerlerinden oluşan kayan bir pencere alacak ve yukarıdaki oranı hesaplamak için fonksiyonu uygulayacağız:\n" "Salgın verilerimiz için $R_t$ hesaplayalım. Bunu yapmak için, 8 günlük kayan bir pencere ile `ninfected` değerlerini alacağız ve yukarıdaki oranı hesaplamak için fonksiyonu uygulayacağız:\n"
] ]
}, },
{ {
@ -2297,9 +2299,9 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Grafikte bazı boşluklar olduğunu görebilirsiniz. Bunlar, veri setinde bulunan `NaN` veya `inf` değerlerinden kaynaklanabilir. `inf`, 0'a bölünme sonucu oluşabilir ve `NaN` eksik veriyi veya sonucu hesaplamak için kullanılabilir veri olmadığını gösterebilir (örneğin, genişliği 8 olan kayan pencerenin henüz mevcut olmadığı çerçevenin en başında olduğu gibi). Grafiği daha düzgün yapmak için bu değerleri `replace` ve `fillna` fonksiyonları ile doldurmamız gerekmektedir.\n", "Grafikte bazı boşluklar olduğunu görebilirsiniz. Bunlar ya veri setinde bulunan `NaN` ya da `inf` değerlerinden kaynaklanabilir. `inf`, sıfıra bölme nedeniyle oluşabilir ve `NaN` eksik veriyi ya da sonucu hesaplamak için veri olmayışını gösterebilir (örneğin, çerçevemizin en başında, genişliği 8 olan kayan pencerenin henüz mevcut olmadığı yerde). Grafiği daha güzel yapmak için bu değerleri `replace` ve `fillna` fonksiyonlarını kullanarak doldurmamız gerekir.\n",
"\n", "\n",
"Pandeminin başlangıcına daha yakından bakalım. Ayrıca daha iyi görmek için y-eksenindeki değerleri 6'nın altıyla sınırlandıracağız ve 1 değerinde yatay bir çizgi çizeceğiz.\n" "Pandeminin başlangıcına daha yakından bakalım. Ayrıca daha iyi görebilmek için y-eksenindeki değerleri 6'nın altıyla sınırlayacağız ve 1 değerinde yatay çizgi çizeceğiz.\n"
] ]
}, },
{ {
@ -2330,7 +2332,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Pandeminin başka bir ilginç göstergesi ise **türev**, yani yeni vakalardaki **günlük fark**tır. Bu, pandeminin ne zaman arttığını veya azaldığını net bir şekilde görmemizi sağlar.\n" "Pandeminin başka ilginç bir göstergesi, yeni vakalardaki **türev** veya **günlük fark**tır. Bu, pandeminin ne zaman arttığını veya azaldığını net bir şekilde görmemizi sağlar. \n"
] ]
}, },
{ {
@ -2359,7 +2361,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"Raporlamadan kaynaklanan birçok dalgalanma olduğu gerçeği göz önüne alındığında, genel resmi elde etmek için eğriyi yuvarlak ortalama çalıştırarak düzleştirmek mantıklıdır. Pandeminin ilk aylarına tekrar odaklanalım:\n" "Raporlamadan kaynaklanan çok sayıda dalgalanma olduğu gerçeği göz önüne alındığında, genel resmi elde etmek için eğriyi yuvarlak ortalama çalıştırarak düzleştirmek mantıklıdır. Tekrar pandeminin ilk aylarına odaklanalım:\n"
] ]
}, },
{ {
@ -2389,14 +2391,15 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"\n",
"## Meydan Okuma\n", "## Meydan Okuma\n",
"\n", "\n",
"Şimdi kod ve veri ile daha fazla oynamanın zamanı geldi! İşte deneyebileceğiniz birkaç öneri:\n", "Şimdi kod ve veriyle daha fazla oynamanın zamanı geldi! İşte deneyebileceğiniz birkaç öneri:\n",
"* Pandeminin farklı ülkelerdeki yayılımını görün.\n", "* Pandeminin farklı ülkelerdeki yayılımını görün.\n",
"* Karşılaştırma için birden fazla ülke için $R_t$ grafiklerini tek bir grafikte çizin veya yan yana birkaç grafik oluşturun.\n", "* Birkaç ülkenin $R_t$ grafiklerini karşılaştırmak için tek bir grafikte ya da yan yana birkaç grafikte çizin\n",
"* Ölüm ve iyileşme sayılarının enfekte vaka sayısı ile nasıl ilişkili olduğunu inceleyin.\n", "* Ölüm ve iyileşme sayılarının enfekte vaka sayısı ile nasıl ilişkili olduğunu görün.\n",
"* Enfeksiyon oranı ve ölüm oranını görsel olarak ilişkilendirerek tipik bir hastalığın ne kadar sürdüğünü bulmaya çalışın ve bazı anormalliklere bakın. Bunu öğrenmek için farklı ülkelere bakmanız gerekebilir.\n", "* Enfeksiyon oranı ve ölüm oranını görsel olarak karşılaştırarak tipik bir hastalığın ne kadar sürdüğünü ve bazı anormalliklerin olup olmadığını bulmaya çalışın. Bunu anlamak için farklı ülkelere bakmanız gerekebilir.\n",
"* Vefat oranını hesaplayın ve zamanla nasıl değiştiğini inceleyin. Hesaplamaları yapmadan önce hastalığın gün cinsinden süresini dikkate alarak bir zaman serisini kaydırmak isteyebilirsiniz.\n" "* Ölümlülük oranını hesaplayın ve zaman içinde nasıl değiştiğini görün. Hesaplamalar yapmadan önce hastalığın gün cinsinden süresini de dikkate alarak bir zaman serisini kaydırmanız gerekebilir.\n"
] ]
}, },
{ {
@ -2405,10 +2408,10 @@
"source": [ "source": [
"## Referanslar\n", "## Referanslar\n",
"\n", "\n",
"COVID salgınının yayılımı üzerine daha fazla çalışmayı aşağıdaki yayınlarda inceleyebilirsiniz:\n", "COVID salgınının yayılımına dair daha fazla çalışmayı aşağıdaki yayınlarda inceleyebilirsiniz:\n",
"* [COVID Pandemisi Süresince Rt Tahmini için Kayar SIR Modeli](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/), [Dmitry Soshnikov](http://soshnikov.com) tarafından yazılmış blog yazısı\n", "* [COVID Pandemisi sırasında Rt Tahmini için Kaydırmalı SIR Modeli](https://soshnikov.com/science/sliding-sir-model-for-rt-estimation/), [Dmitry Soshnikov](http://soshnikov.com) tarafından blog yazısı\n",
"* T.Petrova, D.Soshnikov, A.Grunin. [Küresel COVID-19 Salgını için Zamanla Değişen Üreme Sayısının Tahmini](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n", "* T.Petrova, D.Soshnikov, A.Grunin. [Küresel COVID-19 Salgını için Zaman Bağımlı Üreme Sayısının Tahmini](https://www.preprints.org/manuscript/202006.0289/v1). *Preprints* **2020**, 2020060289 (doi: 10.20944/preprints202006.0289.v1)\n",
"* [Yukarıdaki makale için GitHub'da Kod](https://github.com/shwars/SlidingSIR)\n" "* [Yukarıdaki makalenin GitHub üzerindeki kodu](https://github.com/shwars/SlidingSIR)\n"
] ]
}, },
{ {
@ -2422,7 +2425,7 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Feragatname**: \nBu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hatalar veya yanlışlıklar içerebileceğini unutmayınız. Orijinal belge, kendi ana dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu oluşabilecek yanlış anlamalar veya yorum hatalarından sorumluluk kabul edilmemektedir.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n" "---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**Feragatname**:\nBu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu ortaya çıkabilecek yanlış anlamalardan veya yanlış yorumlamalardan sorumlu değiliz.\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
] ]
} }
], ],

@ -1,13 +1,13 @@
# Tehlikeli İlişkiler veri görselleştirme projesi # Tehlikeli İlişkiler veri görselleştirme projesi
Başlamak için, makinenizde NPM ve Node'un çalıştığından emin olmanız gerekiyor. Bağımlılıkları yükleyin (npm install) ve ardından projeyi yerel olarak çalıştırın (npm run serve): Başlamak için makinenizde NPM ve Node **>=20.0.0** yüklü ve çalışır durumda olmalıdır. Bağımlılıkları yükleyin (npm install) ve ardından projeyi yerel olarak çalıştırın (npm run serve):
## Proje kurulumu ## Proje kurulumu
``` ```
npm install npm install
``` ```
### Geliştirme için derler ve anında yeniden yükler ### Geliştirme için derler ve sıcak yükleme yapar
``` ```
npm run serve npm run serve
``` ```
@ -17,15 +17,17 @@ npm run serve
npm run build npm run build
``` ```
### Dosyaları kontrol eder ve düzeltir ### Dosyaları denetler ve düzeltir
``` ```
npm run lint npm run lint
``` ```
### Yapılandırmayı özelleştirme ### Yapılandırmayı özelleştir
[Configuration Reference](https://cli.vuejs.org/config/) adresine bakın. Bkz. [Configuration Reference](https://cli.vuejs.org/config/).
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Feragatname**: **Feragatname**:
Bu belge, [Co-op Translator](https://github.com/Azure/co-op-translator) adlı yapay zeka çeviri hizmeti kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalar için sorumluluk kabul etmiyoruz. Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu ortaya çıkabilecek yanlış anlamalardan veya yanlış yorumlamalardan sorumlu değiliz.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,31 +1,33 @@
# Dangerous Liaisons veri görselleştirme projesi # Tehlikeli Bağlantılar veri görselleştirme projesi
Başlamak için, makinenizde NPM ve Node'un çalıştığından emin olmanız gerekiyor. Bağımlılıkları yükleyin (npm install) ve ardından projeyi yerel olarak çalıştırın (npm run serve): Başlamak için, makinenizde NPM ve Node **>=20.0.0** yüklü ve çalışıyor olmalıdır. Bağımlılıkları yükleyin (npm install) ve ardından projeyi yerel olarak çalıştırın (npm run serve):
## Proje kurulumu ## Proje kurulumu
``` ```
npm install npm install
``` ```
### Geliştirme için derler ve anında yeniden yükler ### Geliştirme için derler ve sıcak yeniden yükleme yapar
``` ```
npm run serve npm run serve
``` ```
### Üretim için derler ve sıkıştırır ### Üretim için derler ve küçültür
``` ```
npm run build npm run build
``` ```
### Dosyaları kontrol eder ve düzeltir ### Dosyaları denetler ve düzeltir
``` ```
npm run lint npm run lint
``` ```
### Yapılandırmayı özelleştirme ### Yapılandırmayı özelleştir
[Configuration Reference](https://cli.vuejs.org/config/) adresine bakın. Bakınız [Configuration Reference](https://cli.vuejs.org/config/).
--- ---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Feragatname**: **Feragatname**:
Bu belge, [Co-op Translator](https://github.com/Azure/co-op-translator) adlı yapay zeka çeviri hizmeti kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlama veya yanlış yorumlamalardan sorumlu değiliz. Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucu ortaya çıkabilecek yanlış anlamalardan veya yanlış yorumlamalardan sorumlu değiliz.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Loading…
Cancel
Save