Jak naprawić w r: niekompletny ostatni wiersz znaleziony przez readtableheader
Ostrzeżenie, które możesz napotkać w R, to:
Warning message: In read.table(file = file, header = header, sep = sep, quote = quote, : incomplete final line found by readTableHeader on 'my_data.csv'
To ostrzeżenie pojawia się, gdy próbujesz odczytać plik CSV w języku R, ale ostatnia linia pliku nie jest pusta.
Należy pamiętać, że jest to jedynie komunikat ostrzegawczy , a nie błąd. Nawet gdy pojawi się ten komunikat, Twój plik będzie nadal importowany do R.
W tym samouczku wyjaśniono, jak całkowicie uniknąć tego ostrzeżenia.
Jak odtworzyć ostrzeżenie
Załóżmy, że mam następujący plik CSV o nazwie my_data.csv , który chcę zaimportować do R:

Załóżmy teraz, że próbuję użyć następującego kodu, aby zaimportować ten plik CSV do R:
#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'
Otrzymuję komunikat ostrzegawczy, ponieważ ostatnia linia pliku CSV nie jest pusta.
Jednak plik został pomyślnie zaimportowany:
#view imported data frame
df
team points assists
1 to 20 5
2 B 15 3
3 C 19 9
4 D 20 3.
Metoda 1: Jak uniknąć ostrzeżenia
Jednym ze sposobów uniknięcia tego ostrzeżenia jest po prostu umieszczenie funkcji read.csv() wewnątrz funkcji supresWarnings() :
#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
Tym razem możemy zaimportować plik CSV bez żadnego ostrzeżenia.
Zaletą tego podejścia jest to, że nie musimy bezpośrednio modyfikować pliku.
Wadą tego podejścia jest to, że jeśli istnieją poważniejsze ostrzeżenia, o których musimy pamiętać podczas importowania pliku, nie będziemy mogli ich zobaczyć.
Metoda 2: Jak uniknąć ostrzeżenia
Innym sposobem uniknięcia tego ostrzeżenia jest bezpośrednia edycja pliku CSV.
Konkretnie możemy przejść do ostatniej linii pliku i nacisnąć Enter, aby utworzyć nową pustą linię na końcu pliku:

Teraz, gdy importujemy plik CSV, nie pojawia się żadne ostrzeżenie:
#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
Zaletą tego podejścia jest to, że podczas importowania pliku nadal będziemy mogli zobaczyć inne ostrzeżenia.
Wadą tego podejścia jest to, że musimy modyfikować plik bezpośrednio, a nie tylko za pomocą rozwiązania programowego.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje w języku R:
Jak korzystać z funkcji readLines() w R
Jak importować pliki CSV do R
Jak używać read.table w R