Hjem Personlig finansiering 10 Ting du kan gøre i R, som du ville have gjort i Microsoft Excel - dummies

10 Ting du kan gøre i R, som du ville have gjort i Microsoft Excel - dummies

Indholdsfortegnelse:

Video: I FOUND an OCEAN TEMPLE in Minecraft! (epic) - Part 11 2025

Video: I FOUND an OCEAN TEMPLE in Minecraft! (epic) - Part 11 2025
Anonim

Regnearket er nok et af de mest anvendte pc-applikationer - og med god grund: Regneark gør det meget nemt at udføre beregninger og andre operationer på tabel data. Men regneark udgør også nogle risici: De er nemme at korrupte og meget vanskelige at debugere. Den gode nyhed er, at du kan bruge R til at lave mange af de samme ting, du plejede at gøre i regneark.

Tilføjelse af række og kolonne totaler

En opgave, som du ofte gør i et regneark, beregner række eller kolonne totaler. Den nemmeste måde at gøre dette på er at bruge funktionerne rowSums () og colSums (). På samme måde skal du bruge rowMeans () og colMeans () til at beregne midler.

Prøv det på den indbyggede datasæt iris. Fjern først den femte kolonne, fordi den indeholder tekst, der beskriver arten af ​​iris: >> iris. num <- iris [-5]

Beregn derefter summen og middelværdien for hver kolonne:

>> colSums (iris. Num)> colMeans (iris. Num)

Disse to funktioner er meget praktiske, men du vil måske beregne en anden statistik for hver kolonne eller række. Der er en nem måde at krydse rækker eller kolonner på i en matrix eller dataramme: funktionen () (). Hvis du f.eks. Får mindst en kolonne, er det samme som at anvende en min () -funktion til den anden dimension af dine data: >> Anvend (iris nr, 2, min)> anvend (iris nr. 2, max)
Formateringsnumre

Du kan bruge format () til at slå dine tal til smuk tekst, klar til udskrivning. Denne funktion tager en række argumenter til at kontrollere formatet af dit resultat. Her er et par:

trim

:

En logisk værdi. Hvis det er FALSK, tilføjer det mellemrum til højre - retfærdiggør resultatet. Hvis det er sandt, undertrykker det de førende rum.

  • cifre : Hvor mange signifikante cifre af numeriske værdier, der skal vises.

  • nsmall : Mindste antal cifre efter decimaltegnet.

  • Desuden styrer du formatet for decimaltegnet med decimaltal. markér markeringen mellem intervaller før decimaltegnet med stort. mærke og mærket mellem intervaller

efter decimaltegnet med lille. mærke. Du kan f.eks. Udskrive nummeret 12345. 6789 med et komma som decimaltal, mellemrum som det store mærke og prikker som det lille mærke: >> format (12345, 6789, cifre = 9, decimaltegnet. mark = ",", + stor. mark = "", lille.mark = ".", lille.interval = 3) [1] "12 345, 678. 9" Som mere praktisk eksempel midlerne til nogle kolonner i mtcars og derefter udskrive resultaterne med to cifre efter decimaltegnet, brug følgende: >> x format (x, cifre = 2, nsmall = 2) mpg cyl disp hp "20.09 "" 6. 19 "" 230. 72 "" 146. 69 " Bemærk, at resultatet ikke længere er et nummer, men en tekststreng. Så vær forsigtig, når du bruger nummerformatering - dette skal være det sidste trin i din rapporterings arbejdsgang.

Hvis du er bekendt med programmering på sprog svarende til C eller C ++, kan du også finde funktionen sprintf () nyttig. Denne indpakning giver dig mulighed for at indsætte dit formaterede nummer direkte i en streng.

Her er et eksempel på at konvertere tal til procentdele: >> x sprintf ("%. 1f %%", 100 * x) [1] "50. 0% "" 51. 0% "" 52. 0% "" 53. 0% "" 54. 0% "" 55. 0% "

Dette er hvad det gør: Det første argument til sprintf () angiver formatet - i dette tilfælde"%. 1f %% ". Format argumentet bruger specielle bogstaver, der angiver, at funktionen skal erstatte denne bogstav med en variabel og anvende nogle formateringer. Bogstaverne begynder altid med% symbolet. Så i dette tilfælde%. 1f betyder at formatere den første tilførte værdi som et fast punktværdi med et ciffer efter decimaltegnet, og %% er en bogstav, som betyder udskrivning a%.

For at formatere nogle tal som valuta - i dette tilfælde US dollars - brug: >> sæt. frø (1)> x sprintf ("$% 3. 2f", x) [1] "$ 265. 51" "$ 372. 12" "$ 572. 85" "$ 908. 21" "$ 201. 68 "

Funktionen sprintf () giver dig en alternativ måde at indsætte værdien af ​​en variabel i en streng: >> tingpris sprintf ("% s cost $% 3. 2f ", ting, pris) [1] "Brød koster $ 2. 10" "cookies koster $ 4. 00"

Hvad der sker her er, fordi du har leveret to vektorer (hver med to elementer) til sprintf (), er dit resultat en vektor med to elementer. R cykler gennem elementerne og placerer dem i sprintf () bogstaverne.

Du kan gøre alt med pasta () og format (), som du kan gøre med sprintf (), så du behøver ikke rigtig brug for det. Men når du gør det, kan det forenkle din kode.

Sortering af data

For at sortere data i R, bruger du funktionen sort () eller ordre ().

For at sortere datarammen mtcars i stigende eller faldende rækkefølge af kolonnen hp, brug: >> med (mtcars, mtcars [order (hp),))> med (mtcars, mtcars [rækkefølge = TRUE),])

Valg af, hvis

Regneark giver dig mulighed for at udføre alle slags "Hvad hvis? "Analyserer. En måde at gøre dette på er at bruge funktionen if () i et regneark.

R har også if () -funktionen, men det bruges mest til strømstyring i dine scripts. Fordi du typisk vil udføre en beregning på en hel vektor i R, er det normalt mere hensigtsmæssigt at bruge funktionen ifelse ().

