Está en la página 1de 13

*para ejecutar cualquier comando, seleccionarlo y apretar F5*

Para buscar la base de datos entre los archivos:


banca=read.csv(file.choose(), h=TRUE, sep=";")

Para ver si est cargada la base:


head(banca) -> muestra primeros 6
tail(banca) -> muestra ltimos 6

Hacer que muestre las categoras dentro de la base:


attach(banca)
Monto -> muestra la categora Monto

Para hacer un resumen de Monto:


summary(Monto) ->muestra min, 1er cuartil, mediana, media, 3er cuartil y
maximo

Datos de dispersin:
var(Monto) -> varianza
sd(Monto) -> desviacin estndar

Resumen de estado del cliente (4)(al da, castigado, moroso, vencido)


summary(Estado) <-> table (Estado) nos entregan una tabla en este caso
prop.table(table(Estado))*100 -> entrega los datos en porcentaje

Cear variable:
Deuda=NCM/NCP

Rvisar variable creada:


head(Deuda)
*NaN: error de clculo*
*NA: no estn*
summary (Deuda): ahora crear otra variable de NA's con los valores
perdidos

Crear una nueva base de datos: ser la unin de la base de datos inicial +
Deuda
banca2=data.frame(banca, Deuda)
revisar si se cre:
head(banca2)

guardar nueva base de datos -> se guarda en documentos


write.csv(banca2, file="banco2.csv")
?wirte.csv te abre internet

LABORATORIO 2
Graficos

Bloxplot(x,main=bloxplot de x)
Col=yellow
Xlab=hola
Ylab=chao
Xlim=c(0,100)
Ylim=c(100,100)

Poner varios grficos par()


Poner 2 graficos (mfrow=c(1,2))

Grafico de barras no tiene eje x, para variables categoricas


Histograma para variables continuas

Distribuciones
X distribuye poisson (lambda 5)
P(x=2) -> dpois(2,5)
P(x=<2) -> ppois(2,5)
P(x=<k)=0,5 -> qpois(0,5,5)

Para similar una pisson (lambda=5) para 20 das


rpois(20,5)
si queremos tener la misma muestra
set.seed(algn numero)
rpois(20,5)
guardar la muestra aleatoria en ventas
ventas=rpois(20,5)
hacer un resumen de ventas
summary(ventas) junto con la semilla
hacer un boxplot: sirve para ver dispersin y asimetra (mediana muy
corrida)
boxplot(ventas)
ponerle color
bloxplot(ventas, col=red)
grafico de barras categorico
barplot(table(ventas))
grafico de barras discreto
plot(table(ventas))
histograma
hist(ventas)
para que aparezcan los 3 juntos
par(mfrow=c(1,3))
*en este caso el discreto es el correcto*
Probabilidad de vender 3 productos en un da
a) Teorica: dpois(3,5)
b) Emprica: mean(ventas==3)
P(x<=3) : ppois(3,5)
Mean(ventas<=3)
La poisson tiende a normal
Anual=rnorm(250,5,2)
*es inconsistente ya que me dieron ventas negativas*
Si graficamos el boxplot grafica puntitos ya que se salen del rango
Hacemos un histograma hist(anual)
Crear auxiliar que vaya del cero al 10
aux=0:10 ser el eje x
dpois(aux,5)
crear grafico poisson
antes cambiar hist(anual, prob=TRUE)
points(aux,dpois(aux,5),col=Green, lwd=10)

CICLO
Es una sentencia que se realiza repetias veces
- IF (condicin)[sentencia]
- FOR (indicador IN desde:hasta)[sentencia depediente del indicador]
Metodo de los momentos
- E(Xr)=Xr barra
Mtodo de mxima verosimilitud
- f(x1,x1,,xn|tetha) = L(X|tetha) = pitatoria de a hasta n de fx(x|
tetha)
- fitdistr(X, FAMILIA)
Package: MASS
Para cargarlo: library (MASS)
Crear una variable
n=c(5,20,50,500,1000)
corchete [] busca posiciones -> n[3] posicin 3
crear una normal -> y=rnorm(n[1],100,5)
para mostrarla -> y
crear el mximo verosmil -> fitdistr(y,normal) y muestra media y
desviacin estndar aproximadas y abajo el error
antes de y=nrnorm poner for(j in 1:5)

