Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Sigurnost
  • Excel funkcije I (), ILI (). Prosljeđivanje argumenata funkcije po vrijednosti

Excel funkcije I (), ILI (). Prosljeđivanje argumenata funkcije po vrijednosti

Ova kategorija sadrži nekoliko specifičnih funkcija za rad sa naručenim podacima. Nije uzalud što kategorija uključuje spominjanje baza podataka: tablice za rad ovih funkcija moraju ispunjavati određene zahtjeve:

  • tabela mora sadržavati naslove kolona. Ova zaglavlja trebaju biti smještena striktno u jednom redu, ne smiju sadržavati spojene i prazne ćelije.
  • tabela mora biti nedjeljiva, tj. ne bi trebalo da sadrži u potpunosti prazne linije i kolone, kao i spojene ćelije
  • svaka kolona treba da sadrži informacije istog tipa: ako kolona treba da sadrži datume, onda ne bi trebalo da postoji ništa drugo osim datuma; ako kolona sadrži brojeve (količine, količinu), tada bi trebali biti samo brojevi. Ne biste trebali ostaviti ćeliju praznu ili staviti razmak u nedostatku brojeva. Umjesto toga, treba ga postaviti na 0.

Da raščlanite funkciju baze podataka, uzmite sljedeći primjer stolovi:

Ova tabela ispunjava sve uslove za rad sa funkcijama baze podataka, međutim, kako bi se lakše i fleksibilnije radilo sa funkcijama baze podataka, bolje je pomeriti tabelu podataka nekoliko redova naniže i dodati tabelu kriterijuma iznad, gde su uslovi za odabirom podataka iz glavne tabele formiraće se:


Za ovu tablicu će biti dati svi primjeri opisa funkcija. A kriterijumi su postavljeni na sledeći način: izaberite iz polja "Drvo" stabla jabuke sa visinom većom od 3 i manjom od 6 i trešnje sa vrednošću u polju "Starost" većom od 8. Ako pogledate tabelu sa podacima ( iz kojih će se birati podaci i vršiti proračune po funkcijama), tada samo dva reda ispunjavaju ove kriterije: redovi 9 i 10 na listu.
Kao što vidite, kao kriterijum možete navesti izraz u obliku:> 6, 0 (nije jednako nuli),> = 7, "Stablo jabuke".

