Exercícios do Capítulo 1

x = 0
y = -1
z = 32
a_1 = x+y+z; a_1
## [1] 31
a_2 = y*z; a_2
## [1] -32
a_3 = z/y; a_3
## [1] -32
b_1 = z^2  ; b_1
## [1] 1024
# Ou também
b_1 = z**2 ; b_1
## [1] 1024
b_2 = z^3 ; b_2
## [1] 32768
b_3 = z^x ; b_3
## [1] 1
c_1 = sqrt(a_1) ; c_1
## [1] 5.567764
c_2 = sqrt(x) ; c_2
## [1] 0
c_3 = sqrt(b_2/a_1); c_3
## [1] 32.51203
d_1 = a_2^(1/3); d_1 
## [1] NaN
#Existem 3 raízes diferentes para esse problema, 2 imaginárias e 1 real, ao retornar NaN, ele apenas diz que a raiz cúbica principal não é um número real.
d_2 = (-1/a_3) ^ (1/4); d_2
## [1] 0.4204482
d_3 = z ^ (2/3); d_3
## [1] 10.07937
e_1 = abs(x); e_1
## [1] 0
e_2 = sqrt(abs(a_2)); e_2
## [1] 5.656854
e_3 = abs(1/z) ; e_3
## [1] 0.03125
f_1 = exp(x) ; f_1
## [1] 1
f_2 = exp(x+y+z) ; f_2
## [1] 2.904885e+13
f_3 = exp(a_3) ; f_3
## [1] 1.266417e-14
g_1 = log(x) ; g_1
## [1] -Inf
g_2 = log(x+y+z) ; g_2
## [1] 3.433987
g_3 = log(y*z) ; g_3 #A Função log não está definida para números não positivos
## Warning in log(y * z): NaNs produzidos
## [1] NaN
h_1 = sqrt(pi) ; h_1
## [1] 1.772454
h_2 = sqrt(exp(-x^2)) ; h_2
## [1] 1
h_3 = sqrt(3*log(4/a_3)) ; h_3 #A Função log não está definida para números não positivos
## Warning in log(4/a_3): NaNs produzidos
## [1] NaN
ch1 = "a"
ch2 = "b"
ch3 = "c"
ch4 = paste(ch1,".",ch2,".",ch3, sep = ""); ch4
## [1] "a.b.c"
ch5 = paste(ch1,ch2,ch3, sep = "") ; ch5
## [1] "abc"
ch4 == ch5
## [1] FALSE
ch4 != ch5
## [1] TRUE
18%%5
## [1] 3
-5%%2
## [1] 1
15%%5
## [1] 0
8.3%%3
## [1] 2.3
a = 2 #Número qualquer
a%%2 #Se o resto da divisão de a por 2 for igual a 1, temos que a é um número ímpar, caso contrário, a é par.
## [1] 0
a%%2 == 0
## [1] TRUE
a = 0.3 #Número qualquer
a%%1 # Se o resto for 0, temos que a é inteiro, caso contrário, a é real.
## [1] 0.3
a%%1 == 0
## [1] FALSE
a = 0.3
abs(a) == a && a%%1 == 0 
## [1] FALSE
#Ou
a >= 0 && a%%1 == 0
## [1] FALSE
a<-seq(1:10); b<-seq(1,20,by=2); d<-seq(20,1,by=-2)
x = b - d ; x
##  [1] -19 -15 -11  -7  -3   1   5   9  13  17
y = a * 2; y
##  [1]  2  4  6  8 10 12 14 16 18 20
z = a==b ; z
##  [1]  TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
w = d > b ; w
##  [1]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE
letters
##  [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s"
## [20] "t" "u" "v" "w" "x" "y" "z"
LETTERS
##  [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S"
## [20] "T" "U" "V" "W" "X" "Y" "Z"
class(letters)
## [1] "character"
class(LETTERS)
## [1] "character"
length(letters)
## [1] 26
length(LETTERS)
## [1] 26
a = c(LETTERS, letters) ; a
##  [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S"
## [20] "T" "U" "V" "W" "X" "Y" "Z" "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l"
## [39] "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"
length(a)
## [1] 52
class(a)
## [1] "character"
b = paste(LETTERS, letters) ; b
##  [1] "A a" "B b" "C c" "D d" "E e" "F f" "G g" "H h" "I i" "J j" "K k" "L l"
## [13] "M m" "N n" "O o" "P p" "Q q" "R r" "S s" "T t" "U u" "V v" "W w" "X x"
## [25] "Y y" "Z z"
class(b)
## [1] "character"
length(b)
## [1] 26
matrix(c(1:4,101:104), byrow = F, ncol = 2)
##      [,1] [,2]
## [1,]    1  101
## [2,]    2  102
## [3,]    3  103
## [4,]    4  104
matrix(c(1:4,101:104), byrow = T, nrow = 2)
##      [,1] [,2] [,3] [,4]
## [1,]    1    2    3    4
## [2,]  101  102  103  104
matrix(1,ncol = 3, nrow = 3)
##      [,1] [,2] [,3]
## [1,]    1    1    1
## [2,]    1    1    1
## [3,]    1    1    1
A<-matrix(c(1,2,3,4,5,6,7,8,9,10,11,12),4,3)
nrow(A)
## [1] 4
ncol(A)
## [1] 3
dim(A)
## [1] 4 3
minha_lista = list("Lyncoln",22,c(1.75,58),c(TRUE,TRUE,TRUE)); minha_lista
## [[1]]
## [1] "Lyncoln"
## 
## [[2]]
## [1] 22
## 
## [[3]]
## [1]  1.75 58.00
## 
## [[4]]
## [1] TRUE TRUE TRUE
minha_lista[[1]]
## [1] "Lyncoln"
minha_lista[[2]]
## [1] 22
minha_lista[[3]][1]
## [1] 1.75
minha_lista[[3]][2]
## [1] 58
minha_lista[[4]][3]
## [1] TRUE
dados_alunos = data.frame(
  nome=c("Lyncoln","Daniel","Vicente"), 
  idade=c(22,23,25), 
  altura=c(1.75, 1.70,1.69), 
  peso=c(58,56,65), 
  estagiou=c(TRUE,TRUE,FALSE),
  voluntario = c(TRUE,TRUE,FALSE), 
  meio.ambiente=c(TRUE,FALSE,TRUE),
  stringsAsFactors = F) 
