Huis Persoonlijke financiën Hoe de grenzen te overschrijden in R-dummies

Hoe de grenzen te overschrijden in R-dummies

Inhoudsopgave:

Video: How Far Can We Go? Limits of Humanity. 2024

Video: How Far Can We Go? Limits of Humanity. 2024
Anonim

Terwijl u met functies in R werkt, werkt u soms met enkele objecten die u niet eerst in de werkruimte hebt gemaakt. U gebruikt de argumenten x, mult en FUN alsof het objecten zijn en u maakt een objectpercentage binnen de functie die u na het gebruik van de functie niet kunt vinden in de werkruimte. Dus wat is er aan de hand?

Maak een testcase

Laten we het achterhalen door een klein voorbeeld. Maak eerst een object x en een kleine test () -functie zoals deze:

x <- 1: 5 test <- functie (x) {cat ("Dit is x:", x, "n") rm (x) cat ("Dit is x na verwijderen it: ", x," n ")}

De test () functie doet niet veel. Er is een argument x voor nodig, het drukt het af naar de console, verwijdert het en probeert het opnieuw af te drukken. Je denkt misschien dat deze functie zal mislukken, omdat x verdwijnt na de regel rm (x). Maar nee, als u deze functie probeert, werkt het prima, zoals in het volgende voorbeeld:

>> test (5: 1) Dit is x: 5 4 3 2 1 Dit is x na het verwijderen: 1 2 3 4 5
Zelfs na het verwijderen van x, kan R nog steeds een andere vinden x dat het kan afdrukken. Als je wat nauwkeuriger kijkt, zie je dat de x die op de tweede regel wordt afgedrukt, niet de x is die je als argument hebt opgegeven, maar de x die je eerder in de werkruimte hebt gemaakt. Hoe kan dat?

Zoek het pad

Als u een functie gebruikt, maakt de functie eerst een tijdelijke

lokale omgeving. Deze lokale omgeving is genest binnen de globale omgeving, wat betekent dat u vanuit die lokale omgeving ook toegang hebt tot elk object uit de globale omgeving. Zodra de functie eindigt, wordt de lokale omgeving vernietigd samen met alle objecten erin.

Om volledig correct te zijn, creëert een functie altijd een omgeving binnen de omgeving van waaruit het wordt genoemd, de

bovenliggende omgeving. Als u vanuit de werkruimte een functie oproept via een script of via de opdrachtregel, is deze bovenliggende omgeving de globale omgeving. Als R een objectnaam ziet die wordt vermeld in een willekeurige code in de functie, zoekt deze eerst in de lokale omgeving. Omdat het een object x daar vindt, wordt het gebruikt voor de eerste cat () -instructie. In de volgende regel verwijdert R dat object x. Dus wanneer R de derde regel bereikt, kan het object x in de lokale omgeving niet meer vinden. Geen probleem. R gaat de stapel omgevingen op en controleert of er in de globale omgeving iets als een x voorkomt. Omdat het daar een x kan vinden, wordt dat in de tweede cat () -instructie gebruikt.

Als u rm () in een functie gebruikt, verwijdert rm () standaard alleen objecten binnen die functie.Op deze manier kunt u voorkomen dat er onvoldoende geheugen beschikbaar is wanneer u functies schrijft die moeten werken aan enorme datasets. U kunt meteen grote tijdelijke objecten verwijderen in plaats van te wachten tot de functie aan het einde is voltooid.

Hoe de grenzen te overschrijden in R-dummies

Bewerkers keuze

Kennis van auditplanning nodig voor de AUD-test - dummies

Kennis van auditplanning nodig voor de AUD-test - dummies

Bij het nemen van de audit en het attest ( AUD) test op het CPA-examen, moet u blijk geven van kennis van het auditplanningsproces. Bij het plannen van een audit moet een auditor overwegen of bepaalde randvoorwaarden aanwezig zijn. Deze voorwaarden stellen de CPA-firma in staat om efficiënt een audit uit te voeren en de auditor te helpen bij het verkrijgen van voldoende ...

Passiva op de FAR-test van het CPA-examen - dummies

Passiva op de FAR-test van het CPA-examen - dummies

