Inhoudsopgave:
- Tel in R met de functie pas toe
- Laten we teruggaan naar ons voorbeeld uit het vorige gedeelte: Stel je voor dat je de tweede dag niet naar duiven zocht. Dit betekent dat je voor die dag geen gegevens hebt, dus je moet die waarde op NA instellen als volgt: >> telt mee [2, 2] <- nA Als je de max-functie toepast op de kolommen van deze matrix krijg je het volgende resultaat: >> toepassen (telt, 2, max) muskoduif kraai 4 NA 8
Video: Functie TRANSPONEREN in Excel 2024
In R kun je de functie apply () gebruiken om een functie over elke rij of kolom van een matrix of dataframe. Dit biedt een aantal zeer handige kansen.
Tel in R met de functie pas toe
Stel je voor dat je de vogels in je achtertuin op drie verschillende dagen hebt geteld en de tellingen hebt opgeslagen in een matrix als deze: >> telt colnames (tellingen) telt sparrow dove crow [1,] 3 6 8 [2,] 2 5 6 [3,] 4 1 1
Elke kolom staat voor een andere soort en elke rij staat voor een andere dag. Nu wilt u weten wat de maximale telling per soort op een bepaalde dag is. U kunt hiervoor een for-lus maken, maar met apply () doet u dit in slechts één regel code:
Laten we eens kijken hoe deze functie apply () werkt. In de vorige coderegels hebt u drie argumenten gebruikt:
Het object waarop de functie moet worden toegepast:
In dit geval zijn het de matrixtellingen.-
De dimensie of index waarop de functie moet worden toegepast: Het getal 1 betekent rijgewijs en het getal 2 betekent kolomgewijs. Hier passen we de functie toe op de kolommen. In het geval van meer-dimensionale arrays, kan deze index groter zijn dan 2.
-
De naam van de functie die moet worden toegepast: U kunt aanhalingstekens gebruiken rond de functienaam, maar u hebt geen naar. Hier passen we de functie max. Merk op dat er geen haakjes meer nodig zijn na de functienaam.
-
toepassen
Laten we teruggaan naar ons voorbeeld uit het vorige gedeelte: Stel je voor dat je de tweede dag niet naar duiven zocht. Dit betekent dat je voor die dag geen gegevens hebt, dus je moet die waarde op NA instellen als volgt: >> telt mee [2, 2] <- nA Als je de max-functie toepast op de kolommen van deze matrix krijg je het volgende resultaat: >> toepassen (telt, 2, max) muskoduif kraai 4 NA 8
Dat is niet wat je wilt. Om met de ontbrekende waarden om te gaan, moet je het argument nvt doorgeven.rm to max-functie in de toepassing apply () (zie hoofdstuk 4). Gelukkig is dit eenvoudig gedaan in R. Je hoeft alleen maar extra argumenten aan de functie toe te voegen als extra argumenten van de toepassing apply (), zoals deze: >> apply (counts, 2, max, na. Rm = TRUE) sparrow dove crow 4 6 8
U kunt elke gewenste argumenten in de aanroep apply () doorgeven door ze gewoon tussen de haakjes na de eerste drie argumenten toe te voegen.