dados_alunos[1,1]
## [1] "Lyncoln"
dados_alunos[2,3]
## [1] 1.7
dados_alunos$nome
## [1] "Lyncoln" "Daniel"  "Vicente"
#ou
dados_alunos[,1]
## [1] "Lyncoln" "Daniel"  "Vicente"
dados_alunos[3,]
##      nome idade altura peso estagiou voluntario meio.ambiente
## 3 Vicente    25   1.69   65    FALSE      FALSE          TRUE
dados_alunos$matricula = c(122000109,220000081,219000101)
dados_alunos
##      nome idade altura peso estagiou voluntario meio.ambiente matricula
## 1 Lyncoln    22   1.75   58     TRUE       TRUE          TRUE 122000109
## 2  Daniel    23   1.70   56     TRUE       TRUE         FALSE 220000081
## 3 Vicente    25   1.69   65    FALSE      FALSE          TRUE 219000101
ncol(dados_alunos)
## [1] 8
nova_linha = data.frame(nome="Sofia",idade=20,altura=1.60,peso=54,estagiou=FALSE,voluntario=TRUE,meio.ambiente=TRUE,matricula=222000014,stringsAsFactors = F)
dados_alunos = rbind(dados_alunos,nova_linha)
dados_alunos
##      nome idade altura peso estagiou voluntario meio.ambiente matricula
## 1 Lyncoln    22   1.75   58     TRUE       TRUE          TRUE 122000109
## 2  Daniel    23   1.70   56     TRUE       TRUE         FALSE 220000081
## 3 Vicente    25   1.69   65    FALSE      FALSE          TRUE 219000101
## 4   Sofia    20   1.60   54    FALSE       TRUE          TRUE 222000014
nrow(dados_alunos)
## [1] 4
obj1 <- list(1,2,3); obj2 <- list(c(1,2,3)); obj3 <- c(1,2,3)
# O obj1 é uma lista que contem 3 elementos
obj1
## [[1]]
## [1] 1
## 
## [[2]]
## [1] 2
## 
## [[3]]
## [1] 3
# O obj2 é uma lista que contem 1 elemento
obj2
## [[1]]
## [1] 1 2 3
# O obj3 é um vetor com 3 elementos
obj3
## [1] 1 2 3
X<-3; Y<-2; Z<-"2"; A<-"X"; B<-X; C<-"A"; D<-paste(A,C); E<-c(A,C); f<-list(A,C)
#Y e Z ---> Z é um caracter enquanto Y é um inteiro 
#A e B ---> A é um caracter e B é um inteiro
#X e B ---> São iguais
#A e C ---> Ambos são caracter, mas A guarda "X" enquanto C guarda "A"
#D, E e f ---> D é um caracter único contendo, E é um vetor com 2 caracteres e F é uma lista de tamanho 2.