Sve funkcije iz kategorije baze podataka imaju tri ista argumenta:
Funkcija (baza podataka; polje; kriterij)
baza podataka- upućivanje na ćelije podataka tabele, uključujući zaglavlje (A6: E12).
polje- v dati argument možete napisati i tekst direktno sa nazivom kolone u navodnicima ("Drvo", "Starost" ili "Žetva"), i broj koji specificira poziciju kolone u tabeli: 1 - za prvo polje (kolona) u tabeli "Stablo", 2 - za drugo polje "Visina", 3 za treće polje "Starost" i tako dalje.
kriterijum- referenca na opseg ćelija sa uslovima selekcije (A1: F3). Funkcija će odabrati podatke iz tabele koji ispunjavaju uslove navedene u ćelijama kriterijuma. Referenca na kriterije mora uključivati ​​nazive stupaca za koje se vrši odabir podataka.

  • DAVERAGE- Izračunava prosjek odabranih zapisa baze podataka:
    = DRVALUE (A6: E12; 5; A1: F3)
    = PROSJEČAN (A6: E12; "Profit"; A1: F3)
    = DAVERAGE (A6: E12, 5, A1: F3) će vratiti vrijednost od 90.000 rubalja. pošto zbir profita odabranih zapisa je jednak 180.000 rubalja, a odabrana su ukupno 2 zapisa. 180.000 / 2 = 90.000.
  • DCOUNT- Broji iznos numeričke ćelije u bazi podataka:
    = RAČUN (A6: E12; 5; A1: F3)
    = RAČUN (A6: E12; "Profit"; A1: F3)
    = DCOUNT (A6: E12, 5, A1: F3) će vratiti broj 2, jer samo dva reda u tabeli ispunjavaju kriterijume
  • RAČUN (DCOUNTA)- Broji broj nepraznih ćelija u bazi podataka:
    = BACOT (A6: E12; 4; A1: F3)
    = RAČUN (A6: E12; "Profit"; A1: F3)
    = DCOUNTA (A6: E12, 4, A1: F3) će vratiti 2, tj. će brojati broj ćelija koje nisu prazne u koloni "Profit" u redovima koji ispunjavaju uslove
  • BIZVLECH (DGET)- Dohvaća jedan zapis iz baze podataka koji zadovoljava specificirani uslov:
    = BURZER (A6: E12; 5; A1: F3)
    = BURZER (A6: E12, "Profit", A1: F3)
    = DGET (A6: E12, 5, A1: F3) za navedene uslove će vratiti vrijednost greške #NUM! (#BROJ!), Jer više od jednog unosa ispunjava ove uslove. Ako navedete raspon za kriterij kao:
    = BUZZER (A6: E12; 5; A1: F2) tada će funkcija vratiti vrijednost od 75 000 rub. , tj. jedini rekord profita za stabla jabuke sa visinom većom od 3 i manjom od 6 (samo red 10 spada u ovaj interval - stabla jabuke, visina 5)
  • DMAX (DMAX)- Nalazi maksimalna vrijednost među istaknutim zapisima baze podataka:
    = DMAX (A6: E12; 5; A1: F3)
    = DMAX (A6: E12; "Profit"; A1: F3)
    = DMAX (A6: E12, 5, A1: F3) će vratiti 105.000 rubalja. pošto ovo je maksimalni profit svih redova koji ispunjavaju kriterijume.
  • DMIN (DMIN)- Pronalazi minimalnu vrijednost među odabranim zapisima baze podataka:
    = DMIN (A6: E12; 5; A1: F3)
    = DMIN (A6: E12; "Profit"; A1: F3)
    = DMIN (A6: E12, 5, A1: F3) će vratiti iznos od 75.000 rubalja. pošto ovo je minimalni profit svih linija koje ispunjavaju kriterijume
  • DPRODUCT- Umnožava vrijednosti određenog polja u zapisima baze podataka koji ispunjavaju uvjet:
    = BDPRODUCT (A6: E12; 3; A1: F3)
    = BDPRODUCT (A6: E12; "Starost"; A1: F3)
    = DPRODUCT (A6: E12, 3, A1: F3) će vratiti 210 jer sve vrijednosti u koloni Starost koje ispunjavaju kriterije bit će pomnožene (14 * 15 = 210)
  • DSTANDOTKL (DSTDEV)- Procjenjuje standardnu ​​devijaciju na osnovu uzorka odabranih zapisa baze podataka:
    = DSTANDOTKL (A6: E12; 4; A1: F3)
    = DSTANDOTKL (A6: E12; "Prinos"; A1: F3)
    = DSTDEV (A6: E12, 4, A1: F3) će vratiti 0,707107, tj. procjena standardne devijacije prinosa prema navedenim kriterijumima.
  • DSTANDOTKLP (DSTDEVP)- Izračunava standardnu ​​devijaciju populacije od odabranih zapisa baze podataka:
    = DSTANDOTKLP (A6: E12; 4; A1: F3)
    = DSTANDOTKLP (A6: E12; "Produktivnost"; A1: F3)
    = DSTDEVP (A6: E12, 4, A1: F3) će vratiti 0,5, tj. tačna standardna devijacija prinosa za navedene kriterije, pod pretpostavkom da podaci u bazi podataka opisuju opšta populacija svo drveće u bašti.
  • BDSUM (DSUM)- Sažima brojeve u polju za zapise baze podataka koji ispunjavaju uslov:
    = BDSUMM (A6: E12; 5; A1: F3)
    = BDSUMM (A6: E12; "Profit"; A1: F3)
    = DSUM (A6: E12, 5, A1: F3) će vratiti zbroj profita svih redova koji ispunjavaju kriterijume, tj. 180.000 RUB
    = BDSUMM (A6: E12; 5; A1: A2)
    = DSUM (A6: E12, 5, A1: A2) će vratiti iznos dobiti od svih stabala jabuke, tj. 225.000 rub.
  • ODDISP (DVAR)- Procjenjuje varijansu na osnovu uzorka odabranih zapisa baze podataka:
    = ODDISP (A6: E12; 4; A1: A2)
    = BDDISP (A6: E12; "Produktivnost"; A1: A2)
    = DVAR (A6: E12, 4, A1: A2) će vratiti 0,5, što će biti procjena varijanse prinosa prema navedenim kriterijima, ako pretpostavimo da su podaci u tabeli uzorak iz opće populacije svih drveće u bašti
  • ODDISPP (DVARP)- Izračunava varijansu za cijelu populaciju iz odabranih zapisa baze podataka:
    = ODDISPP (A6: E12; 4; A1: A2)
    = BDDISPP (A6: E12; "Produktivnost"; A1: A2)
    = DVARP (A6: E12, 4, A1: A2) će vratiti 10,66667, tj. tačna varijansa prinosa jabuke i trešnje, pod pretpostavkom da podaci u bazi podataka opisuju populaciju svih stabala u vrtu