queda as:
for(j in 1:5){
y=rnorm(n[j],100,5)
print(fitdistr(y,"normal"))
}
Es asintticamente insesgado, a medida que crece la muestra se acerca
mas a los valores reales
*SI SALEN PUROS + HAY QUE PONERLE STOP Y EJECUTAR*
Para probarlo:
Sigma gorro=2,9/raz de 5
5.067/sqrt(1000)
Actividad 2
T=read.table("clipboard", header=TRUE, dec=","
head(T)
attach(T)
hist(Tiempo)
fitdistr(Tiempo,"exponential")
para guarder: fitdistr(Tiempo,"exponential")$estimate
lambda=fitdistr(Tiempo,"exponential")$estimate
tetha=fitdistr(Tiempo,"normal")$estimate

para mostrarlos
lambda -> 1 solo valor
tetha -> media y desviacin estndar
crear vector auxiliar: aux=seq(0,20,0.02) de 0 a 20 con distancia
aux para mostrar

lines(aux, dexp(aux,lambda), col="red") -> tira error


para que de bien hay que ponerle al histograma
hist(Tiempo, prob=TRUE)
se ejecuta de nuevo y ah da bien
para la normal
lines(aux, dnorm(aux, theta[1], tetha[2]), col="blue")
LABORATORIO 4
Intervalos de confianza:
- Mientras ms grande es la confianza, ms grande es el intervalo
- Intervalo donde est la confianza en que est un estimador
- Un intervalo de 95% es apropiado ya que si es muy pequeo puede
que est muy corrido de la realidad.
No importa qu distribucin tienen los datos, la MEDIA distribuye normal (n
grande).
La distribucin t-student permite un intervalo ms grande ya que no
conozco la varianza -> ms error.
+ z1/2 / n -> mientras ms grande la n, ms se parece al estimador.
EJERCICIO 1
CARGAR DE LA LIBRERA PARA USAR INTERVALOS DE CONFIANZA:
TeachingDemos
install.packages("TeachingDemos")
library(TeachingDemos) -> para ver si est instalado
V=read.table("clipboard", header=TRUE, dec=",") -> abrir base de datos
head(V) -> ver si se abri
attach(V) -> cargar
hist(Tiempo) -> histograma de los datos, distribuye exponencial
library(MASS)
lambda.gorro=fitdistr(Tiempo,"exponential")$estimate -> mximo verosmil
de la exponencial
1/lambda.gorro -> es el estimador
*no conocemos sigma, no lo dan en los datos
Entonces, para sacar el IC de la media:
t.test(Tiempo, conf.level=0.95)$conf.int -> intervalo de confianza, sale un
[1] y el intervalo
t.test(Tiempo, conf.level=0.99)$conf.int-> intervalo se agranda
t.test(Tiempo, conf.level=0.90)$conf.int -> intervalo se achica
y si s conozco la desviacin estndar?
Supongamos que es conocida e igual a la estimada
z.test(Tiempo, mean(Tiempo), sd(Tiempo), conf.level=0.95)$conf.int
EJERCICIO 2
Cargar base
vacas=read.table("clipboard", header=TRUE, dec=",")
head(vacas)
attach(vacas)
hacer interval de confianza para la media del peso
t.test(peso, conf.level=0.95)$conf.int da un intervalo chico
hacer IC para la VARIANZA
var(peso)
sigma.test(peso, conf.level=0.95)$conf.int no es simtrico!!
*LOS IC NO SON SOBRE LOS DATOS, SON SOBRE EL ESTIMADOR!!*

LABORATORIO 5
Para hacer una transformacin basta con aplicar la funcin al LI y LS, slo si
la funcin es montona.
Muestra pareada: hacer un examen a una muestra de enfermos y luego
hacrsela de nuevo despus de que tomaran un medicamento.
Para comparar 2 muestras primero comparo sus varianzas.
Para comparar sus varianzas se deben dividir ya que en ella tenemos
muestras conocidas, a diferencia de si comparramos con una resta.
Es estimador de mu distribuye normal, la resta de normales es normal, no
as la divisin de normales, por eso se ocupa la resta.
EJERCICIO
DJ=read.table("clipboard", h=T, dec=",")
head(DJ,1)
attach(DJ)
attach(DJ)
hist(RET.MO)
*IC para la media de RET.MO
t.test(RET.MO)$conf.int
*nombrar el IC
IC.retmo=t.test(RET.MO)$conf.int -> 95% confianza por defecto
*Aplicarle una funcin para transofrmarla
log(IC.retmo+1)
*IC para mu de RET.T
t.test(RET.T)$conf.int -> intervalo de confianza contiene al cero, eso es
bueno para los economistas.
*Comparemos las dos muestras
1 comparar varianzas
*IC para la razn de varianzas entre RET.MO y RET.T
var.test(RET.MO,RET.T)$conf.int
Las varianzas son distintas ya que el 1 no pertenece al intervalo. La
segunda es ms grande.
*IC para la diferencia de medias entre RET.MO y RET.T
t.test(RET.MO,RET.T,var.equal=FALSE,paired=FALSE)$conf.int
ya que el cero no pertenece al intervalo NO son iguales
Las muestras son diferentes

*cambiar nivel de confianza


t.test(RET.MO,conf.level=0,99)$conf.int
t.test(RET.T,conf.level=0,99)$conf.int
var.test(RET.MO,RET.T,conf.level=0,99)$conf.int
t.test(RET.MO,RET.T,var.equal=FALSE,paired=FALSE,conf.level=0,99)$conf.in
t
Ahora las varianzas y medias son iguales!!

LABORATORIO 6
Grfico cuantil-cuantil
Emprica: 001112222233344 suponemos que distribuye poisson(2)
Teorica: 01112222333444 es una verdadera poisson
se ajustan segn el lugar?
function(p) fpois(p,2)
ACTIVIDAD
V1: nmero de meses en promocin durante el ao -> binomial o poisson
restringida
Entonces:
V1 distribuye binomial(n,p)
n=12
pgorro=Xbarra/n
veamos la base de datos:
datos=read.table("clipboard", h=T, dec=",")
attach(datos)
head(datos)
vamos a hacer un grfico pertinente para una variable discreta. En este
caso, lo mejor es usar un grfico de barras con eje:
plot(prop.table(table(V1)))
para poner puntos o lneas en el grafico hacer una variable auxiliar
aux=seq(0,9,1) 1 ya que es discreta
aux
crear p gorro
p.gorro=mean(V1)/12
p.gorro
points(aux,dbinom(aux,12,p.gorro),col="purple",lwd=5)
se ajusta correctamente? S, se acerca bastante
En el caso 2 la probabilidad binomial sobreestima a la emprica.
En 4 y 5 la terica subestima a la emprica.
Hacer cucuplot

qqplot(Datos,Simulacin)
qqplot(V1,rbinom(10000,12,p.gorro))
con el qqplot esperamos que se forme una recta. se form? S
Ahora vamos a hacer una lnea
qqline(V1, distribution = function(p) qbinom(p,12,p.gorro),col="red")
V4: tiempo en das entre que llegue un interesado
head(V4)
tenemos 3 opciones: poisson, exponencial o normal
veamos el histograma:
hist(V4,prob=TRUE)
library(MASS)
v4.normal=fitdistr(V4,"normal")$estimate
v4.gamma=fitdistr(V4,"gamma")$estimate
v4.exp=fitdistr(V4,"exponential")$estimate
aux2=seq(0,8,0.01)
lines(aux2,dnorm(aux2,v4.normal[1],v4.normal[2]),col="red")
lines(aux2,dgamma(aux2,v4.gamma[1],v4.gamma[2]),col="blue")
lines(aux2,dexp(aux2,v4.exp),col="green")
estos se ejecutan juntos
par(mfrow=c(1,3))

qqplot(V4,rnorm(10000,v4.normal[1],v4.normal[2]))
qqline(V4, distribution = function(p)
qnorm(p,v4.normal[1],v4.normal[2]),col="red")

qqplot(V4,rgamma(10000,v4.gamma[1],v4.gamma[2]))
qqline(V4, distribution = function(p)
qgamma(p,v4.gamma[1],v4.gamma[2]),col="red")

qqplot(V4,rexp(10000,v4.exp))
qqline(V4, distribution = function(p) qexp(p,v4.exp),col="red")
1- Ajuste a distribucion normal -> se desvirtan las colas, la tendencia
de la figura no es una recta, es una ola, no lo abarca correctamente
2- Ajuste a distribucion gamma -> se ajusta mejor
3- Ajuste a distribucion exponencial

LABORATORIO 7
H0: = 0
H1: distinto 0
Formas para rechazar o no la idea:
Ver que la media est en el intervalo
Ver si el estadstico observado est en una normal (0,1)

Rechazamos H0 cuando:
no pertenece a IC
Z0 pertenece a la RC
Valor p < alfa

Ejemplo pregunta: Cunto debiera ser el tamao de la muestra para que


algo no est en el intervalo con 95% de confianza?
P es un cierto alfa que es el valor ms pequeo que me permite rechazar.
Z0= (Xbarra 0)/(/n)
EJERCICIO
Base de datos camiones
a) Pruebe, con un 5% de significancia, si la media del precio del
producto (V4) es igual a 75 millones.
CAM=read.table("clipboard", header=TRUE, dec=",")
head(CAM)
attach(CAM) reconoce el nombre de las variables
V3: precio
hist(V3)
mean(V3)
Ho: mu=75 vs H1: mu distinto de 75, alfa=0,95
t.test(V3, mu=75, alternative="two.sided", conf.level=0.95)
variable, h0, h1 bilateral, 1-alfa
mu s pertenece al IC (72.98654 , 76.60774)
t = -0.22066 -> pivote: estadstico encontrado
cunto es t alfa medios(249) = -1,96 ya que es normal
y t 1-alfa medios(249)=1,96
por lo tanto t no pertenece a la RC
df = 249 -> n
p-value = 0.8255

