Manuale di scienza dei dati Python

Mar 31 2023
.
  1. IPython: oltre il normale Python
  2. Introduzione a NumPy
  3. Manipolazione dei dati con Panda
  4. Visualizzazione con Matplotlib
  1. Introduzione all'apprendimento automatico
  2. Imparare dai dati
  3. Regressione lineare
  4. Ingenuo Bayes
  5. k-vicini più prossimi
  6. Introduzione all'apprendimento automatico con Scikit-Learn
  7. Apprendimento automatico in pratica
  8. Il compromesso bias-varianza
  9. Stima della densità del kernel
  10. Analisi del componente principale
  11. Apprendimento multiplo
  12. Raggruppamento
  13. Alberi decisionali e foreste casuali
  14. Ottimizzazione basata sul gradiente
  15. K-Mean Clustering
  16. Approfondimento: classificazione ingenua di Bayes
  17. Approfondimento: regressione lineare
  18. Approfondimento: supporta le macchine vettoriali
  19. Approfondimento: alberi decisionali e foreste casuali
  20. Approfondimento: analisi delle componenti principali
  21. Approfondimento: Apprendimento multiplo
  22. Approfondimento: cluster k-medie
  1. Un giro vorticoso di Python
  2. Elementi essenziali del linguaggio Python
  3. IPython: oltre il normale Python
  4. NumPy
  5. Ulteriori informazioni sulla shell di sistema IPython
  6. Matplotlib
  7. SciPy
  8. Scikit-Impara
  9. Apprendimento automatico con Scikit-Learn
  10. Ulteriori risorse di apprendimento automatico
  11. Apprendimento automatico pratico: un semplice esempio
  12. Bibliografia

import numpy as np

# create a 1D array
a = np.array([0, 1, 2, 3, 4])
print(a)

import pandas as pd

# create a Pandas DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 32, 18, 47],
        'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)
print(df)

# filter rows based on a condition
df_filtered = df[df['age'] > 30]
print(df_filtered)

# group data by a column and compute statistics
grouped_data = df.groupby('gender')['age'].mean()
print(grouped_data)

import matplotlib.pyplot as plt
import numpy as np

# create some data to plot
x = np.linspace(0, 10, 100)
y = np.sin(x)

# create a line plot
plt.plot(x, y)
plt.title('Sine Wave')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

# create a scatter plot
x = np.random.randn(100)
y = np.random.randn(100)
plt.scatter(x, y)
plt.title('Random Data')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

# load the iris dataset
iris = load_iris()

# split the data into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(iris['data'], iris['target'], random_state=0)

# create a K-Nearest Neighbors classifier
knn = KNeighborsClassifier(n_neighbors=1)

# fit the classifier to the training data
knn.fit(X_train, y_train)

# predict the classes of the test data
y_pred = knn.predict(X_test)

# compute the accuracy of the classifier
accuracy = knn.score(X_test, y_test)
print('Accuracy:', accuracy)