Waarschuwing: regel lijkt ingesloten nullen te bevatten [duplicaat]

Ik probeer een lijst met csv-bestanden in te lezen. Deze csv-bestanden hebben “;” als zijn afscheider.
Nadat ik de csv-bestanden niet had ingelezen, heb ik geprobeerd de inhoud van een van de csv-bestanden in verschillende delen te knippen en de waarden in elk deel in te lezen om te zien waar het probleem werd veroorzaakt.

Deze methode werkte voor mij en ik heb een werkende code bedacht die werkt voor mijn gegevens:

y <- data.table(read.table(filenames[i], header = FALSE, sep = ";",
                comment.char = "", fill = TRUE, check.names = FALSE,
                blank.lines.skip = TRUE))

Maar ik ben een ander probleem tegengekomen. Wanneer ik de originele gegevens in een csv-bestand kopieer en plak en de code uitvoer, werkt het prima. Wanneer ik echter dezelfde code probeer uit te voeren op het originele csv-bestand, krijg ik de waarschuwing ’embedded nulls’.

Aan de buitenkant zien de originele gegevens en de gekopieerde gegevens er precies hetzelfde uit, en ze zijn allemaal opgeslagen in het csv-formaat. Daarom is het voor mij moeilijk te vinden wat de waarschuwing precies veroorzaakt en wat het verschil is tussen mijn originele csv-bestand en het gekopieerde csv-bestand.

De gegevens zien er als volgt uit:

Measurement Reports export file;
;
Comment;Time ;E_MW;E_PF;INV11_ACKW;INV12_ACKW;INV21_ACKW;INV22_ACKW;INV31_ACKW;INV32_ACKW;INV41_ACKW;INV42_ACKW;INV51_ACKW;INV52_ACKW;INV61_ACKW;INV62_ACKW;M1_ATEMP;M1_HUMID;M1_PYRA1S;M1_PYRA2S;M1_PYRA3S;M1_WDIREC;M1_WSPEED;
;
;00:00;-0.02  ;-0.36  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;22.32  ;82.32  ;0.00  ;0.00  ;0.00  ;234.83  ;0.00  ;
;00:01;-0.02  ;-0.36  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;0.00  ;22.26  ;82.57  ;0.00  ;0.00  ;0.00  ;214.93  ;0.00  ;
;
;Sum;-1.41    ;-22.10    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;1330.89    ;5098.24    ;0.00    ;0.00    ;0.00    ;11246.06    ;28.48    ;
;Mean;-0.02    ;-0.37    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;0.00    ;22.18    ;84.97    ;0.00    ;0.00    ;0.00    ;187.43    ;0.47    ;
;

Alle hulp wordt op prijs gesteld. Bedankt.


Antwoord 1, autoriteit 100%

De oplossing, zoals gepost in een opmerking van @G. Grothendieck, het argument fileEncoding=zou gebruiken om de juiste codering op te geven, wat volgens de OP UTF16LE of UCS-2LE bleek te zijn.

Dit schrijven als antwoord zodat het niet verloren gaat in de reacties.


Antwoord 2, autoriteit 38%

Ik heb onlangs een soortgelijk probleem gehad waarbij ik een foutmelding kreeg zoals:

1: In read.table(file = file, header = header, sep = sep, quote = quote, : regel 3 lijkt ingesloten nullen te bevatten.

Ik heb geprobeerd de parameter fileEncodingopnieuw in te stellen, maar ik kon de waarschuwingen niet verwijderen. Gelukkig kwam ik het argument SkipNultegen dat wordt genoemd in deze linken het instellen op Twerkte voor mij.


Antwoord 3, autoriteit 7%

Ik ben het met de andere gebruikers eens dat het argument fileEncoding kan helpen. Controleer ook of de functie en het bestandstype correct zijn. Ik kwam deze fout tegen toen ik per ongeluk probeerde read.csv()te gebruiken om in het Excel-bestand te laden (de fout werd snel opgelost toen ik overschakelde naar read.xlsx()) .


Antwoord 4

U hoeft alleen uw csv-bestand correct aan te maken, hernoem een ​​”.Numbers”-bestand niet naar “.csv”. Open uw .Numbers-bestand, exporteer het naar csv en typ de volgende code in uw R-omgeving:

test <- read.csv(“MijnBestand.csv”)

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Other episodes