2

Je suis en train d'analyser un fichier contenant également le type UUID. Je ne peux pas analyser le fichier et obtenir cette erreur.Erreur H2o lors de l'analyse d'un fichier

DistributedException de /127.0.0.1:54321: 'NewChunk est de type numérique, mais le Vec est de type UUID', causée par java.lang.AssertionError: NewChunk est de type numérique, mais le Vec est de type UUID

Quelqu'un sait ce que cela signifie?

+0

Veuillez fournir un exemple de la façon dont vous essayez de le faire maintenant, et un exemple de données si possible. Il y a plusieurs façons d'importer des données dans 'h2o'. De quel type de source proviennent vos données? – Mako212

+0

J'utilise l'interface utilisateur de flux. Les données proviennent d'un fichier csv. J'ai partagé le fichier csv ici. https://drive.google.com/open?id=0B9A7NrDPc-aQeTN0QnlpcWFROVE – kivk02

Répondre

0

J'ai téléchargé votre fichier de 160 Mo localement pour expérimenter et trouvé que vos données sont mal formatées. L'erreur ci-dessus n'apparaît que parce que la dernière colonne de votre jeu de données est UUID. H2O s'assure donc de définir le type de colonne comme UUID. Cependant, 206000 lignes après les dernières colonnes affichent des valeurs numériques qui provoquent la panique de H2O. UUID.

Je pouvais charger jusqu'à 206 000 lignes dans H2O sans aucun problème, mais 207000 lignes m'ont donné une erreur, donc vous pouvez expérimenter quelles lignes sont mal formatées. Vous pouvez exécuter la commande suivante pour obtenir toutes les lignes de 206000 à 207000, et lors du chargement de ces 1000 lignes, vous verrez le même problème.

$ sed -n '206000,207000p' <consumer_complaints.csv> consumer_complaints_bad.csv 

Si vous ne pouvez pas corriger vos données avec une mauvaise mise en forme au niveau de la ligne, vous pouvez enregistrer toutes les colonnes comme chaîne. De cette façon H2O va ingérer toutes les données sous forme de chaîne, puis plus tard, vous pouvez analyser les données, les nettoyer correctement puis changer pour taper correctement comme enum, ou int ou UUID. Pas une bonne option à essayer car vos données sont déjà mal formatées mais de cette façon vous pouvez charger toutes les données dans H2O.