intelligenza-artificiale 0.0.0.3
Intelligenza-Artificiale la libreria python italiana dedicata all'I.A.
Requires Python: >=3.6

###### 🚧 La libreria è ancora in fase di SVILUPPO 🚧
#
#
#
# Intelligenza Artificiale
##### _La libreira python creata per neofiti e datascientist che semplifica l'analisi dati e lo sviluppo di modelli di apprendimento automatico e profondo_
#
#
Intelligenza-Artificiale è l'unica libreria python MADE in ITALY che permette a qualsiasi persona di :

- Leggere, Manipolare, Pulire dataset di ogni tipo
- Analizzare i dati per trasformarli in importanti informazioni
- Creare in meno di 5 righe di codice modelli di ML
- Sviluppare reti neurali
- & molto molto altro ancora

##### **richiamando i metodi in italiano !**
#
#
#

##  Installazione Libreria

La libreria intelligenza-artificiale richiede [PYTHON](https://PYTHON.org/) v3.6+ 

Per installare la libreria puoi usare il comando pip3 .

```sh
pip3 install intelligenza-artificiale
```

se invece utilizzi google colab...

```sh
!pip install intelligenza-artificiale
```

## Partizione Libreria

Al momento abbiamo deciso di partizionare la libreria in moduli, per rendere il codice il più portabile e leggero possibile.

| Modulo | Import | Utilizzo
| ------ | ------ | ------
| Dataset | from intelligenza-artificiale import dataset as dt | lettura e manipolazine set di dati ( .csv , .xlsx , .xls , .html , .json , sql )
| BigDataset | from intelligenza-artificiale import bigdataset as bdt | lettura e manipolazine set di dati molto grandi compresi bigdata
| Statistica | from intelligenza-artificiale import statistica as st | analisi dati
| Preprocessing | from intelligenza-artificiale import preprocessing as pp | pulizia, manipolazione e preprocessing dei dati
| TextPreprocessing | from intelligenza-artificiale import textpreprocessing as tpp | pulizia, manipolazione e preprocessing per dati testuali
| Machine Learning | from intelligenza-artificiale import machinelearning as ml | creazione di modelli di apprendimento automatico
| Deep Learning | from intelligenza-artificiale import depplearning as dl | creazione di reti neurali 
| NLP | from intelligenza-artificiale import nlp | trattamento delle informazioni testuali 

## Esempi

Qui sotto troverai elencati tutti i metodi della libreria con degli esempi

#### _Step 1 ---_  **Modulo Dataset**

Con questo modulo potrai leggere qualsiasi tipo di dataset
#
Leggere un file .csv
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_csv("file_name.csv")
```
#
Leggere un file excel
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_xls("file_name.xls")
```
Leggere un foglio specifico di un file excel
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_sheet("file_name.xls","nome_foglio")
```

#
Leggere un file html
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_html("file_name.html")
```

#
Leggere un file json
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_json("file_name.json")
```

#
Leggere un file sql
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_json("file_name.sql")
```
#
Ottenere informazioni di base sulle colonne
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_csv("file_name.csv")
print(dt.lista_colonne(il_mio_dataset))
print(dt.tipo_colonne(il_mio_dataset))
```

#
Rimuovere una o più colonne
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_csv("file_name.csv")
nuovo_dataset = dt.rimuovi_colonna(il_mio_dataset, "colonna_da_eliminare")

colonne_inutili = ["colonna3", "colonna12" , "colonna33"]
nuovo_dataset = dt.rimuovi_colonne(il_mio_dataset, colonne_inutili)

```

#
Separare i vari tipi di dato
```sh
from intelligenza-artificiale import dataset as dt
il_mio_dataset = dt.leggi_csv("file_name.csv")
valori_numerici = dt.numerici(il_mio_dataset)
valori_categorici = dt.categorici(il_mio_dataset)
valori_booleani = dt.booleani(il_mio_dataset)
```
#
#
#

#### _Step 2 ---_  **Modulo Statistica**

Con questo modulo potrai fare statistiche, report e analisi sui tuoi dati
#
Valori Nulli o Corrotti
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import statistica as st

il_mio_dataset = dt.leggi_csv("file_name.csv")
print(st.valori_nan(il_mio_dataset))
print(st.percentuale_nan(il_mio_dataset))
#nel modulo preprocessing vedremmo come eliminare o sostituire i valori null o corrotti
```

#
Statistiche di base
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import statistica as st

il_mio_dataset = dt.leggi_csv("file_name.csv")

#statistiche su tutto il dataset
print(st.valori_nan(il_mio_dataset))

#statistiche su specifica colonna del dataset
print(st.statistiche_colonna(il_mio_dataset,"nome_colonna"))

#contare valori unici di una specifica colonna
print(st.conta_valori_unici(il_mio_dataset,"nome_colonna"))
```

#
Statistiche di base su colonna
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import statistica as st

il_mio_dataset = dt.leggi_csv("file_name.csv")

#media
print(st.media(il_mio_dataset,"nome_colonna"))

#varianza
print(st.varianza(il_mio_dataset,"nome_colonna"))

#covarianza
print(st.covarianza(il_mio_dataset,"nome_colonna"))

#quantili
print(st.quantile_25(il_mio_dataset,"nome_colonna"))
print(st.quantile_50(il_mio_dataset,"nome_colonna"))
print(st.quantile_75(il_mio_dataset,"nome_colonna"))

#min e max
print(st.min(il_mio_dataset,"nome_colonna"))
print(st.max(il_mio_dataset,"nome_colonna"))
```

#
Analizzare le correlazioni 
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import statistica as st

il_mio_dataset = dt.leggi_csv("file_name.csv")

#Correlazione tra i campi del dataset
print(st.correlazione(il_mio_dataset))

#correlazione tra una colonna target e un altra colonna
print(st.correlazione_radio(il_mio_dataset, "colonna" ,"target_colonna"))

#correlazione di spearman tra una colonna target e un altra colonna
print(st.correlazione_spearman(il_mio_dataset, "colonna" ,"target_colonna"))

#correlazione di pearson tra una colonna target e un altra colonna
print(st.correlazione_pearson(il_mio_dataset, "colonna" ,"target_colonna"))

```

#
Report Automatizzati 
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import statistica as st

il_mio_dataset = dt.leggi_csv("file_name.csv")

#Scarica report html
st.report_dataset_pandas(il_mio_dataset)

#apri il tuo dataset sul web
st.apri_dataframe_nel_browser(il_mio_dataset)
```

#
#
#

#### _Step 3 ---_  **PreProcessing**

Con questo modulo potrai pulire, manipolare, standardizzare e scalare i tuoi dati
#
Gestire Nulli o Corrotti
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import preprocessing as pp

il_mio_dataset = dt.leggi_csv("file_name.csv")

#rimuovere righe con valori nulli o corrotti
il_mio_dataset = pp.rimuovi_nan(il_mio_dataset)

#sostituire valori nulli o corrotti con il valore medio
il_mio_dataset["colonna"] = pp.sostituisci_nan_media(il_mio_dataset,"colonna")

#sostituire valori nulli o corrotti con il valore più frequente
il_mio_dataset["colonna"] = pp.sostituisci_nan_frequenti(il_mio_dataset,"colonna")

#rimuovi una colonna se i valori mancanti sono più di un valore passato
il_mio_dataset = pp.rimuovi_colonna_se_nan(il_mio_dataset,"colonna",500)
```
#
Gestire gli outliers
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import preprocessing as pp

il_mio_dataset = dt.leggi_csv("file_name.csv")

#Rimuovere i valori outlier
il_mio_dataset["colonna"] = pp.rimuovi_outliers(il_mio_dataset,"colonna")

#Rimuovere i valori outlier e valori nulli
il_mio_dataset["colonna"] = pp.rimuovi_outliers_nan(il_mio_dataset,"colonna")

```
#
Gestire variabili testuali e categoriche
```sh
from intelligenza-artificiale import dataset as dt
from intelligenza-artificiale import preprocessing as pp

il_mio_dataset = dt.leggi_csv("file_name.csv")

#effettuare il labelencoding
il_mio_dataset["nuova_colonna"] = pp.label_encoding(il_mio_dataset,"colonna")

#effettuare il labelencoding con sklearn
il_mio_dataset["nuova_colonna"] = pp.label_encoding_sklearn(il_mio_dataset,"colonna")

#effettuare il one hot encoding
il_mio_dataset["nuova_colonna"] = pp.onehot_encoding(il_mio_dataset,"colonna")

#per rimuovere la vecchia colonna
il_mio_dataset = dt.rimuovi_colonna(il_mio_dataset, "colonna")

```
###### 🚧 La libreria è ancora in fase di SVILUPPO 🚧

## Licenza

MIT  
**© Copyright 2020-2022 Intelligenza Artificiale Italia!**