Hoe op te lossen in r: onvolledige laatste rij gevonden door readtableheader
Een waarschuwing die u in R kunt tegenkomen is:
Warning message: In read.table(file = file, header = header, sep = sep, quote = quote, : incomplete final line found by readTableHeader on 'my_data.csv'
Deze waarschuwing treedt op wanneer u probeert een CSV-bestand in R te lezen, maar de laatste regel van het bestand niet leeg is.
Het is belangrijk op te merken dat dit slechts een waarschuwingsbericht is en geen fout. Zelfs wanneer dit bericht verschijnt, wordt uw bestand nog steeds geïmporteerd in R.
In deze tutorial wordt uitgelegd hoe u deze waarschuwing volledig kunt vermijden.
Hoe de waarschuwing te reproduceren
Laten we zeggen dat ik het volgende CSV-bestand heb met de naam my_data.csv dat ik in R wil importeren:
Stel nu dat ik de volgende code probeer te gebruiken om dit CSV-bestand in R te importeren:
#import CSV file
df <- read. csv (' my_data.csv ')
Warning message:
In read.table(file = file, header = header, sep = sep, quote = quote, :
incomplete final line found by readTableHeader on 'my_data.csv'
Ik ontvang een waarschuwingsbericht omdat de laatste regel van het CSV-bestand niet leeg is.
Het bestand is echter nog steeds succesvol geïmporteerd:
#view imported data frame
df
team points assists
1 to 20 5
2 B 15 3
3 C 19 9
4 D 20 3.
Methode 1: Hoe u de waarschuwing kunt vermijden
Eén manier om deze waarschuwing te vermijden is door eenvoudigweg de functie read.csv() in een suppressWarnings()- functie te plaatsen:
#import CSV file and remove any warnings
df <- suppressWarnings( read.csv (' my_data.csv '))
#view data frame
df
team points assists
1 to 20 5
2 B 15 3
3 C 19 9
4 D 20 3
Deze keer kunnen we het CSV-bestand zonder enige waarschuwing importeren.
Het voordeel van deze aanpak is dat we het bestand niet rechtstreeks hoeven te wijzigen.
Het nadeel van deze aanpak is dat als er ernstigere waarschuwingen zijn waarvan we op de hoogte moeten zijn bij het importeren van het bestand, we deze niet kunnen zien.
Methode 2: Hoe u de waarschuwing kunt vermijden
Een andere manier om deze waarschuwing te vermijden is door het CSV-bestand rechtstreeks te bewerken.
Concreet kunnen we naar de laatste regel van het bestand gaan en op Enter drukken om een nieuwe lege regel aan het einde van het bestand te maken:
Wanneer we nu het CSV-bestand importeren, krijgen we geen waarschuwing:
#import CSV file
df <- read. csv (' my_data.csv ')
#view data frame
df
team points assists
1 to 20 5
2 B 15 3
3 C 19 9
4 D 20 3
Het voordeel van deze aanpak is dat we nog steeds andere waarschuwingen kunnen zien bij het importeren van het bestand.
Het nadeel van deze aanpak is dat we het bestand rechtstreeks moeten aanpassen in plaats van alleen maar een programmatische oplossing te gebruiken.
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R uitvoert:
Hoe de functie readLines() in R te gebruiken
CSV-bestanden importeren in R
Lees.table gebruiken in R