Sunteți pe pagina 1din 8

CURSO R

http://r-tips-vmo.blogspot.com/ blog con consejos


21 de julio 2014
Tengo dos posibilidades para trabajar en R, R bsico y R Studio.
En R Bsico:
Al R se le puede preguntar varias operaciones si necesidad de crear
variables. Por ejemplo
15.3 * 23.4
(1) 358.02
Por otro lado, puedo asignarle una variable
Producto = 15.3 * 23.4
Producto >- 15.3 * 23.4 (es la forma ms recomendada de asignar variables)
Lugo puedo hacer clculos usando estas variables. Por ejemplo:
Log (producto)
Las funciones tienen esta estructura: nombre (variable, parmetros) donde
hay parmetros obligatorios y otros opcionales.
Si est incompleta la orden R coloca un signo ms; por ejemplo, si no coloco
el parntesis final, sale un signo +, coloco el parntesis y enter.
Help
Instalo:
install.packages("urca")
Descargo:
library(urca)
Observo el cdigo:
cajorls

SECUENCIAS Y REPETICIONES
X <- 1:10 (: es un operador)
X + enter y se obtiene la secuencia
Recordar que las variables se sobre escriben (por ejemplo: X = 2.3, ahora X
es 6)

seq (1,5) puedo hacer tambin una secuencia, con seq (1,5,0.5)
donde la secuencia tendr un intervalo de 0.5
seq(7) me crea una secuencia del 1 al 7 .
En formato de funciones se tiene: Y<-3

>Y
> seq (Y) (esta funcin no necesita parmetros

Ingresar informacin z <- scan (2 enter 7 enter), para verle: print


(z) si quiero cambiar el 7: z[2]<-5 lo que va entre corchetes es la
posicin.
Help (seq)

Recordar:
El R tiene case sensitive (diferencia minsculas de maysculas)
Es bueno dejar espacios entre los operadores.

R studio

Shift + ctrl + C convierte en comentario, tambin se puede usar #


o .
En la esquina superior derecha se tiene Project, se usa cuando
tengo cdigos especficos para cada cosa.

Lunes 21/07/2014 17:00 19:00


Crear una variable en la que se repite los nmeros que se repite los
nmeros del 1 al 3, 3 veces
) Forma
X<- rep(seq(1,3),3)
(1,2,3,1,2,3,1,2,3)

ii) Forma
x<- rep(seq(3),3)

El orden
> seq(to=3, from=1)
[1] 1 2 3
> seq(to=1, from=3)
[1] 3 2 1

Objetos: son entidades que tienen un determinado (datos, operaciones)


seq(to=3, from=1) No es objeto No tiene nombre
x<- rep(seq(3),3) Es objeto cumple con la definicin anterior

Inf es considerado como un numero


[1] 0

> 5/Inf

NaN not a number (no es un numero)


Vector: Coleccin ordenada elementos del mismo tipo
x<- c(1,2,3); y<-c("a", "b","Hola")
Z1<- c(TRUE, TRUE, FALSE)
x1<- 9:29
x2<- c(1+0i, 2+4i)
> class(Z1)
[1] "logical"
> attributes (Z1)
NULL
Tipos de objetos
> class(y3)
[1] "character"
> class(y2)
[1] "numeric"

Se puede cambiar la clase de los objetos usando funciones del tipo as.fuction
> x<- 0:6
> class(x)
[1] "integer"
> as.numeric(x)
[1] 0 1 2 3 4 5 6
> as.logical(x)
[1] FALSE TRUE TRUE TRUE TRUE TRUE TRUE
> as.character(x)
[1] "0" "1" "2" "3" "4" "5" "6"
> as.complex(x)
[1] 0+0i 1+0i 2+0i 3+0i 4+0i 5+0i 6+0i
>

Como R sabe q es un factor


Un tipo de vector para datos categricos
z<- factor(LETTERS[1:3], ordered=TRUE )

Otro ejemplo con gl


X<- rep(c(1,2,3),3)

> is.vector(z) pregunta que ser


[1] FALSE

Ver que hace Gl


