Import


from sklearn import datasets
from sklearn.model_selection import train_test_split

Einlesen vordefinierter Datasets


Ausführlich: (Wenn nicht nur die Daten sondern auch Beschreibung usw. gebraucht wird)

iris = datasets.load_iris() #Z.B. die Iris Daten
x = iris.data
y = iris.target
class_names = iris.target_names
description = iris.DESCR
...

Hier am Beispiel Iris, es gibt aber noch viele andere.

Kurz: (Wenn nur die Daten gebraucht werden)

x, y = datasets.load_iris(return_X_y=True)

Einlesen eigener Daten aus CSV


Hier sollten die .csv Dateien im selben Verzeichnis liegen

import numpy as np
x=np.loadtxt('x_dataset.csv',delimiter=',')
y=np.loadtxt('y_dataset.csv',dtype='int64', delimiter=',')

Beispieldaten anzeigen


num_samples = x.shape[0]
num_features = x.shape[1]
print(f"num_samples: {num_samples}")
print(f"num_features: {num_features}")

Aufteilen und Mischen des Datasets


Normalerweise nimmt man 30% Testdaten und 70% Trainingsdaten

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3)

Datasets generieren

Import

from sklearn.datasets import make_classification

Generieren

Generate a random n-class classification problem.

x,y = make_classification(
	n_samples: Int = 100,  
	n_features: Int = 20,  
	*,  
	n_informative: Int = 2,  
	n_redundant: Int = 2,  
	n_repeated: Int = 0,  
	n_classes: Int = 2,  
	n_clusters_per_class: Int = 2,  
	weights: ArrayLike | None = None,  
	flip_y: Float = 0.01,  
	class_sep: Float = 1,  
	hypercube: bool = True,  
	shift: ArrayLike | None = 0,  
	scale: ArrayLike | None = 1,  
	shuffle: bool = True,  
	random_state: Int | RandomState | None = None
)