chybová zpráva „nelze přidělit vektor velikosti“ je problém s přidělením paměti , který může nastat při práci s velkým množstvím dat. To nemusí nutně zahrnovat kódovací chybu ve vašem R skriptu, ale existují situace, kdy existuje kódovací řešení. Výzvou zde není ani tak hledání zdroje problému, ale nalezení nejlepšího řešení.
okolnosti této chyby.
chybová zpráva paměti „nelze přidělit vektor velikosti“ se objeví při vytváření nebo načítání extrémně velkého množství dat, která zabírají velké množství využití virtuální paměti. Při práci s takovými velkými datasety je možné skutečně vyčerpat použitelnou paměť. Nejpravděpodobněji k tomu dojde, když je datová sada načtena z externího zdroje, jako je balíček nebo jiný typ souboru. Je to proto, že nemůžete ovládat velikost objektu obsaženého ve zdroji, který jste nevytvořili. Nejpravděpodobněji se vyskytne při přístupu k funkci pro načtení nebo vytvoření vektoru nebo jiné datové sady. Mohou také nastat s menšími objekty, pokud máte v programu extrémně velký počet objektů.
co způsobuje tuto chybu?
příčinou chybové zprávy „nelze přidělit vektor velikosti“ je problém s přidělením virtuální paměti. Vyplývá to hlavně z velkých objektů, které mají velikost vektoru, která přesahuje limit paměti pro projekt. Může k tomu dojít také proto, že máte velké množství jednotlivých objektů, které společně překračují maximální limit paměti pro projekt. Nyní to může být otázka vyčerpání místa pro využití fyzické paměti v počítači nebo maximální limity velikosti paměti stanovené softwarem, k čemuž s největší pravděpodobností dojde, pokud používáte 32bitový RStudio na 64bitovém počítači. Pokud máte poměrně nový počítač, je velmi nepravděpodobné, že narazíte na tuto chybu objektu v důsledku vyčerpání fyzické paměti, pokud nepracujete s extrémně velkým množstvím dat v jednom řetězci znaků nebo výpočtu.
jak opravit tuto chybu.
chybová zpráva“ nelze přidělit vektor velikosti “ má několik řešení R kódu. Nejlepší na těchto řešeních je, že žádné z nich není příliš komplikované, většina z nich je jednoduchý jediný proces, který lze snadno provést ve vašem skriptu R.
- nejjednodušším řešením je vyhnout se použití příliš velkých objektů nebo příliš velkého počtu z nich v jednom programu nebo relaci R, například zkuste odstranit nepotřebné objekty z výpočtu, abyste lépe zapadli do celkové alokace paměti.
- při čtení v externím souboru uzavřete funkci čtení () uvnitř funkce podmnožiny (), která má za následek formát podmnožiny (čtení.(„filename“, header = TRUE), select = c (sloupce, které mají být zachovány)) tím se zmenší velikost jednotlivých objektů vytvářených odstraněním nežádoucích sloupců.
- nepotřebné objekty můžete vymazat pomocí funkce rm ().
- adresní prostor můžete vyčistit pomocí funkce gc ().
- můžete také otestovat omezení paměti pomocí paměti.limit () a nastavte vyšší hodnotu s formátem paměti.limit (velikost=číslo).
- Vypněte všechny programy, které nepoužíváte, abyste vyčistili další místo.
nalezení nejlepšího procesu k opravě této chyby může trvat několik pokusů a omylů, ale nejsou těžké ani časově náročné. I když tato chybová zpráva není problém s kódováním, stále není obtížné ji opravit v rámci relace R.
chyba R nemůže přidělit vektor velikosti