alfa es 0,05 -> p>alfa


por lo tanto no se rechaza!!
Las 3 cosas son anlogas, o las 3 aprueban o las 3 rechazan
b) Pruebe, con un 10% de significancia, si la media del tiempo entre los
interesados (V5) es menor a 2.7 das.
H1: mu<2,7
H0: mu>=2,7, pero basta con que pruebe la igualdad para que se cumpla
V4: H0:mu=0, H1:mu<2,7, alfa=0,1
t.test(V4, mu=2.7, alternative=less, conf.level=0,9)
IC: -Infinito, 2.678391
2,7 pertenece? No, rechazo
Se rechaza en unilateral si t0<talfa
T0 = -1.5806, df = 249
Podemos buscar un cuantil de la t con alfa 0,1 y 249 n -> qt(0.1, 249)
Nos da -1.284961, por lo tanto z0 pertenece a la RC
p-value = 0.05762 < 0,1 -> rechazo p
c) Determine una significancia para afirmar que las ganancias o
perdidas de las tiendas (V5), en promedio, son mayores a 0.
V5: H0: mu=0, H1: mu>0
t.test(V5, mu=0, alternative="greater", conf.level=0.9)
t.test(V5, mu=0, alternative="greater", conf.level=0.95)
t.test(V5, mu=0, alternative="greater", conf.level=0.975)
t.test(V5, mu=0, alternative="greater", conf.level=0.6)
H1: mu<0
t.test(V5, mu=0, alternative="less", conf.level=0.95)
nos tira de menos infinito hasta ms all de 0 o de menos de 0 hasta
infinito, entonces el mu s es 0!
P entre las 2 suma 1 ya que es la acumulada para un lado y para el otro lado

d) Determine si hay evidencia para afirmar, al 5% o 10% de


significancia, que la variacion media de precios (V7) es 4.8. Discuta
el valor-p.