“kan ikke ændre arbejdsmappe” R-filfejlmeddelelsen er en underlig lille besked, da det er et kodningsproblem, det skyldes muligvis ikke en r-kodefejl. Det er snarere et problem, der opstår ved at forsøge at ændre en rodmappe til et ikke-eksisterende navn. Dette gør det til et usædvanligt problem og heldigvis et, der er let at rette i R-konsollen.
omstændighederne ved dette problem.
fejlmeddelelsen “Kan ikke ændre arbejdsmappe” opstår, når du bruger funktionen opsætning() til at ændre arbejdsmappe i formatet opsætning(“~/”) eller indtaste et ugyldigt datakatalognavn. Normalt placeres en fil i standardarbejdsmappen. Der er dog omstændigheder, hvor du måske vil ændre den aktuelle arbejdsmappe i din r-scriptfil. Dette har den fordel, at det automatisk nulstiller sig selv, når projektet eller datasættet genindlæses. Som et resultat er det et praktisk værktøj til at gemme og indlæse filer fra en anden mappesti end standardmappestien. Dette er praktisk, når du kender filplaceringen for 2 forskellige filer eller mere i projektmappen.
Hvad forårsager dette problem?
fejlmeddelelsen “Kan ikke ændre arbejdsmappe” skyldes, at et operativsystem ikke genkender “~/” som angiver en rodmappe eller peger på et ugyldigt mappenavn. Som følge heraf søger programmet en ikke-eksisterende mappe. Dette får den til at returnere denne meddelelse, fordi den ikke kan ændre arbejdsmappen.
# r error cannot change working directory r code> getwd() "C:/Users/Owner/Documents/R/error test"> setwd("C:/Users/Owner/Documents/R/test")Error in setwd("C:/Users/Owner/Documents/R/test") :cannot change working directory
i dette tilfælde fik vi beskeden, fordi vi indtastede en ugyldig mappe. I de fleste systemer ved hjælp af settvd(“~/”) vil simpelthen ændre arbejdsmappen til rodmappen. Der er dog nogle systemer, hvor “~/” ikke genkendes, hvilket resulterer i denne meddelelse. Heldigvis kan en lille ændring i syntaks løse problemet.
Sådan løses dette problem.
at løse dette problem er simpelthen et spørgsmål om at fjerne “~ / ” – referencen fra dit script. Da funktionen sæt() er funktionen Indstil arbejdsmappe, kan du bruge den til at indstille den aktuelle mappe i din kode. Alt du skal gøre er at indstille den til den filstimappe, du leder efter. Funktionen () svarer til kommandoen dose “dir”, bortset fra at den fører dig til den aktuelle arbejdsmappe i dit r-konsolarbejdsområde.
# r error cannot change working directory solution code> getwd() "C:/Users/Owner/Documents/R/error test"> setwd("~/")> getwd() "C:/Users/Owner/Documents"
for at få den samme effekt som dette eksempel R-kode skal du blot erstatte navnet på det specifikke projektkatalog, du vil gå til i tegnstrengen her i stedet for “~/”. For at få den aktuelle arbejdsmappe skal du bare bruge funktionen
# cannot change working directory r error solution example code> getwd() "C:/Users/Owner/Documents/R/error test"> setwd("C:/Users/Owner/Documents")> getwd() "C:/Users/Owner/Documents"
i dette eksempel definerer vi simpelthen arbejdsmappen som “C:/Users/Owner/Documents” for at foretage den ønskede ændring. Det kan ikke være så elegant eller kort som den anden version, men det virker. I den situation, hvor du har et fejlagtigt mappe-eller filsystemnavn, skal du blot rette det i hjemmekataloget, så det er et gyldigt navn.
dette er et simpelt problem at løse, men det er kun sandsynligt, at du får det ved at gå glip af at skrive et mappenavn. Hvis du får det til “~ / ” så skal du bare angive, hvor du vil sætte det, og det vil fungere. I begge tilfælde løser du problemet.
r fejl kan ikke ændre arbejdsmappe