Funkcije u Excel program omogućavaju vam da izvodite razne, radije složene radnje računske prirode u samo nekoliko klikova. Tako zgodan alat kao "Čarobnjak funkcija"... Pogledajmo kako to funkcionira i šta možete učiniti s njim.

Čarobnjak funkcija je alat za mali prozor koji organizira sve dostupne funkcije u Excelu po kategorijama, što im olakšava pristup. Također, pruža mogućnost unosa argumenata formule putem intuitivnog grafički interfejs.

Idite na Čarobnjak za funkcije

Čarobnjak funkcija može se pokrenuti na nekoliko načina odjednom. Ali prije nego što aktivirate ovaj alat, morate odabrati ćeliju u kojoj će se formula nalaziti i stoga će se prikazati rezultat.

Najlakši način da dođete do njega je klikom na dugme "Insert function" lijevo od trake formule. Ova metoda je dobra jer je možete koristiti sa bilo koje kartice programa.

Osim toga, alat koji nam je potreban možemo pokrenuti odlaskom na karticu "Formule"... Zatim trebate kliknuti na krajnje lijevo dugme na traci "Insert function"... Nalazi se u kutiji sa alatima "Biblioteka funkcija"... Ovaj način je gori prethodne temešta ako niste u kartici "Formule", tada ćete morati izvršiti dodatne radnje.

Također možete kliknuti na bilo koje drugo dugme u okviru alata "Biblioteka funkcija"... U tom slučaju će se u padajućem izborniku pojaviti lista na čijem se dnu nalazi stavka "Ubaci funkciju..."... Ovdje trebate kliknuti na njega. ali, ovuda je još zbunjujuće od prethodnog.

Visoko na jednostavan način prelazak u režim Majstori pritiska kombinaciju interventnih tastera Shift + F3... Ova opcija omogućava Brzi prolaz bez dodatnih "pokretanja tijela". Glavni nedostatak leži u činjenici da nije svaki korisnik u stanju da zadrži sve kombinacije prečica u svojoj glavi. Dakle, ova opcija nije prikladna za one koji tek koriste Excel.

Kategorije stavki u čarobnjaku

Koji god način aktivacije da odaberete od gore navedenih, u svakom slučaju, nakon ovih radnji, otvara se prozor Majstori... Na vrhu prozora nalazi se polje za pretragu. Ovdje možete unijeti naziv funkcije i pritisnuti dugme "pronađi" da brzo pronađete i pristupite predmetu koji tražite.

Srednji dio prozora predstavlja padajuću listu kategorija funkcija koje predstavljaju Gospodaru... Da vidite ovu listu, kliknite na ikonu obrnutog trougla desno od nje. Tako se otvara puna lista dostupne kategorije... Možete se pomicati prema dolje pomoću bočne trake za pomicanje.

Sve funkcije su podijeljene u sljedećih 12 kategorija:

  • Tekst;
  • Financial;
  • Datum i vrijeme;
  • Reference i nizovi;
  • Statistical;
  • Analytical;
  • Rad sa bazom podataka;
  • Provjera svojstava i vrijednosti;
  • Brain teaser;
  • Inženjering;
  • Matematički;
  • Definisano od strane korisnika;
  • Kompatibilnost.

