RBIND FOUT: “Namen komen niet overeen met de vorige namen”

Als onderdeel van een groter probleem (het toevoegen van een ,makeUniqueIDsargument voor rbind.SpatialPolygonsDataFramevoor situaties wanneer de polygoon-ID’s identiek zijn), loop ik deze raar in BERICHT VAN RBIND:

> do.call("rbind",xd.small)
Error in match.names(clabs, names(xi)) : 
  names do not match previous names

De enige andere info die ik hierover kon vinden, was Deze vraag , die me leidt om te geloven dat rbinddaar ook aan de root van het probleem was.

Ik kan gewoon mijn eigen RBIND-FUNCTION-functie schrijven, maar vermoedelijk dit match.namesCheck treedt me voor om een ​​reden, en ik ben benieuwd wat het is.


Antwoord 1, Autoriteit 100%

De namen (kolomnamen) van het eerste dataframe komen niet overeen met de namen van de tweede. Net zoals het foutbericht zegt.

> identical(names(xd.small[[1]]), names(xd.small[[2]]) )
[1] FALSE

Als u niet geeft om de namen van de 3e of 4e kolommen van de tweede DF, kunt u deze dwingen om hetzelfde te zijn:

> names(xd.small[[1]]) <- names(xd.small[[2]]) 
> identical(names(xd.small[[1]]), names(xd.small[[2]]) )
[1] TRUE

Dan moeten dingen gelukkig doorgaan.


Antwoord 2, Autoriteit 51%

eenvoudig genoeg om de unname()te gebruiken:

data.frame <- unname(data.frame)

Antwoord 3, Autoriteit 4%

rbind()heeft de twee objectnamen nodig om hetzelfde te zijn. De eerste objectnamen: ID Age, de namen van de volgende objecten: ID Gender, als u wilt gebruiken rbind(), IT zal afdrukken:

Namen komen niet overeen met vorige namen


Antwoord 4, Autoriteit 2%

Gebruik de code als volgt:

mylist <- lapply(pressure, function(i)read.xlsx(i,colNames = FALSE))#
mydata <- do.call('rbind',mylist)#

Antwoord 5

Controleer alle variabelennamen in beide gecombineerde bestanden. Naam van variabelen van beide bestanden die moeten worden gecombineerd, moet exact hetzelfde zijn of anders zal het de bovengenoemde fouten produceren. Ik werd ook geconfronteerd met hetzelfde probleem, en na het maken van alle namen hetzelfde in zowel het bestand, werkt RBIND nauwkeurig.

bedankt

Other episodes