feilmeldingen «kan ikke allokere vektor av størrelse» er et minnetildelingsproblem som kan oppstå når du arbeider med en stor mengde data. Dette innebærer ikke nødvendigvis en kodingsfeil i r-skriptet ditt, men det er situasjoner der det er en kodingsløsning. Utfordringen her er ikke så mye et spørsmål om å finne kilden til problemet, men å finne den beste løsningen på det.
omstendighetene rundt denne feilen.
feilmeldingen «kan ikke tildele vektorstørrelse» minne oppstår når du oppretter eller laster inn en ekstremt stor mengde data som tar opp mye virtuelt minnebruk. Når du arbeider med slike store datasett er det mulig å faktisk gå tom for brukbart minne. Det er mest sannsynlig at det skjer når et datasett lastes inn fra en ekstern kilde, for eksempel en pakke eller en annen type fil. Dette er fordi du ikke kan kontrollere størrelsen på et objekt som finnes i en kilde som du ikke opprettet. Det er mest sannsynlig å oppstå når du åpner funksjonen for å laste eller opprette en vektor eller et annet datasett. De kan også forekomme med mindre objekter hvis du har et ekstremt stort antall objekter i programmet.
Hva forårsaker denne feilen?
årsaken til feilmeldingen «kan ikke tildele vektorstørrelse» er et problem med tildeling av virtuelt minne. Det skyldes hovedsakelig store objekter som har en vektorstørrelse som overskrider minnegrensen for prosjektet. Det kan også oppstå fordi du har et stort antall enkeltobjekter som sammen overskrider maksimal minnegrense for prosjektet. Nå kan dette være et spørsmål om å gå tom for fysisk minnebruk plass på datamaskinen eller maksimal minnestørrelsesgrenser satt av programvaren dette er mest sannsynlig å skje hvis du kjører 32-biters RStudio på en 64-biters maskin. Hvis du har en ganske ny datamaskin, er det svært lite sannsynlig at du vil støte på denne objektfeilen som følge av å gå tom for fysisk minne, med mindre du jobber med ekstremt store mengder data i en tegnstreng eller beregning.
slik løser du denne feilen.
feilmeldingen «kan ikke tildele vektor av størrelse» minneproblem har flere r-kodeløsninger. Det beste med disse løsningene er at ingen av dem er altfor komplisert, de fleste er en enkel enkelt prosess som er lett å gjøre I r-skriptet.
- den enkleste løsningen er å unngå å bruke altfor store objekter eller for stort antall av dem i ett program eller R-økt, for eksempel prøve å fjerne unødvendige objekter fra beregningen for å bedre passe inn i din totale tildeling av minne.
- når du leser i en ekstern fil, legg ved les () – funksjonen i en delsett () – funksjon som resulterer i formatet delsett (les.(«filnavn», header = TRUE), velg = c (kolonner som skal holdes)) dette vil redusere størrelsen på individuelle objekter som opprettes ved å fjerne uønskede kolonner.
- du kan fjerne unødvendige objekter ved hjelp av rm () – funksjonen.
- du kan rydde ut adresseplass ved hjelp av gc () – funksjonen.
- du kan ogsa teste for a begrense minnet ved hjelp av minnet.limit () og angi en høyere verdi med formatet på minnet.grense(størrelse = tall).
- Slå av programmer du ikke bruker for å rydde opp ekstra plass.
Å Finne den beste prosessen for å fikse denne feilen kan ta litt prøving og feiling, men de er ikke vanskelige eller tidkrevende. Selv om denne feilmeldingen ikke er et kodingsproblem, er det fortsatt ikke vanskelig å fikse i r-økten.
R-Feil kan ikke tildele vektor av størrelse