U kategoriji "Definisano od strane korisnika" postoje funkcije koje je sam sastavio korisnik ili preuzete sa njih eksternih izvora... U kategoriji "Kompatibilnost" locirani su elementi iz starijih verzija Excela, za koje već postoje noviji analozi. Prikupljeni su u ovu grupu kako bi se održala kompatibilnost sa dokumentima kreiranim u starijim verzijama aplikacije.

Osim toga, na istoj listi postoje dvije dodatne kategorije: "Kompletan popis po abecednom redu" i ... U grupi "Kompletan popis po abecednom redu" postoji kompletna lista svih funkcija, bez obzira na kategoriju. U grupi "10 nedavno korištenih" postoji lista od deset posljednje stavke kojima je korisnik pribjegao. Ova lista se stalno ažurira: prethodno korišteni elementi se uklanjaju, a novi se dodaju.

Izbor funkcije

Da biste otišli u prozor sa argumentima, prvo morate odabrati željenu kategoriju... Na terenu "Odaberi funkciju" zabilježite ime koje je potrebno za izvođenje konkretan zadatak... Na samom dnu prozora nalazi se hint u obliku komentara na odabranu stavku. Nakon što je određena funkcija odabrana, potrebno je da kliknete na dugme "UREDU".

Argumenti funkcije

Nakon toga otvara se prozor sa argumentima funkcije. Glavni element ovog prozora su polja argumenata. Imati različite funkcije argumenti su različiti, ali način na koji rade je isti. Može ih biti nekoliko, a možda i jedan. Argumenti mogu biti brojevi, reference ćelija ili čak reference cijelog niza.


Izvršenje funkcije

Nakon što ste pritisnuli dugme "UREDU" Gospodaru zatvara i sama funkcija se izvršava. Rezultat izvršenja može biti vrlo raznolik. Zavisi od zadataka koji se postavljaju formuli. Na primjer, funkcija SUMA, koji je odabran kao primjer, sumira sve unesene argumente i prikazuje rezultat u posebnoj ćeliji. Za ostale opcije sa liste Majstori rezultat će biti potpuno drugačiji.

Kao što možete vidjeti, Čarobnjak funkcija je veoma zgodan alat, što uvelike pojednostavljuje rad sa formulama u Excelu. Može se koristiti za pretragu potrebnih elemenata sa liste, kao i unos argumenata kroz grafički interfejs. Za početnike Gospodaru posebno nezamjenjiv.

Jedna od najpopularnijih karakteristika u Excel aplikacijaIF... Ovo je logično poređenje vrijednost i rezultat. Jednostavnije rečeno, funkcija može zvučati ovako:

AKO je uslov tačan, onda to radimo, inače radimo nešto drugo.

Sintaksa ova funkcija je prilično jednostavna:

IF (boolean_condition, case_value_ TRUE, value_if_FALSE)

Pogledajmo izbliza:

  • Boolean_condition- vrijednost koju ćemo provjeriti
  • Vrijednost_u_slučaju_ TRUE- djelovanje kada je zahtjev ispunjen
  • Vrijednost u case_FALSE- akcija kada Boolean_condition nije ispunjen

Kako koristiti funkciju

Primjer br. 1

Snimke ekrana ispod pokazuju najjednostavniji slučaj upotrebe. Mi prvi provjeriti dato stanje A1> 25... AKO ovaj zahtjev izvedeno, zatim izlazimo u ćeliju “ preko 25", inače " manje ili jednako 25».

Primjer br. 2

Sada više težak zadatak... U nastavku ćemo razmotriti primjer resertifikacije zaposlenih u preduzeću. U početku tabela izgleda ovako:

US neophodno u stupcu C prikazati rezultate recertifikacije, koji mogu imati binarnu vrijednost: Prošlo ili NIJE PROŠAO... Naši kriterijumi će biti sledeći: ko je kucao više od 45 bodova, to se smatra prošao ispit, ali svi ostali nisu.

Da dovršite zadatak neophodno:


Koristimo nekoliko uslova

Ako je potrebno, funkcija IF mogu investirati jedno u drugo. Tako ćemo proširiti mogućnosti rješenja.

