IndexError: trop d'indices
Je suis en train d'utiliser un algorithme de scikit-learn pour prédire la sortie sur la base du nombre d'entrées. J'ai l'impression de recevoir le message d'erreur de trop nombreux indices' a renvoyé, mais ne peut pas comprendre pourquoi.
Fichier CSV de la Formation:
1.1 0.2 0.1 0 0.12 0.1
1.4 0.2 0.1 0.1 0.14 0.1
0.1 0.1 0.1 0 0.26 0.1
24.5 0.1 0 0.1 0.14 0.1
0.1 0.1 0.1 0 0.25 0.1
Code:
fileCSVTraining = genfromtxt('TrainingData.csv', delimiter=',', dtype=None)
#Define first 6 rows of data as the features
t = fileCSVTraining[:, 6:]
#Define which column to put prediction in
r = fileCSVTraining[:, 0-6:]
#Create and train classifier
x, y = r, t
clf = LinearSVC()
clf = clf.fit(x, y)
#New data to predict
X_new = [1.0, 2.1, 3.0, 2.4, 2.1]
b = clf.predict(X_new)
Erreur:
t = fileCSVTraining[:, 6:]
IndexError: too many indices
- Je pense que cette erreur ne se passera si vous essayez d'index d'un tableau 1D en deux dimensions, pas tout à fait sûr si
- Peut-être pas le problème, mais vous utilisez
delimiter=','
lors de la lecture du fichier, bien que les valeurs sont séparées par des espaces - Semble être quelque chose à faire avec le point décimal dans le fichier CSV
Vous devez vous connecter pour publier un commentaire.
Sur la base des commentaires, je pense que vous voulez:
Ensuite, pour obtenir les 6 premières lignes", vous pouvez utiliser
(Je suis en supposant que votre fichier de données est plus long que vous avez indiqué. Votre exemple ne dispose que de 5 lignes.)
Je soupçonne votre utilisation du tableau d'indexation pour obtenir
r
est également incorrect.Veuillez imprimer votre
x
ety
variables et vous verrez probablement pourquoi les données ne sont pas valides et de fixer en conséquence.Aussi pour la dernière ligne:
devrait être:
de prédire s'attend à une collection d'échantillons (tableau 2D de
(n_new_samples, n_features)
), pas un seul échantillon.Tableau d'indexation pour obtenir des r et t est incorrect. Aide:
M'a fait de la formation nécessaire des données, en laissant la colonne de prédiction.
Il est également important de préciser dtype=float parce que "None" permettra d'entiers (si il y en avait dans vos données) pour être inclus dans le tableau qui aurait force 1-D tableau au lieu d'un tableau 2d. L'indexation, comme le montre, ne fonctionne pas sur 1-D.