De financiële boekhouding en rapportage (FAR ) test van het CPA-onderzoek test u uw kennis van verschillende soorten verplichtingen inclusief opgebouwde verplichtingen, langlopende schulden, uitgestelde belastingen en pensioenverplichtingen. Lopende verplichtingen De periodetoerekeningsbasis boekt opbrengsten wanneer deze worden verdiend en neemt uitgaven op wanneer deze zijn gemaakt. De transactiebasis is niet afhankelijk van gelddeposito's ...

Regeling oefenvragen voor het CPA-examen - dummies

Regeling oefenvragen voor het CPA-examen - dummies

De verordening (REG) -test op het CPA-examen richt zich op op twee terreinen: ondernemingsrecht en belastingen. Overweeg flashcards te gebruiken om termen voor de REG-sectie te leren en te onthouden. Voordat u deze test uitvoert, moet u vele definities, feiten en cijfers verteren en flashcards kunnen een grote hulp zijn. Welke van de volgende ...

Bewerkers keuze

Met de AF-ON-knop op uw EOS 80D - dummies

Met de AF-ON-knop op uw EOS 80D - dummies

Als u nerveus bent over de ontspanknop tot halverwege op uw EOS 80D drukken, uit angst dat u per ongeluk een foto maakt, wilt u misschien kennis maken met de AF-ON-knop. In de geavanceerde belichtingsstanden (P, Tv, Av, M, B, C1 en C2), kun je deze knop ingedrukt houden om hetzelfde doel te bereiken als ...

Hoe je de opname maakt met de sfeer op je Canon EOS 80D - dummies

Hoe je de opname maakt met de sfeer op je Canon EOS 80D - dummies

Met je EOS 80D kun je een beetje spelen met kleur, scherpte, contrast en belichting in bepaalde scènemodi. De modus Shoot by Ambience kan leuk zijn voor een beetje experiment. Met de Picture Style-functie kunt u kiezen hoe de camera uw originele beeldgegevens "verwerkt" wanneer u een van de JPEG-afbeeldingen gebruikt ...

Hoe je de opname-informatieweergavemodus op je Canon EOS 80D gebruikt - dummies

Hoe je de opname-informatieweergavemodus op je Canon EOS 80D gebruikt - dummies

In de weergavemodus Opnamegegevens op uw EOS 80D wordt een miniatuur van uw afbeelding weergegeven, samen met scads aan opnamegegevens. Je ziet ook een helderheidshistogram - het grafiekachtige ding in de rechterbovenhoek van het scherm. (Denk eraan, druk gewoon op de Info-knop om door de weergavemodi te bladeren om deze te zien.) Hoe ...

Bewerkers keuze

Hoe Excel 2016-werkmappen te delen via OneDrive - dummies

Hoe Excel 2016-werkmappen te delen via OneDrive - dummies

Voordat u uw Excel 2016-werkmap kunt delen, moet een kopie ervan opslaan in een map op uw OneDrive. De eenvoudigste manier om dit te doen is om eerst de werkmap te openen om te delen in Excel en klik op de knop Delen die aan de rechterkant van het lint verschijnt. Excel opent vervolgens een ...

Hoe werkbladen delen in Excel 2013 - dummies

Hoe werkbladen delen in Excel 2013 - dummies

Excel 2013 maakt het gemakkelijk om uw spreadsheets te delen met vertrouwde klanten en collega's. U kunt de opties op het scherm Delen in de weergave Backstage gebruiken om werkbladen per e-mail te verzenden of per chatbericht te verzenden naar anderen die toegang hebben tot Excel. Als Microsoft Lync online vergaderingssoftware op uw apparaat is geïnstalleerd, maakt u ...

Hoe een werkblad in Windows te splitsen in Excel 2016 - dummies

Hoe een werkblad in Windows te splitsen in Excel 2016 - dummies

Hoewel in en uit zoomen op een Excel 2016-werkblad kan je helpen om je te oriënteren, het kan niet twee afzonderlijke secties samenbrengen zodat je hun gegevens op het scherm kunt vergelijken (in ieder geval niet op een normale grootte waar je de informatie daadwerkelijk kunt lezen). Om dit soort truc te beheren, splitst u de ...