Na primjer, uzmimo ponovnu certifikaciju zaposlenih, koju smo ranije razmatrali. Promijenite kriterije ishoda i dajmo svima ocjenu: Loše, dobro i odlično. U redu kladit ćemo se kada rezultati budu preći će 60. Procjena Dobro se može dobiti kucanjem od 45 do 60 bodova... Pa, u drugim slučajevima stavljamo Loše.


Kao što možete vidjeti iz primjera, možete zamijeniti uvjet umjesto druge i treće vrijednosti funkcije. Na taj način dodajte potreban broj priloga. ali korisno je napomenuti da će nakon dodavanja 3-5 priloga postati gotovo nemoguće raditi s formulom, jer to će biti veoma glomazno.

Drugi slučajevi upotrebe funkcije

Pronalaženje zbira kolona ili ćelija

Na primjer, postoji potreba da se zbroji svaka druga ćelija u koloni. U ovom slučaju, pomoću operatora SUMIF... To će nam omogućiti da radimo samo sa onim stupcima koji odgovaraju našim zahtjevima. Razmotrićemo slučaj kada je potrebno zbrojiti stavke u neparnim redovima.

Da bismo riješili problem, potrebno nam je insert dodatni stupac i redovi brojeva 1 i 0. Upravo te podatke ćemo koristiti u našoj formuli. Primjer pokazuje koju smo formulu koristili.

Sintaksa: SUMIF (opseg_ćelije, iskorišteno_stanje, [opseg_zbira])

  • Domet- traženi argument. Ovdje je postavljen raspon koji se procjenjuje za usklađenost sa uslovom.
  • Rabljeno_stanje- ovdje označavamo koje ćelije treba sabrati.
  • Raspon_zbira- ukazujemo koji opseg koristiti za zbrajanje.

Broj ponavljanja elemenata na listu

U ovom slučaju možemo izbrojati koliko puta dati element javlja na listu. Za to koristimo funkciju COUNTIF... Ona broji broj ćelija match sa zadatom vrednošću.

U ovom primjeru brojimo koliko kupaca ima u svakom gradu. U formuli postavljamo prvi raspon, a drugi vrijednosti koje treba tražiti.

Korištenje COUNTIF i SUMIF prilikom izračunavanja podataka

U primjeru ćemo pokušati definirati prosječna primanja od klijenata u svakom gradu. Da bismo to učinili, ukupan prihod grada podijelimo sa brojem kupaca.

Pronalaženje višestrukih pojavljivanja elementa na listi

Ako imamo stalno ažuriranu listu podataka u kojoj, kako raste, duplikati, onda pronalaženje pojava na ovoj listi može biti teško. Da biste riješili ovaj problem, najlakši način je korištenje funkcije VLOOKUP i COUNTIF.

Početi, dodati dodatna kolona za dodavanje serijski broj pojavljivanja na ime kupca. Kao rezultat toga, prvo spominjanje elementa će vratiti Ime1, sljedeće Ime2, itd.

Koristimo Traži klijenta Christina Aguilera. Koristeći VLOOKUP formula("Christina Aguilera3", search_range, 2, FALSE), dobijamo treći broj ovog klijenta. U formulu stavljamo zadnju vrijednost FALSE, pošto lista nije sortirana, a potrebna nam je tačno podudaranje elementi.

Kako smanjiti broj investicija IF

Podržane verzije do i uključujući EXCEL 2003 do 7 nivoa nesting IF. Počevši od Excel verzije 2007, ovo ograničenje uklonjeno... Ali vrijedi napomenuti da malo ljudi ide ispod 3-4 nivoa gniježđenja.

Da biste smanjili upotrebu IF priloga, možete koristiti funkciju IZBOR... Radi sa vrijednostima ili radnjama sa date liste prema broju indeksa.

Sintaksa: IZBOR (broj_indeksa; vrijednost_indeksa1; vrijednost_indeksa2; [vrijednost_indeksa3]; ...)

Na primjer, funkcija IZBOR (1; "Treći"; "Drugi"; "Prvi"), vratit će riječ " Treće„Ako ga dodamo u ćeliju.

Treba napomenuti da postoje neka ograničenja. Konkretno, indeks može biti samo brojevi.

Excel funkcija je unaprijed definirana formula koja radi na jednoj ili više vrijednosti i vraća rezultat.

