Hoe op te lossen in r: argumenten hebben betrekking op een verschillend aantal regels
Een fout die je tegen kunt komen in R is:
arguments imply differing number of rows: 6, 5
Deze fout treedt op wanneer u probeert een dataframe te maken en het aantal rijen in elke kolom van het dataframe niet hetzelfde is.
Het volgende voorbeeld laat zien hoe u deze fout in de praktijk kunt corrigeren.
Hoe de fout te reproduceren
Stel dat we proberen een dataframe in R te maken met behulp van drie vectoren:
#definevectors
x1 <- c(1, 2, 3, 4, 5, 6)
x2 <- c(8, 8, 8, 7, 5)
y <- c(9, 11, 12, 13, 14, 16)
#attempt to create data frame using vectors as columns
df <- data. frame (x1=x1, x2=x2, y=y)
Error in data.frame(x1 = x1, x2 = x2, y = y):
arguments imply differing number of rows: 6, 5
We ontvangen een foutmelding omdat elke vector niet dezelfde lengte heeft, waardoor elke kolom in het resulterende dataframe niet hetzelfde aantal rijen heeft.
We kunnen dit controleren door de lengte van elke vector af te drukken:
#print length of each vector
length(x1)
[1] 6
length(x2)
[1] 5
length(y)
[1] 6
We kunnen zien dat vector x2 een lengte van 5 heeft, wat niet overeenkomt met de lengte van de vectoren x1 en y .
Hoe u de fout kunt oplossen
Om deze fout op te lossen, hoeven we er alleen maar voor te zorgen dat elke vector dezelfde lengte heeft, zodat elke kolom in het resulterende dataframe hetzelfde aantal rijen heeft.
We zouden bijvoorbeeld de kortste vector kunnen opvullen met NA-waarden, zodat elke vector dezelfde lengte heeft:
#definevectors
x1 <- c(1, 2, 3, 4, 5, 6)
x2 <- c(8, 8, 8, 7, 5)
y <- c(9, 11, 12, 13, 14, 16)
#pad shortest vector with NA's to have same length as longest vector
length(x2) <- length(y)
#create data frame using vectors as columns
df <- data. frame (x1=x1, x2=x2, y=y)
#view resulting data frame
df
x1 x2 y
1 1 8 9
2 2 8 11
3 3 8 12
4 4 7 13
5 5 5 14
6 6 NA 16
Houd er rekening mee dat we geen foutmelding krijgen omdat elke kolom in het resulterende gegevensframe hetzelfde aantal rijen heeft.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende fouten in R kunt oplossen:
Hoe op te lossen in R: argument is noch numeriek noch logisch: return na
Hoe te repareren in R: niet-numeriek argument van binaire operator
Hoe te repareren in R: vervanging heeft een lengte van nul