Finit și infinit în R

Dacă în alte pachete de programe atunci când facem o împărțire la 0, rezultatul ne arată o eroare, în R, rezultatul împărțirii este infinit. Concret, dacă împărțim pe 7 la 0 vom obține:

Deci infinit este notat cu Inf. Desigur pentru un calcul simplu ca cel de mai sus, este ușor de văzut că rezultatul este infinit. Însă atunci când avem o expresie, am putea dori să vedem dacă rezultatul e finit sau nu. Pentru aceasta avem o funcție al cărei rezultat poate fi TRUE sau FALSE. Dacă dorim să verificăm dacă rezultatul e finit atunci vom folosi funcția is.finite, care va întoarce valoarea TRUE dacă rezultatul e finit și FALSE dacă rezultatul e infinit. Complementara acestei funcții este is.infinite care care va întoarce valoarea TRUE dacă rezultatul e infinit și FALSE dacă rezultatul e finit.

Desigur, în R, infinitul este luat ca fiind un număr foarte mare (undeva în jurul valorii 10308). Pentru a verifica acest lucru vom scrie un vector care conține valori apropiate de 10308, (mai mici și mai mari) și vom folosi funcția is.finite:

Așa cum pute observa și din calcularea lui a1 și a2, de la 10309 avem inifitul (pentru R). În fapt pragul este la  1,8 x 10308. Mai putem observa că pentru numere mari se folosește scrierea științifică (ce este după e reprezintă puterea lui 10), asemănătoare cu ceea ce apare și în Excel.

Alte operații matematice în R

Continui să prezint funcții cu ajutorul cărora se pot realiza operații matematice în R

Forma funcției

Explicație

Exemplu

abs(x)

valoarea absolută abs(-10) = 10
log(x,base=y)  logaritm în baza y (dacă nu e specificată baza, implicit se calculează logaritmul natural) log(8,base=2)=3
exp(x) valoarea ex  exp(2) = 7.389056
 sqrt(x)  radical din x  sqrt(13)=3.605551
 factorial(x)  x!  factorial(3) = 6

Ca și în postarea anterioară voi prezenta un exemplu în care aplicăm aceste funcții. Vom lua două variabile x și y, cărora le vom da valorile, -1, respectiv 8.

Funcția logaritm se poate aplica și la un vector de valori:

O altă funcție utilă este funcția pentru aproximarea unui număr,  round. Ea este de forma

round(număr,digit=z),

unde număr este numărul care dorim să-l aproximăm, iar z este numărul de zecimale la care dorim să facem aproximarea.

O altă funcție care ne poate ajuta la rotunjirea numărului este funcția signif. Aceasta funcție e de forma:

signif(număr,digit=c)

unde număr este numărul care dorim să-l aproximăm, iar c este numărul de cifre la care dorim să facem aproximarea. Pentru a înțelege mai bine, prezint un exemplu mai jos:

În final voi prezenta încă două funcții: floor(x) – pentru aproximarea prin lipsă și ceiling(x) pentru aproximarea prin adaos: