Natrag na Blog
Blog

Učenje R-a | Dio 2 | Varijable i funkcije

Dec 10, 2020·5 min read·Palomi Jain
#Data Analytics#Data Science#R#Rstudio
Učenje R-a | Dio 2 | Varijable i funkcije

Učenje R-a | Dio 2 | Varijable & Funkcije


Varijable

  • x <- (1:10)
  • x = (1:10)
  • (1:10) -> x
  • assign("x", 1:10)

Svi gornji načini dodjeljuju niz od 1 do 10 varijabli x.

Ovo su operatori dodjele =, ->, <- .

Jedna druga česta funkcija za stvaranje vektora ili liste je funkcija c(…).

  • c(1,10:13) Rezultat bi bio niz 1 10 11 12 13. To znači spajanje objekata/varijabli odvojenih zarezom.
  • c(1:5, 10.5, "next") Rezultat bi bio niz "1" "2" "3" "4" "5" "10.5" "next".
  • y = c(1,2,3) & x = c(y, 1, y) Ovo je primjer korištenja varijabli za stvaranje novih varijabli. Ovdje bi vrijednost y bila 1 2 3 dok bi vrijednost x bila 1 2 3 1 1 2 3.

Za daljnju upotrebu funkcije c(…) pogledajte-

funkcija c | R Dokumentacija Ovo je generička funkcija koja kombinira svoje argumente. Zadana metoda kombinira svoje argumente u vektor…www.rdocumentation.org

Ugrađene Funkcije

  • c(…) Kao što je objašnjeno gore.
  • ls() ili objects()Daje popis postojećih objekata koji su kreirani.
  • rm("x")Briše objekt. Parametar je naziv objekta.
  • sum("x")Daje zbir vektora x. Na primjer, ako x je 1 2 3 1 1 2 3 tada bi sum("x") bio13.
  • sqrt("x")Daje kvadratni korijen vektora x. Na primjer ako je x 1 4 9 tada bi sqrt("x") bio drugi vektor s vrijednostima 1 2 3.
  • seq(…)Ova funkcija se koristi za generiranje niza brojeva. Prima različite parametre kao što su from (Početna vrijednost niza), to (Krajnja vrijednost niza), by (Broj za koji se niz povećava), length.out (Duljina niza) i along.with (Ovo je popis vektora s duljinom n i koristi se samo za dobivanje duljine ovog prosljeđenog popisa. Čudno 😷) Primjer:- seq(from=1, to=4, by=0.5) — Daje niz od 1 do 4 s povećanjem od 0.5. Više o seq(…) ovdje.
  • paste(…) Ova funkcija se koristi za izradu stringova koristeći nadovezivanje vektora s 2 parametra, odnosno sep & collapse. sep daje separator između nadovezanih vektora dok collapse daje separator koji nadovezuje vrijednosti u nadovezanom vektoru. (Inception? 🤒) Nauči to s nekoliko primjera. paste("xyz", 1:3)"xyz 1" "xyz 2" "xyz 3" (Ovo je bez sep & collapse) paste("xyz", c(1,2,"variable",3), sep=",") "xyz,1" "xyz,2" "xyz,variable" "xyz,3" (Ovo je samo sa sep ) paste(c(1:5), c(5:10), sep = ": ", collapse = "; ")"1: 5; 2: 6; 3: 7; 4: 8; 5: 9; 1: 10" (Ovo je sa sep i collapse; Primijetite da se ovdje formira jedan string 😄.) Više o paste(…) ovdje.
  • rep(x, …) Kao što naziv sugerira, ova funkcija se koristi za ponavljanje postojećeg vektora. Parametri koje ova funkcija može primiti su times (Broj puta da se vektor ponovi), length.out (Željena duljina izlaznog vektora) & each (Broj puta da se svaki element vektora ponovi) rep(c(1,2,3), 3) ili rep(c(1:3), times=3)1 2 3 1 2 3 1 2 3 rep(c(1:3), each=3)1 1 1 2 2 2 3 3 3 Više o rep(x, …) ovdje.

Funkcije definirane od strane korisnika

Primjer dolje pokazuje jednostavan način za pisanje funkcije od jedne linije koja vraća kvadrat varijable. Naziv funkcije ovdje je fn.

fn <- function(a) {a*a}
fn(10)

Primjer bloka koda u funkciji.

fn -> function(a, b) {

c = a * b

c = c + b

print(x)

}
fn(10, 20)

Funkcije sa petljama,if-else.

primeNumber = function(n) {
  if(n>=2) {
    s = seq(2,n)

p = c() #Inicijalizacija vektora koji sprema proste brojeve
    for(i in seq(2,n)) {

if(any(s == i) {

p = c(p, i)

s = c(s[(s%%i) != 0], i)

}

}

return(p)

} else {

stop("Unos mora biti veći od 2")

}

}

Gornji primjer vraća vektor sa svim prostim brojevima do n prosljeđene funkciji. Funkcija stop ovdje zaustavlja izvršavanje i baca grešku.

Inicijalni p = c() se koristi za inicijalizaciju vektora koji sprema prosti broj. I s = seq (2,n) se koristi za inicijalizaciju vektora do kojeg se zatim petlja.

Petlja provjerava je li vrijednost prisutna u vektoru s definiranom ranije koristeći any funkciju. I ako se podudara tada dodaje tu vrijednost vektoru prostih brojeva i ažurira vektor koji se treba provjeriti, tj. s sa svim brojevima koji nisu djeljivi sa trenutnim i

Na kraju petlje, vektor p sadrži sve proste brojeve.


References


Hvala što ste pročitali. U mom sljedećem članku, objasnit ću funkcije plotanja. Osim toga, neki uvidi o paketima & skupovima podataka.

Također, ako niste pročitali dio 1. Možete ga pročitati ovdje.

Postavite svoja pitanja dolje. Prijedlozi su dobrodošli. 🙌