Hjem Personlig finansiering Sådan krydser du grænserne i R-dummier

Sådan krydser du grænserne i R-dummier

Indholdsfortegnelse:

Video: TIMELAPSE OF THE FUTURE: A Journey to the End of Time (4K) 2024

Video: TIMELAPSE OF THE FUTURE: A Journey to the End of Time (4K) 2024
Anonim

Mens du arbejder med funktioner i R, arbejder du nogle gange med nogle objekter, du ikke først lavede i arbejdsområdet. Du bruger argumenterne x, mult og FUN som om de er objekter, og du opretter en objektprocent inden for den funktion, som du ikke kan finde tilbage i arbejdsområdet, efter at du har brugt funktionen. Så hvad sker der?

Lav et test tilfælde

Lad os finde ud af gennem et lille eksempel. Opret først et objekt x og en lille test () funktion som denne:

x <- 1: 5 test <- funktion (x) {cat ("Dette er x:", x, "n") rm (x) kat det: ", x," n ")}

Funktionen test () gør ikke meget. Det tager et argument x, udskriver det til konsollen, fjerner det, og forsøger at udskrive det igen. Du tror måske, at denne funktion mislykkes, fordi x forsvinder efter linjen rm (x). Men nej, hvis du forsøger denne funktion virker det fint, som vist i følgende eksempel:

>> test (5: 1) Dette er x: 5 4 3 2 1 Dette er x efter at have fjernet det: 1 2 3 4 5
Selv efter at x er fjernet, kan R stadig finde en anden x at den kan udskrive. Hvis du ser lidt nærmere ud, ser du, at x'en, der er trykt i anden linje, faktisk ikke er den, du gav som et argument, men den x du tidligere oprettede i arbejdsområdet. Hvorfor?

Søg på stien

Hvis du bruger en funktion, skaber funktionen først et midlertidigt

lokalt miljø. Dette lokale miljø er indlejret inden for det globale miljø, hvilket betyder, at du fra det lokale miljø også kan få adgang til ethvert objekt fra det globale miljø. Så snart funktionen slutter, ødelægges det lokale miljø sammen med alle objekter i det.

For at være helt korrekt skaber en funktion altid et miljø inden for det miljø, det hedder fra, kaldet

forælder miljø. Hvis du kalder en funktion fra arbejdsområdet gennem et script eller ved hjælp af kommandolinjen, forekommer dette forældremiljø at være det globale miljø. Hvis R ser et objektnavn, der er nævnt i en kode i funktionen, søger den først i det lokale miljø. Fordi det finder et objekt x der, bruger det det til den første kat () erklæring. I den næste linje fjerner R det pågældende objekt x. Så når R når den tredje linje, kan den ikke finde et objekt x i det lokale miljø længere. Intet problem. R flytter op i stakken af ​​miljøer og kontrollerer for at se, om det finder noget, der ligner en x i det globale miljø. Fordi det kan finde en x der bruger den den ene i den anden kat () erklæring.

Hvis du bruger rm () i en funktion, vil rm () som standard kun slette objekter i den funktion.På den måde kan du undgå at løbe tør for hukommelse, når du skriver funktioner, der skal arbejde på store datasæt. Du kan straks fjerne store midlertidige objekter i stedet for at vente på, at funktionen gør det i slutningen.

Sådan krydser du grænserne i R-dummier

Valg af editor

Hvad er Array Formulas i Excel 2013? - dummies

Hvad er Array Formulas i Excel 2013? - dummies

En matrixformel i Excel 2013 (og andre regneark) er en speciel formel, der opererer på en række værdier. Hvis et celleområde leverer dette interval (som det ofte er tilfældet), betegnes det som et arrayinterval. Hvis denne rækkevidde leveres af en liste over numeriske værdier, er de kendt som ...

Ved hjælp af regnearkfunktioner til statistisk analyse i Excel 2016 - dummies

Ved hjælp af regnearkfunktioner til statistisk analyse i Excel 2016 - dummies

Excel 2016b har en række funktioner til Statistisk analyse. Funktionsbiblioteket på fanen Formler viser alle kategorier af Excel-regnearkfunktioner. Trinene i at bruge et regneark funktion er Skriv dine data i et datarray og vælg en celle for resultatet. Vælg den relevante formelskategori og vælg en ...

Hvad er nyt i Excel 2016 til statistisk analyse? - dummies

Hvad er nyt i Excel 2016 til statistisk analyse? - dummies

Microsoft har lavet nogle få ændringer i Excel's Ribbon (fanebåndet øverst), hvilket afspejler ændringer i Excel. Den mest oplagte tilføjelse er pæren øverst til højre for tilføjelser. Det er mærket "Fortæl mig hvad du vil gøre. "Dette kaldes Tell Me-boksen, og det er nyt ...

Valg af editor

Sådan postes på en vens Facebook-tidslinje - dummies

Sådan postes på en vens Facebook-tidslinje - dummies

Dit nyhedsfeed trækker indlæg, som dine Facebook-venner lav på et sted, så du kan læse dem alle på én gang. Men nogle gange vil du læse alt om kun en person. Heldigvis er alle deres indlæg blevet samlet på deres tidslinjer. Tidslinjen er ligesom en nyhedsfeed alt om en person. ...

Sådan sender du en Facebook-begivenhed - dummies

Sådan sender du en Facebook-begivenhed - dummies

Den første måde du sikkert finder ud af om Facebook begivenheden er gennem en anmeldelse. Når en ven inviterer dig til en begivenhed, vises et lille rødt flag over meddelelsesikonet i den store blå bar øverst. Klik på ikonet for at åbne din underretningsmenu; Klik derefter på den invitation, der skal tages ...

Hvordan man kan se de billeder du er på Facebook - dummies

Hvordan man kan se de billeder du er på Facebook - dummies

Hvis du har meget af Facebook venner, du er sandsynligvis i et ton af fotos. Du kan se de billeder, du er i, uden at skulle gå hele Facebook, så længe du er mærket i dem. Måske har du tagget dem selv, eller dine venner har måske tagget dig. Det første sted du ...

Valg af editor

Digital SLR-fotografi Alt-i-One til Dummies Cheat Sheet - dummies

Digital SLR-fotografi Alt-i-One til Dummies Cheat Sheet - dummies

Hvis du 'er interesseret i fotografering, du finder ingen bedre enhed end en digital spejlreflekskamera (eller dSLR). Uanset om du er amatør eller professionel, kan du finde en dSLR, der passer til dine behov. Du kan virkelig ikke slå kombinationen af ​​magt, fleksibilitet, vækstpotentiale og "accessorize-ability" af en dSLR. Med oplysningerne i denne ...

Hvordan man tager gebyr som bryllupsfotograf - dummier

Hvordan man tager gebyr som bryllupsfotograf - dummier

Som bryllupsfotograf, dit job er at hjælpe De formelle portrætter flyder så jævnt som muligt. Du kan lægge meget af grunden i månederne før den faktiske bryllupsdato som du kommunikerer med parret. Hvis du gør dine lektier, kan du fokusere på at holde portræt sessioner organiseret og opretholde kontrol ...