Najčešće Excel funkcije su kratka napomenačesto korištene formule.

Na primjer funkcija = ZBIR (A1: A4) slično snimanju = A1 + A2 + A3 + A4.


A neke funkcije obavljaju vrlo složene proračune.


Svaka funkcija se sastoji od imena i argumenta.


U prethodnom slučaju SUMA- ovo je naziv funkcije, a A1: A4 - argument... Argument je zatvoren u zagradama.

Jer najčešće se koristi funkcija suma, tada se dugme "AutoSum" postavlja na "Standard" alatnu traku.

Unesite u ćelije A1, A2, A3 proizvoljnim brojevima... Aktivirajte ćeliju A4 i pritisnite dugme za automatski zbroj. Rezultat je prikazan ispod.



Pritisnite tipku enter. Formula za zbir ćelija A1..A3 će biti umetnuta u ćeliju A4. Dugme za automatski zbroj ima padajuću listu iz koje možete odabrati drugu formulu za ćeliju.



Da biste odabrali funkciju, koristite dugme Umetni funkciju na traci formule. Kada kliknete na njega, pojavljuje se sljedeći prozor.



Ako je funkcija koja se primjenjuje u ovog trenutka, pretraživanje se može izvršiti u dijaloškom okviru "Traženje funkcija".

Ako je formula vrlo glomazna, možete uključiti razmake ili prijelome reda u tekst formule. Ovo ni na koji način ne utiče na rezultate izračuna. Da biste prekinuli liniju, pritisnite kombinaciju tipki Alt + Enter.

Možete koristiti zaglavlja tablice u formulama umjesto upućivanja na ćelije tablice. Napravite sljedeći primjer.



By Microsoft default Excel ne prepoznaje zaglavlja u formulama. Da biste koristili naslove u formulama, izaberite Opcije u meniju Alati. Na kartici Izračuni, u grupi Opcije radne sveske potvrdite izbor u polju za potvrdu Dozvoli imena opsega.


At redovno snimanje formula u ćeliji B6 bi izgledala ovako: = ZBIR (B2: B4).


Kada koristite zaglavlja, formula će izgledati ovako: = ZBIR (Kv 1).


Morate znati sljedeće:

  • Ako formula sadrži zaglavlje stupca/retka u kojem se nalazi, onda Excel pretpostavlja da želite da koristite raspon ćelija ispod zaglavlja kolone tabele (ili desno od zaglavlja reda);
  • Ako formula sadrži zaglavlje stupca/retka različito od onog u kojem se nalazi, Excel pretpostavlja da želite koristiti ćeliju na raskrsnici kolone/retka sa tim zaglavljem i reda/kolone u kojoj se nalazi formula.
  • Kada koristite zaglavlja, možete specificirati bilo koju ćeliju u tabeli koristeći presjek raspona. Na primjer, da biste upućivali na ćeliju C3 u našem primjeru, možete koristiti formulu = Linija 2 Kv 2... Obratite pažnju na razmak između naslova redova i kolona.
  • Formule koje sadrže naslove mogu se kopirati i zalijepiti, a Excel ih automatski prilagođava kolonama i redovima koje želite. Ako se formula pokuša kopirati na neprikladno mjesto, Excel će vas o tome obavijestiti, a vrijednost će biti prikazana u ćeliji IME?... Kada promijenite naslove naslova, slične promjene se javljaju u formulama.

Koriste se u gotovo svakoj fazi analize podataka, od prikaza deskriptivne statistike do funkcija za rješavanje visoko ciljanih problema. Posebno mjesto zauzimaju funkcije "vlastite proizvodnje": bez njih je teško, ali ih nikako nije teško stvoriti. Koje su točno funkcije, kako ih koristiti i sam napisati, reći ću vam u ovom članku!

Čemu služe funkcije u R?

Prilikom analize podataka, R kod se piše u obliku skripte tako da kasnije možete jednostavno nastaviti raditi s njim ili pružiti priliku da svoju analizu podataka reproducirate drugoj osobi. Dakle, skriptni program (ili skripta) je niz naredbi napisanih tekstualni format... U idealnom slučaju, scenario bi trebao biti kompaktan i razumljiv drugoj osobi. Kako bi se smanjio broj linija koda, kako bi kod bio čitljiviji i lakši za uređivanje, koriste se funkcije.

