Python “Trop d'indices pour le tableau”
Je suis de la lecture d'un fichier en python à l'aide de pandas et puis de le sauvegarder dans un tableau numpy.
Le fichier a la dimension de 11303402 lignes x 10 colonnes.
J'ai besoin de diviser les données pour la validation croisée et pour qui j'ai tranché les données dans 11303402 lignes x 9 colonnes d'exemples et 1 tableau de 11303402 lignes x 1 col d'étiquettes.
Voici le code:
tdata=pd.read_csv('train.csv')
tdata.columns='Arrival_Time','Creation_Time','x','y','z','User','Model','Device','sensor','gt']
User_Data = np.array(tdata)
features = User_Data[:,0:9]
labels = User_Data[:,9:10]
Vient l'erreur dans le code suivant:
classes=np.unique(labels)
idx=labels==classes[0]
Yt=labels[idx]
Xt=features[idx,:]
Sur la ligne:
Xt=features[idx,:]
il dit "trop d'indices pour le tableau'
Les formes de tous les 3 ensembles de données sont:
print np.shape(tdata) = (11303402, 10)
print np.shape(features) = (11303402, 9)
print np.shape(labels) = (11303402, 1)
Si quelqu'un connaît le problème, s'il vous plaît aider.
Qu'est-ce que
Essayez de supprimer le point-virgule, de sorte que vous avez
Et quelle est la forme de
Désolé j'ai mis à jour le code. Cela signifie simplement que la première classe dans les classes et la forme de
c
? Un complet, autonome, soit exécutable du programme avec l'auto-générés de manière aléatoire (ou zéro) données d'entrée serait utile.Essayez de supprimer le point-virgule, de sorte que vous avez
Xt=features[idx:]
.Et quelle est la forme de
idx
?Désolé j'ai mis à jour le code. Cela signifie simplement que la première classe dans les classes et la forme de
idx
est (11303402,1)
@WoozyCoder Nopes, n'a pas fonctionné.
OriginalL'auteur Farhan Javed | 2016-05-11
Vous devez vous connecter pour publier un commentaire.
Le problème est
idx
a la forme(11303402,1)
parce que la logique de comparaison renvoie un tableau de la même forme quelabels
. Ces deux dimensions, utiliser l'ensemble des indices enfeatures
. Le travail rapide autour estOriginalL'auteur Keith Prussing