R'de nasıl düzeltilir: readtableheader tarafından bulunan eksik son satır
R’de karşılaşabileceğiniz bir uyarı:
Warning message: In read.table(file = file, header = header, sep = sep, quote = quote, : incomplete final line found by readTableHeader on 'my_data.csv'
Bu uyarı, R’de bir CSV dosyasını okumaya çalıştığınızda ancak dosyanın son satırı boş olmadığında ortaya çıkar.
Bunun yalnızca bir uyarı mesajı olduğunu ve bir hata olmadığını unutmamak önemlidir. Bu mesaj görünse bile dosyanız yine de R’ye aktarılacaktır.
Bu eğitimde bu uyarının nasıl tamamen önlenebileceği açıklanmaktadır.
Uyarı nasıl yeniden oluşturulur?
Diyelim ki R’ye aktarmak istediğim my_data.csv adında aşağıdaki CSV dosyasına sahibim:
Şimdi bu CSV dosyasını R’ye aktarmak için aşağıdaki kodu kullanmaya çalıştığımı varsayalım:
#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'
CSV dosyasının son satırı boş olmadığı için uyarı mesajı alıyorum.
Ancak dosya yine de başarıyla içe aktarıldı:
#view imported data frame
df
team points assists
1 to 20 5
2 B 15 3
3 C 19 9
4 D 20 3.
Yöntem 1: Uyarı nasıl önlenir?
Bu uyarıyı önlemenin bir yolu, read.csv() işlevini birpressWarnings() işlevinin içine koymaktır:
#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
Bu sefer CSV dosyasını herhangi bir uyarı yapmadan içe aktarabiliriz.
Bu yaklaşımın avantajı dosyayı doğrudan değiştirmemize gerek olmamasıdır.
Bu yaklaşımın dezavantajı, dosyayı içe aktarırken dikkat etmemiz gereken daha ciddi uyarılar varsa bunları göremeyeceğimizdir.
Yöntem 2: Uyarı nasıl önlenir?
Bu uyarıyı önlemenin bir başka yolu da CSV dosyasını doğrudan düzenlemektir.
Somut olarak, dosyanın son satırına gidebilir ve dosyanın sonunda yeni bir boş satır oluşturmak için Enter tuşuna basabiliriz:
Artık CSV dosyasını içe aktardığımızda herhangi bir uyarı almıyoruz:
#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
Bu yaklaşımın avantajı, dosyayı içe aktarırken diğer uyarıları hala görebilmemizdir.
Bu yaklaşımın dezavantajı, yalnızca programlı bir çözüm kullanmak yerine dosyayı doğrudan değiştirmek zorunda olmamızdır.
Ek kaynaklar
Aşağıdaki eğitimlerde R’de diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:
R’de readLines() işlevi nasıl kullanılır?
CSV dosyaları R’ye nasıl aktarılır
R’de read.table nasıl kullanılır?