Često tokom analize morate nekoliko puta izvršiti iste radnje, odnosno napisati isti kod, pri čemu je samo neznatan dio promijenjen. Međutim, bilo bi mnogo praktičnije formatirati takve nizove koda u funkciju. U ovom slučaju, blok koda koji se kopira s vremena na vrijeme bit će tijelo funkcije, a mjesta koda koja promijenite u ovom bloku će postati argumenti (parametri) funkcije. Također, funkcija mora imati ime kako bi se mogla pozvati. Dijagram za konstrukciju funkcije u R izgleda ovako:

Prvo napišite naziv funkcije, zatim znak zadatka i riječ funkcija koji kreira objekat funkcije klase. U zagradama označavamo argumente, a tijelo funkcije je unutra kovrčave zagrade... Važno je napomenuti da za korištenje funkcije trebate unijeti samo naziv funkcije i njene argumente:

Tako masivan scenario sa veliki iznos ponavljajući kod koji koristi funkcije postaje kompaktniji i lakši za upotrebu. Također, ne zaboravite komentirati kod, čije tumačenje nije očito, tako da vi ili druga osoba možete razumjeti algoritam i svrhu vaše analize.

Koristeći postojeće funkcije u R

Srećom, u R postoji mnogo gotovih funkcija. Na primjer, mean (), summary (), read.table (), lm () su osnovne funkcije koji se može koristiti bez upotrebe paketi treće strane... Da biste saznali koje tačno argumente trebate unijeti da biste koristili funkciju, unesite znak pitanja i naziv funkcije u konzolu, na primjer:? Read.table. Na otvorenoj stranici u odjeljcima Upotreba i Argumenti postojat će lista argumenata za korištenje ove funkcije. Obično su kritični argumenti za rad funkcije na vrhu liste. Argumenti koji neće biti popunjeni će prihvatiti zadane vrijednosti:

read.table ("D: /Folder/mytable.txt", sep = "\ t", zaglavlje = T)

Budući da službena arhiva R paketa (CRAN) ima više od 11 hiljada, broj dostupne funkcije za analizu podataka se ubrzano približava 1 milion !!! Kako vršimo pretragu željenu funkciju u svim ovim paketima? Za to postoji stranica rdocumentation.org: povoljna usluga Tražite karakteristike i pakete prema riječi za pretraživanje ili kombinaciji riječi.

Osnovna verzija R koja je preuzeta na vaš računar sastoji se od 30 ugrađenih paketa. Ostatak trebate preuzeti i povezati sami. Stoga prvo tražimo kojem paketu funkcija pripada, instaliramo ovaj paket u biblioteku paketa na računaru, učitavamo ga u R i tek onda koristimo funkcije učitanog paketa. Ne zaboravite da preuzmete paket kada ponovo lansirati R ako namjeravate ponovo koristiti funkcije ovog paketa.

Kreiranje funkcije: tri dobra primjera!

Bez obzira koliko funkcija ima u CRAN-u, prije ili kasnije morat ćete napisati svoju. Razloga za to može biti nekoliko: takva funkcija još nije napisana; lakše je napisati svoj nego ga tražiti u drugim R paketima: itd. U svakom slučaju, kreiranje funkcija uopće nije teško. Da bih to dokazao, daću tri jednostavni primjeri, što će vam pomoći da shvatite logiku izgradnje funkcija.

Primjer 1: koliko je 2 + 2 × 2?

Kreirajmo najjednostavnija funkcija baziran isključivo na aritmetičkim operacijama. Na primjer, izračunajmo ono što nam je poznato osnovna škola primjer: koliko je 2 + 2 * 2? Hajde da malo zakomplikujemo: 12 + 12 * 12? Pa, na kraju aritmetičkih vježbi 42 + 42 * 42? Kao što ste možda primijetili, svi ovi primjeri su zasnovani na istoj formuli: a + a * a ... Kreiranje funkcije u R bi bilo idealno rešenje za ovakvu vrstu zadataka.

