Hoe op te lossen in python: valueerror: trailing data
Een fout die u kunt tegenkomen bij het gebruik van Python is:
ValueError : Trailing data
Deze fout treedt meestal op wanneer u een JSON-bestand probeert te importeren in een Panda DataFrame, maar de gegevens worden geschreven in regels, gescheiden door navolgende regels, zoals “ \n „.
De eenvoudigste manier om deze fout op te lossen is door eenvoudigweg lines=True op te geven bij het importeren van de gegevens:
df = pd. read_json (' my_data.json ', lines= True )
Het volgende voorbeeld laat zien hoe u deze fout in de praktijk kunt corrigeren.
Hoe de fout te reproduceren
Laten we aannemen dat we het volgende JSON-bestand hebben:
Laten we nu zeggen dat we dit JSON-bestand proberen te importeren in een Panda DataFrame:
#attempt to import JSON file into pandas DataFrame
df = pd. read_json (' Documents/DataFiles/my_data.json ')
ValueError : Trailing data
We ontvangen een foutmelding omdat het element ‚Review‘ in ons JSON-bestand \n bevat om de afsluitende regels weer te geven.
Hoe u de fout kunt oplossen
De eenvoudigste manier om deze fout op te lossen is door eenvoudigweg lines=True op te geven bij het importeren van de gegevens:
#import JSON file into pandas DataFrame df = pd. read_json (' Documents/DataFiles/my_data.json ', lines= True ) #view DataFrame df ID Rating Review 0 A 8 Great movie.\nI would recommend it. 1 B 5 Mediocre movie.\nWould not recommend it. 2 C 3 Bad movie.\nI would not recommend. 3 D 7 Decent movie.\nI might recommend it.
Houd er rekening mee dat we het JSON-bestand zonder fouten in een Panda DataFrame kunnen importeren.
Als we de volgende \n- regels uit de kolom „Revisie“ willen verwijderen, kunnen we de volgende syntaxis gebruiken:
#replace \n with empty space in 'Review' column
df[' Review '] = df[' Review ']. str . replace (' \n ', ' ')
#view updated DataFrame
df
ID Rating Review
0 To 8 Great movie. I would recommend it.
1 B 5 Mediocre movie. Would not recommend it.
2 C 3 Bad movie. I would not recommend.
3 D 7 Decent movie. I might recommend it.
\nwaarden zijn nu verwijderd uit de kolom “Revisie”.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:
Hoe een Pandas DataFrame naar JSON-bestand te converteren
Hoe JSON-bestand naar Pandas DataFrame te converteren