Her er et eksempel på at bruge ifelse () til at identificere biler med høj brændstofeffektivitet i datasættet mtcars: >> mtcars <- transform (mtcars, + mpgClass = ifelse (mpg mtcars [mtcars $ mpgClass == "High",]

Beregning af betingede totaler

Noget andet, du sandsynligvis gjorde meget i Excel, beregner betingede summer og tæller med funktioner sumif () og countif ().

Du kan gøre det samme i et af to måder i R:

Brug ifelse.

Beregn blot målingen af ​​interesse på en delmængde af dine data.

Sig, du vil beregne et betinget gennemsnit af brændstofeffektivitet i mtcars. Du gør dette med den gennemsnitlige () funktion. For at få brændstofeffektiviteten for biler på hver side af en tærskel på 150 hestekræfter, prøv følgende: >> med (mtcars, mean (mpg)) [1] 20. 09062> med (mtcars, mean (mpg [hp med (mtcars, mean (mpg [hp> = 150])) [1] 15. 40667

Tæller antallet af elementer i en vektor er det samme som spørger om dets længde. Dette betyder, at Excel-funktionstællingen) har en R ækvivalent i længden (): >> med (mtcars, længde (mpg [hp> 150])) [1] 13

Gennemsætning af kolonner eller rækker

Nogle gange skal du transponere dine data fra rækker til kolonner eller omvendt. I R er funktionen til at transponere en matrix t (): >> xx [1] [2] [3] [1,] 1 5 9 [2,] 2 6 10 [3,] 3 7 11 [4,] 4 8 12

For at få transponeringen af ​​en matrix, brug t (): >> t (x) [1] [2] [3] [4] [1,] 1 2 3 4 [2,] 5 6 7 8 [3,] 9 10 11 12

Du kan også bruge t () til at transponere datarammer, men pas på, når du Gør dette. Resultatet af en transposition er altid en matrix (eller array). Da arrayer altid kun har en type af variabel, som f.eks. numerisk eller tegn, er de variable typer af dine resultater muligvis ikke det, du forventer.

Find unikke eller duplikerede værdier

For at identificere alle de unikke værdier i dine data skal du bruge den unikke () funktion. Prøv at finde de unikke værdier for antallet af cylindre i mtcars: >> unik (mtcars $ cyl) [1] 6 4 8

  • Nogle gange vil du vide, hvilke værdier af dine data der er duplikater. Afhængigt af din situation vil disse duplikater være gyldige, men nogle gange kan duplikatposter angive dataindtastningsproblemer.

  • Funktionen til at identificere gentagne indgange duplikeres (). I den indbyggede datasæt iris er der en dublet række i linje 143. Prøv det selv: >> dupes hoved (dupes) [1] FALSK FALSK FALSK FALSK FALSK FALSE> hvilken (dupes) [1] 143> iris [dupes,] Sepal. Længde Sepal. Bredde kronblad. Længde kronblad. Breddearter 143 5. 8 2. 7 5. 1 1. 9 virginica

Da resultatet af dupliceret () er en logisk vektor, kan du bruge den som et indeks til at fjerne rækker fra dine data. For at gøre dette skal du bruge negation operatøren - udråbstegn (som i! Dupes): >> iris [! Dupes,]> nrow (iris [! dupes,]) [1] 149

Arbejde med opslagstabeller

I et regnearksprogram som Excel kan du oprette opslagstabeller med funktionerne eller en kombination af indeks og match.

I R kan det være praktisk at bruge flette () eller match (). Funktionen match () returnerer en vektor med placeringen af ​​elementer, der matcher din opslagsværdi.

For at finde placeringen af ​​elementet "Toyota Corolla" i rækken navne på MTV'er, prøv følgende: >> indeksindeks [1] 20> mtcars [indeks, 1: 4] mpg cyl disp hp Toyota Corolla 33. 9 4 71. 1 65

Arbejde med pivottabeller

For enkle tabeller i R kan du bruge funktionen tapply () til at opnå lignende resultater som pivottabeller i Excel.Her er et eksempel på at bruge tapply () til at beregne gennemsnitlige hk for biler med forskellige antal cylindre og gear: >> med (mtcars, tapply (hp, liste (cyl, gear), gennemsnit)) 3 4 5 4 97. 0000 76. 0 102. 0 6 107. 5000 116. 5 175. 0 8 194. 1667 NA 299. 5

For lidt mere komplekse tabeller - det vil sige tabeller med mere end to krydsklassificerende faktorer - brug aggregatet () funktion: >> aggregat (hk ~ cyl + gear + am, mtcars, middel) cyl gear am hp 1 4 3 0 97. 00000 2 6 3 0 107. 50000 3 8 3 0 194. 16667 4 4 4 0 78. 50000 5 6 4 0 123. 00000 6 4 4 1 75. 16667 7 6 4 1 110. 00000 8 4 5 1 102. 00000 9 6 5 1 175. 00000 10 8 5 1 299. 50000

Brug af målsøgningen og løsningen

I R giver funktionen optimere () en ret simpel mekanisme til optimering af funktioner.

Forestil dig at du er salgsdirektør for et firma, og du skal fastsætte den bedste pris for dit produkt. Med andre ord, find prisen på et produkt, der maksimerer indtægterne.

I økonomi hedder en simpel prismodel, at folk køber mindre af et givet produkt, når prisen stiger. Her er en meget enkel funktion, der har denne adfærd: >> salg <- funktion (pris) {100 - 0. 5 * pris}

Forventede indtægter er så simpelthen produktet af pris og forventet salg: >> omsætning <- funktion (pris) {pris * salg (pris)}

Du kan bruge kurven () til at plotte kontinuerlige funktioner. Dette tager en funktion som input og producerer et plot. Prøv at plotte opførelsen af ​​salg og indtægter ved hjælp af kurven () funktionen, varierende pris fra $ 50 til $ 150: >> oldpar kurve (salg, fra = 50 til 150, xname = "pris", hoved = "salg ")> Kurve (indtjening, fra = 50 til 150, xname =" pris ", hoved =" indtjening ")> par (oldpar)

Dine resultater skal se ud som dette.

En model af forventet salg og omsætning.

Du har en arbejdsmodel med salg og indtægter. Du kan straks se, at der er et punkt med maksimal indtjening. Brug derefter R-funktionen til at optimere () for at finde værdien af ​​dette maksimum. For at bruge optimere () skal du fortælle hvilken funktion der skal bruges (i dette tilfælde indtægter ()) samt intervallet (i dette tilfælde priser mellem 50 og 150). Som standard optimerer () søgninger efter en minimumsværdi, så i dette tilfælde skal du fortælle om at søge efter maksimumsværdi: >> optimer (indtægt, interval = c (50, 150), maksimum = SAND) $ maksimum [1] 100 $ mål [1] 5000

Og der går du. Oplad en pris på $ 100, og forvent at få $ 5, 000 i omsætning.
10 Ting du kan gøre i R, som du ville have gjort i Microsoft Excel - dummies

Valg af editor

Husk Hvad du læser - dummier

Husk Hvad du læser - dummier

Læsning er et stort problem i uddannelsesmæssige cirkler. At have evnen til at læse en sætning, udtale alle ordene flydende og have et ordforråd bredt nok, der ikke nødvendiggør at henvise til en ordbog er en ting. Men at have evnen til at huske, hvad du læser, er noget helt andet. Hvis du ikke kan huske hvad ...

10 Personer med høj selvværd - dummier

10 Personer med høj selvværd - dummier

Mennesker med en stærk følelse af selv- værd at udvise en række egenskaber. Når du ser disse egenskaber reflekteret i dig selv og dine handlinger, vil du vide, at du er ankommet: De sætter pris på sig selv og andre mennesker. De nyder at vokse som en person og finde opfyldelse og mening i deres liv. De kan grave dybt ind i sig selv.

Videnskabelig dokumentation for brug af mindfulness til depression - dummies

Videnskabelig dokumentation for brug af mindfulness til depression - dummies

Mindfulness er nu en evidensbaseret teknik, der anvendes bredt til depression af NHS (Storbritanniens gratis offentlige nationale sundhedsvæsen). Det er også godkendt af NICE eller National Institute for Health and Care Excellence som en godkendt terapi til forebyggelse af tilbagefald af depression. Der er talrige kliniske undersøgelser, der viser effektiviteten ...

Valg af editor

Hvad er kravene til Cloud Integration? - dummies

Hvad er kravene til Cloud Integration? - dummies

Mange virksomheder vurderer i første omgang udfordringerne ved at integrere data på tværs af hybrid computermiljøer. De fleste integrationsproblemer mellem offentlige og private skyer vil fokusere på SaaS (Software as a Service) applikationer. Dette kan være en ny oplevelse for mange it-organisationer, der er vant til at kontrollere de datakilder, de integrerer. De antager ...

Hvad er platform som en service (PaaS) i Cloud Computing? - dummies

Hvad er platform som en service (PaaS) i Cloud Computing? - dummies

Platformen som en Service (PaaS) er et abstrakt og integreret cloudbaseret computermiljø, som understøtter udvikling, drift og administration af applikationer. Applikationskomponenter kan eksistere i et skymiljø eller kan integreres med applikationer, der administreres i private skyer eller i datacentre. En primær værdi af et PaaS-miljø er, at udviklere ikke har ...

Hvad er software som en service (SaaS) i Cloud Computing? - dummies

Hvad er software som en service (SaaS) i Cloud Computing? - dummies

Virksomheder har opdaget, at nogle organisatoriske og økonomiske fordele kan realiseres ved at bruge software som en service (SaaS) applikationer i cloud computing. De giver mulighed for at få en tredjepartsorganisation til at håndtere alle de detaljer, der går ud på at holde komplekse applikationer i gang. SaaS er ikke et selvstændigt miljø. I stedet er disse applikationer og tjenester ...

Valg af editor

Hvordan tastetryk logging kan bruges til at hak adgangskoder - dummies

Hvordan tastetryk logging kan bruges til at hak adgangskoder - dummies

En af ​​de bedste teknikker til at fange adgangskoder er ekstern tastetryk logning - brugen af ​​software eller hardware til at optage tastetryk som de er skrevet til computeren. Interessant teknik, men det virker. Vær forsigtig med tastetryk logning. Selv med gode hensigter rejser overvågning medarbejdere forskellige juridiske spørgsmål, hvis det ikke gøres korrekt. Diskuter med ...

Sådan får du adgang til en netværksprinter ved hjælp af et webinterface - dummier

Sådan får du adgang til en netværksprinter ved hjælp af et webinterface - dummier

Printere med direkte netværk Forbindelsen omfatter ofte en indbygget webserver, som giver dig mulighed for at styre printeren fra enhver browser på netværket. Følgende billede viser hjemmesiden for en HP LaserJet 400 M401dne printer. Denne webgrænseflade giver dig mulighed for at se statusoplysninger om printeren og kontrollere printerens konfiguration. ...

Sådan tilføjes en netværksprinter - dummier

Sådan tilføjes en netværksprinter - dummier

, Før du kan udskrive til en netværksprinter, skal du konfigurere din computer for at få adgang til den netværksprinter, du vil bruge. Fra Start-menuen skal du åbne Kontrolpanel og derefter dobbeltklikke på ikonet Printere. Hvis din computer allerede er konfigureret til at arbejde sammen med en netværksprinter, er et ikon for netværket ...