škola<- function(a){ b = a+a*a print(b) } school(2) school(12) school(22)

Rezultat izračunavanja funkcije će biti prikazan na ekranu konzole, pošto za prikaz informacija koristili smo osnovnu funkciju print () unutar naše funkcije... Kada trebamo sačuvati rezultat kao poseban objekt (varijabilu), trebali bismo koristiti funkciju return (), što ćemo učiniti u sljedećem primjeru.

Primjer 2: dva vršoka iz lonca

Kao dete svi smo čitali ruske narodne priče. Na primjer, uvijek me je zanimalo šta znači izraz "dva inča od lonca", odnosno koliko je to u centimetrima. Mislim da je vrijeme da dobijemo odgovor: kreirajmo vershok u R pretvarač koristeći novu funkciju convershok () .

Jedan vershok je jednak 4,445 cm. Neka program prikaže rečenicu koja kaže da je toliko veršoka jednako toliko centimetara, koristeći osnovnu funkciju paste () za kombinovanje tekstualnih i numeričkih objekata. Također želimo da se rezultirajuća vrijednost pohrani kao poseban objekt, za koji dodajemo return (vershok) na kraju funkcije.

convershok<- function(n){ vershok <- n * 4.445 print (zalijepi (n, "vershok", "=", vershok, "cm")) return (vershok)) x<- convershok(2)

Odlično, primili smo cijenjenu poruku i sačuvali 8,89 (cm) kao objekt x ... Ali poslovica ne kaže o kakvom se loncu radi, pa izmjerite visinu prvog lonca koji naiđe, dodajte ovu vrijednost varijablu x i napišite u komentarima koliko ste dobili ;-)

Primjer 3: laptop na kredit, koliko ćete morati preplatiti?

Recimo da je studentski laptop pokvaren. Trenutno nema slobodnog novca da kupi novi, pa je odlučio da ga podigne na kredit. Banka mu je ponudila kredit u iznosu od 30.000 rubalja sa kamatom od 35% godišnje i mogućnošću prijevremene otplate. Izračunajmo koliko novca treba platiti za laptop prilikom otplate kredita za mjesec, tri mjeseca i godinu dana.

Za proračune koristim formulu za izračunavanje iznosa kamate naplaćene za korištenje kredita tokom n mjeseci.

sp = p * (t + 1) / 24, gdje:

sp- iznos kamate
str- godišnja kamatna stopa
t- rok kredita (mjeseci).

Ovu formulu implementiramo u R, a zatim dodamo na cijenu laptopa ( n ) izračunati ukupan procenat ( sp ) pomnoženo sa cijenom laptop proizvoda ( n ):

rezultat<- function(n, p, t){ sp <- p*(t + 1)/24 total <- n + n*sp/100 print (zalijepi ("sp =", okruglo (sp, 2), "%;", "ukupna cijena =", ukupno, "rubalji"))) rezultat (30000, 35, 1) rezultat (30000, 35, 3) rezultat (30000, 35, 12)

Kao što vidite, 35% godišnje ne znači da će student platiti 35% trenutne cijene laptopa za kredit: u stvarnosti, on će preplatiti 19% za godinu dana. Još jedan zanimljiv zaključak je da je kamata na kredit za mjesec dana mnogo veća od prosječne mjesečne kamate za tri mjeseca, a još više za godinu dana. Odnosno, "isplativo" je uzimati kredite na dugi rok :-)

I što je najvažnije, naš student može koristiti istu funkciju za svoje buduće kalkulacije, ako odluči da podigne kredit kod druge banke sa drugačijom kamatnom stopom ili odabere laptop u drugom cenovnom rangu. Da bi to učinio, samo treba promijeniti vrijednosti argumenata u funkciji.

Zaključak

Po mom mišljenju, kreiranje funkcija je posebna vrsta umjetnosti, gdje se hrabre i ponekad potpuno smiješne ideje kombiniraju s pragmatičnim pristupom njihovoj implementaciji. Nadam se da su vam ove informacije bile korisne. Sljedeći put ću nastaviti priču o funkcijama, gdje ćemo se koncentrirati na posao. Ako imate pitanja, postavite ih u komentarima, uvijek ću rado odgovoriti na njih!

Top srodni članci