x<- gl(3,3,9, labels=1:3, ordered=T)
[1] 1 2 3 1 2 3 1 2 3

X=0,999
10X=9.99..
- 9x=9
X=1

Lista
Una lista un vector generalizado . Cada Lista est formada por
componentes (que pueden ser otras listas), y cada componente puede ser
de un tipo distinto. Son unos conteedores generales
n=c(2,3,5)
s=c("aa","bb","cc","dd","ee")
b=c(TRUE, FLASE, TRUE, FLASE, FLASE)
b=c(TRUE, FALSE, TRUE, FALSE, FALSE)
X=list(n,s,b,3)
Como pegar al cc dentro de x?
X[2][[1]][3]
X[[2]][3] yo quiero la lista 2 el elemento 3
Vectorizacion.- encontrar la posicin de un elemnto
Perdida de Valores

mis1 <-c(1,5,NA,6,8)
mis1
is.na(mis1)
mis2 <-c(1,5,NA,6,NaN)
is.nan(mis2)
Un NaN tambin es un NA pero al revs no es cierto
Ejercicios
Data Frame: son listas , la longitud es la misma, cada columna es de un tipo
diferente,
Tiene el atributo de row.names
Dentro de las cosas igual
creando objetos asignacin
Importar datos
getwd()
setwd("C:\Users\Public\Documents\PRUEBA\Datos")
para importar datos de una tabla de excel se necesita cambiar la extencion en csv
del Excel
y luego se digita
datos.excel <- read.csv("Mundo.csv", sep=";", header=TRUE)

fijar el directorio de trabajo


convertitr a csv
y marcar el directorio

Como instalar un paquete


install.packages("foreign")
library(foreign)
importar datos de Excel
editarlos y dejarlos en formatos estndar
Empezamos con el taller
Para extraer un valor: Valor Datos[2,2]
Para extraer una :Fila datos [2, ]
Columna datos [ ,3]
Conjunto de filas datos[2:4 ]
conjunto de columnas datos datos[ ,3:4]

Lista (g1, g2, g3)


gn es el nmero de columnas
no puedo sacar promedios de un dataframe
subset(x, subset, select. Drop=FALSE,)
x=operador logico
select: # de columnas
drop: indexacin
http://www.youtube.com/watch?v=fOpr4-7m_ds para ver las clases del
man
Arrays
Generalizacin multidimensional de vector.
Elementos del mismo tipo
X<- array(1:20, dim=)c(4,5))
Mtarices
Rbind() -> funciona con vectores y matrices
Existen dos tipos de funciones de graficas:
Funciones de graficacion de alto nivel
Funciones de graficacion de bajo nivel

Funciones Graficas de alto nivel


Nombre (obj, parmetros)
Plot(x, y, parmetros )
La funcin seq: crea valores con la siguiente estructura: se(valor inicial, )

Comparaciones entre grupos


hacer siempre un boxplot
Ese juego
* realizar unplot de x e y (ya creados ) con las siguientes opciones:
plot(x,y,main="Grficos en R", sub="ICEF", xlab="EjeX",
ylab="EjeY",t="s",col="blue")

abeline(a,b) a= intercepto, b=pendiente

BUCLES

La sintaxis de esta instruccin es:


For( i in valores ){instruicciones}
Ejemplo
for(i in 1:5){print(i)}

Para hacer la function van


n

VAN =
i=1

Vi

(1+ k )i

I o

Apply
Facilitan la vida en lugar de loops
Tenemos una matris de datos

5
3 8
9 10 13
1 2 2

Apply (A,1,sum) le digo que sume por filas y me da un vector


C()
Apply se usa para evaluar una funcin sobre las dimensiones de un
array
rowSums = apply(x, 1, sum)
rowMeans =apply (x, 1, mean)
colSums =apply (x, 2 , sum)
colMeans = apply (x,2,man)
tapply se usa para aplicar funciones sobre subconjuntos de un vector
Tomamos medias por grupo
By
Para ejecutar esta funcin, usaremos la base de datos INSECTSPAYS
Para analizar los datos hacer los anlisis preocuparse en la mediana
no siempre en la media.
Mediana

S-ar putea să vă placă și