Resolver problemas de loibrerias en R * se puede usar este comando cuando alguna libreria tiene problemas ( da la direccion para borrar la carpeta he intentar reinstalarlo) + Subpunto
.libPaths()
install.packages(“installr”) library(installr) updateR()
library("XML")
library("tidyverse")
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.6 v dplyr 1.0.8
## v tidyr 1.2.0 v stringr 1.4.0
## v readr 2.1.2 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
getwd()
## [1] "C:/Users/Antonio Constantino/Desktop/Rstudio/Cursos/curso youtube"
setwd("C:/Users/Antonio Constantino/Desktop/Rstudio/Cursos/curso youtube/")
Dentro de la funcion read , sep= indica por que simbolo separa los datos * Nota de oro : cuando se tiene los datos separados por un “;” entoces se usa la funcion read.ccv2 y en el caso que este separado por tabuladores , entonces se debe usar dento de la funcion como “sep=”t”
auto1 <-read.csv("../../r-course-master/data/tema1/auto-mpg.csv",header = TRUE,sep = ",")
Cuando no tiene encabezado el archivo
sin_encabezado <- read.csv("../../r-course-master/data/tema1/auto-mpg-noheader.csv")
Lo que veras es que pone una x de un primer dato ( la coma y el cuato lo que te dice es que solo te muestre las primeras 4 filas )
head(sin_encabezado,4)
## X1 X28 X4 X140 X90 X2264 X15.5 X71 chevrolet.vega.2300
## 1 2 19 3 70 97 2330 13.5 72 mazda rx2 coupe
## 2 3 36 4 107 75 2205 14.5 82 honda accord
## 3 4 28 4 97 92 2288 17.0 72 datsun 510 (sw)
## 4 5 21 6 199 90 2648 15.0 70 amc gremlin
#Se va a reescribir
sin_encabezado <- read.csv("../../r-course-master/data/tema1/auto-mpg-noheader.csv",header = F,col.names = c("numero","MPG","Cilindros","desplazamiento","Caballos_de_potencia","peso","aceleracion","ano","modelo"))
# aqui lo que haces es :header( carnal no tienes encabezados ),colnames = ( te voy a poner nombre c( estos son los nombres ))
Ahora veremos como se observan este dato
head(sin_encabezado,4)
## numero MPG Cilindros desplazamiento Caballos_de_potencia peso aceleracion ano
## 1 1 28 4 140 90 2264 15.5 71
## 2 2 19 3 70 97 2330 13.5 72
## 3 3 36 4 107 75 2205 14.5 82
## 4 4 28 4 97 92 2288 17.0 72
## modelo
## 1 chevrolet vega 2300
## 2 mazda rx2 coupe
## 3 honda accord
## 4 datsun 510 (sw)
#ya quedo
Ahora : que chingao hago cuando falta un dato Pasan 2 cosas * Cuando tengo datos de tipo numero :asi aparecen como N/A ( Not Available “No disponible”) * Y categoricas ( stirngs o letras ):se tiene que poner (na.sting) * Tambien puede pasar que el string lo este tomando como factor ( letras como numero (por ejemplo el numero de cilindros de un carro))
Hagamoslo
sin_encabezado <- read.csv("../../r-course-master/data/tema1/auto-mpg-noheader.csv",stringsAsFactors = TRUE,na.strings = "null",header = F,col.names = c("numero","MPG","Cilindros","desplazamiento","Caballos_de_potencia","peso","aceleracion","ano","modelo"))
as.character: es para cambiar variables categoricas a caracteres
names(auto1)
## [1] "No" "mpg" "cylinders" "displacement" "horsepower"
## [6] "weight" "acceleration" "model_year" "car_name"
nrow(auto1)
## [1] 398
library(XML)
#esto es un valor
#Nota una coleccion de valores estructurado es lo que se llama un data frame ( como solo un valor de una celda de excel)
url <- "../../r-course-master/data/tema1/cd_catalog.xml"
#esto es una varibale que casualmete se llama igual que la funcion
#esta variable es un "apuntador" que localiza el docmuento y debe pasar por todod los nodos
xmldoc<- xmlParse(url)
#Se debe obtener la raiz
rootnode<- xmlRoot(xmldoc)
#Aqui puedes ver una parte de la estuctura
rootnode[2]
## $CD
## <CD>
## <TITLE>Hide your heart</TITLE>
## <ARTIST>Bonnie Tyler</ARTIST>
## <COUNTRY>UK</COUNTRY>
## <COMPANY>CBS Records</COMPANY>
## <PRICE>9.90</PRICE>
## <YEAR>1988</YEAR>
## </CD>
##
## attr(,"class")
## [1] "XMLInternalNodeList" "XMLNodeList"
cds_data <- xmlSApply(rootnode,function(x)xmlSApply(x,xmlValue))
#xmlValue Estrae informacion del nodo raiz
# la funcion xmlApply hace una matriz por este motivo en las variables de la derecha se tiene un DF pero sin el boton de play
cds_data[1:5,]
## CD CD CD
## TITLE "Empire Burlesque" "Hide your heart" "Greatest Hits"
## ARTIST "Bob Dylan" "Bonnie Tyler" "Dolly Parton"
## COUNTRY "USA" "UK" "USA"
## COMPANY "Columbia" "CBS Records" "RCA"
## PRICE "10.90" "9.90" "9.90"
## CD CD CD
## TITLE "Still got the blues" "Eros" "One night only"
## ARTIST "Gary Moore" "Eros Ramazzotti" "Bee Gees"
## COUNTRY "UK" "EU" "UK"
## COMPANY "Virgin records" "BMG" "Polydor"
## PRICE "10.20" "9.90" "10.90"
## CD CD CD
## TITLE "Sylvias Mother" "Maggie May" "Romanza"
## ARTIST "Dr.Hook" "Rod Stewart" "Andrea Bocelli"
## COUNTRY "UK" "UK" "EU"
## COMPANY "CBS" "Pickwick" "Polydor"
## PRICE "8.10" "8.50" "10.80"
## CD CD CD
## TITLE "When a man loves a woman" "Black angel" "1999 Grammy Nominees"
## ARTIST "Percy Sledge" "Savage Rose" "Many"
## COUNTRY "USA" "EU" "USA"
## COMPANY "Atlantic" "Mega" "Grammy"
## PRICE "8.70" "10.90" "10.20"
## CD CD CD CD
## TITLE "For the good times" "Big Willie style" "Tupelo Honey" "Soulsville"
## ARTIST "Kenny Rogers" "Will Smith" "Van Morrison" "Jorn Hoel"
## COUNTRY "UK" "USA" "UK" "Norway"
## COMPANY "Mucik Master" "Columbia" "Polydor" "WEA"
## PRICE "8.70" "9.90" "8.20" "7.90"
## CD CD CD CD
## TITLE "The very best of" "Stop" "Bridge of Spies" "Private Dancer"
## ARTIST "Cat Stevens" "Sam Brown" "T'Pau" "Tina Turner"
## COUNTRY "UK" "UK" "UK" "UK"
## COMPANY "Island" "A and M" "Siren" "Capitol"
## PRICE "8.90" "8.90" "7.90" "8.90"
## CD CD CD
## TITLE "Midt om natten" "Pavarotti Gala Concert" "The dock of the bay"
## ARTIST "Kim Larsen" "Luciano Pavarotti" "Otis Redding"
## COUNTRY "EU" "UK" "USA"
## COMPANY "Medley" "DECCA" "Stax Records"
## PRICE "7.80" "9.90" "7.90"
## CD CD CD
## TITLE "Picture book" "Red" "Unchain my heart"
## ARTIST "Simply Red" "The Communards" "Joe Cocker"
## COUNTRY "EU" "UK" "USA"
## COMPANY "Elektra" "London" "EMI"
## PRICE "7.20" "7.80" "8.20"
cds_catalog <- data.frame(t(cds_data),row.names = NULL)
cds_catalog[1:5,]
## TITLE ARTIST COUNTRY COMPANY PRICE YEAR
## 1 Empire Burlesque Bob Dylan USA Columbia 10.90 1985
## 2 Hide your heart Bonnie Tyler UK CBS Records 9.90 1988
## 3 Greatest Hits Dolly Parton USA RCA 9.90 1982
## 4 Still got the blues Gary Moore UK Virgin records 10.20 1990
## 5 Eros Eros Ramazzotti EU BMG 9.90 1997
Otras funciones que no se explican en este curso pero que
Nota : Los corchetes se leen asi [Filas,Columnas], fin del comunicado jejeje son utiles para XMLson: xpathSApply(): getNodeSet():
#population_url<-readHTMLTable("../../r-course-master/data/tema1/WorldPopulation-wiki.htm")
#tables<- (population_url)
#View(tables)
Esto te crea a una lista de tablas que estan dentro de la paguina ahora seleccionaremos una tabla dentro de ese listado
#most_populated<-tables[[6]]
#head(most_populated)
Ahora : si no quieres la lista y despues extarer la tabla , osea , ya sabes dentro del xml cual es el numero de tabla que quieres
#custom_table <- readHTMLTable(population_url,which = 6)
#head(custom_table)
Esto te puede ayudar a identificar si la paguina tiene demaciado peso y no se vuelva lenta tu computadora entonces puede usarla
library("jsonlite")
##
## Attaching package: 'jsonlite'
## The following object is masked from 'package:purrr':
##
## flatten
dat.1<- fromJSON("../../r-course-master/data/tema1/students.json")
dat.2<- fromJSON("../../r-course-master/data/tema1/student-courses.json")
Para obtener valores de Internet en formato jason
urljason <- "http://www.floatrates.com/daily/usd.json"
Aqui solo lo extrae : ahora lo que hace falta es meterlo a una lista
library("curl")
## Using libcurl 7.64.1 with Schannel
##
## Attaching package: 'curl'
## The following object is masked from 'package:readr':
##
## parse_date
dfdeurl <- fromJSON(urljason)
Ahora debes tener cuidado con este tema ya que depende mucho de la estuctura del JSON por que dentro de cada llave puede tener catergorias
Lo leeremos y lo sobre escibiremos a la mismo DF ( Esta madre aun no me sale )
#Aqui tienes que hacer una conversion
dfdeurl <- dfdeurl$eur$code
#Esto me crea un valor , pero quiero un DF
#conversion.df.JSON<- toJSON(mos_populated)
#head(mos_populated)
los widths=ancho ( los numeros dentro de la c son los numeros de carateres por columna )
student<- read.fwf("C:/Users/Antonio Constantino/Desktop/Rstudio/curso de youtube/curso youtube/../../r-course-master/data/tema1/student-fwf.txt",
width=c(4,15,20,15,4),
col.names = c("id","name","email","carrera","año"))
ahora si tuviera encabezados Sep=separador
student1 <- read.fwf("C:/Users/Antonio Constantino/Desktop/Rstudio/curso de youtube/curso youtube/../../r-course-master/data/tema1/student-fwf.txt",width=c(4,15,20,15,4),header = F)
head(student1)
## V1 V2 V3 V4 V5
## 1 1044 Fran Morton fran.m@quama.edu Statistics 2015
## 2 1035 Kato Mullins tempor@giat.com Marketing 2014
## 3 1046 Jordan Keller Cum@gmail.com Chemistry 2014
## 4 1084 Macey Simpson eu@famesacturpis.com Finance 2016
## 5 1010 Deanna Ortega Dea.Ortega@velit.ca Chemistry 2016
## 6 1096 Joe Eaton je@euismod.org MIS 2014
Notaras que pone una V en el lufar de la fila que no tiene nombre
Te quieres saltar algunas lineas agregas skip Si quieres excluir una columna agregas los que quieras eliminar Nota Importante :Si usas agregar las columnas aparte de agregar el menos debes borrar el nombre de la columna
student2<- read.fwf("C:/Users/Antonio Constantino/Desktop/Rstudio/curso de youtube/curso youtube/../../r-course-master/data/tema1/student-fwf.txt",width=c(4,15,-20,15,4),header = F,sep = "\t",skip = 2)
head(student2)
## V1 V2 V3 V4
## 1 1046 Jordan Keller Chemistry 2014
## 2 1084 Macey Simpson Finance 2016
## 3 1010 Deanna Ortega Chemistry 2016
## 4 1096 Joe Eaton MIS 2014
## 5 1051 Yoko Washington Marketing 2017
## 6 1074 Ebony Farrell Chemistry 2017
Aqui se salto 2 y elimino la fila del correo
Clientes <- c("juan gabriel","ricardo","pedro ")
fechas <- as.Date(c("2017-12-27","2017-11-1","2018-1-1"))
pago<- c(315,192.55,40.15)
crear data frame
pedidos <- data.frame(Clientes,fechas,pago)
este es formato .Rdata
save(pedidos,file = "../../r-course-master/data/tema1/pedidos.Rdata ")
#m Como se guarda el data frame este es formato .rds
saveRDS(pedidos,file = "../../r-course-master/data/tema1/pedidos.rds")
Asi de borra una variable o un DF
# remove (pedidos )
No es lo mismo guardarlo que “mandarlo llamar” cargarlo para trabajarlo en R
Para formatos .Rdata
load("../../r-course-master/data/tema1/pedidos.Rdata ")
Para formatos RDS, necesitas crear una variable para que tenga un nombre ( por decirlo asi ), te lo guarda para datos en bruto como si tubieras un excel sin nombre y necesitas cargarlo
orders <-readRDS("../../r-course-master/data/tema1/pedidos.rds")
Como se guarada toda la sesión
#No es tan conveniente
save.image("../curso youtube/Trabajo.Rdata")
data("iris")
data("cars")
cars[1:5,]
## speed dist
## 1 4 2
## 2 4 10
## 3 7 4
## 4 7 22
## 5 8 16
Nota : el que guarda todo en archivo es el formato Rdata
#Atach
library(readr)
datosfaltantes <-read.csv("../../r-course-master/data/tema1/missing-data.csv",na.strings = "")
#na,string : conviene los vacios datos los cambia a N/A
datosfaltantes[1:5,]
## Income Phone_type Car_type
## 1 89800 Android Luxury
## 2 47500 Android Non-Luxury
## 3 45000 iPhone Luxury
## 4 44700 <NA> Luxury
## 5 59500 iPhone Luxury
datoslimpios<- na.omit(datosfaltantes)
la columna Ingresos = Income
df.elim.igresos<- datosfaltantes[!is.na(datosfaltantes$Income),]
df.elim.igresos[1:5,]
## Income Phone_type Car_type
## 1 89800 Android Luxury
## 2 47500 Android Non-Luxury
## 3 45000 iPhone Luxury
## 4 44700 <NA> Luxury
## 5 59500 iPhone Luxury
complete.cases(datosfaltantes)
## [1] TRUE TRUE TRUE FALSE TRUE FALSE TRUE TRUE TRUE TRUE TRUE TRUE
## [13] FALSE TRUE TRUE TRUE FALSE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [25] TRUE TRUE TRUE
Todos los faltantes te los muestra como FALSE
Paso 1 cuando tiene ceros ,convertirlos en N/A
datosfaltantes1 <-read.csv("../../r-course-master/data/tema1/missing-data.csv",na.strings = "")
datosfaltantes1$Income[datosfaltantes1$Income==0]<- NA
datosfaltantes1$Income[datosfaltantes1$Phone_type==0]<- NA
Pero tiene N/A asi que nos va a amandar error , veamoslo
mean(datosfaltantes$Income)
## [1] NA
Entonces lo que le pediremos es : Borralos y te saldra
mean(datosfaltantes$Income,na.rm = T)
## [1] 57872
sd(datosfaltantes$Income,na.rm = T)
## [1] 33170.09
Para no perder esos datos , se reemplaza por el promedio (pero existe un algoritmo mejor )
#ingresaremos una columna donde los que faltan se vana ingresar los datos pendientes (N/A)
datosfaltantes$columna_Incertada <-
ifelse(is.na(datosfaltantes$Income),
mean(datosfaltantes$Income,na.rm= TRUE),datosfaltantes$Income)
Ahora si el N/A es una variable categorica ( en vez de numeros son letras ) Abusado que esta bien perro
pero es basada en distribuciones gussianas , es muy impotante que se limpie o se asigne valores
# X es un vector que contiene N/A
rand.impute <- function(x){ #x viene a ser la columna del data frame con la que trabajaremos
missing <- is.na(x) #missing va a ser un vector del mismo tamano que x pero que contiene TRUE or false dependiendo si es X es igual NA o no
n.missing <- sum(missing)# esta variable indica cuantos valores son NA dentro de x
# Nota : cuando se pide sumar valores booleanos solo suma los FALSOS
x.obs <- x[!missing]# x.obs son los valores x que NO tienen un valor N/A dentro de x
imputed <- x #imputed es el valor que vamos a devolver, le damos el valor x por defecto
imputed[missing] <- sample(x.obs, n.missing, replace = TRUE) # imputed en la posicion que falten los missing values, va a ser un muestreo aleatorio de las observaviones de x que no esten missing, de tama?o n.missing, para que sea representativa respecto los missing values, y con la possibilidad de remplazo para que cambie los NA por valores aleatorios
return(imputed) # devuelveme el valor imputed
}
rand.impute.data.frame <- function(df,cols){
names <- names(df) #damos al vector name, los nombres de las columnas
for (col in cols) {
name <- paste(names[col], ".imputed", sep = "") #Anadir el nombre imputed despues del column name para identificar las nuevas columnas
df[name] = rand.impute(df[,col])#llamaremos la funcion de sustitucion de valores con valores aeatorios
}
df #recordar devolver el data frame con el que estamos trabajando
}
Leyendo esta sentencia es: al objeto “datos faltantes” le vas a aplicar la funcion de agregar columnas en los dtaos faltantes de forma aleatorias al DF y entre parentesis le dices cuales columnas va a sumar (de la 1 a la 2)
Otra forma de explicarlo :ahora se manda llamar la funcion Ahora metemos en una variable llamada data ,las columnas del df “datos flatantes” + las variables categoricas y numericas faltantes distribucion gaussiana ( solo aplica para los que no tenia valores) los demas los deja igual
datosfaltantes1<-rand.impute.data.frame(datosfaltantes1,c(1,2))
head(datosfaltantes1)
## Income Phone_type Car_type Income.imputed Phone_type.imputed
## 1 89800 Android Luxury 89800 Android
## 2 47500 Android Non-Luxury 47500 Android
## 3 45000 iPhone Luxury 45000 iPhone
## 4 44700 <NA> Luxury 44700 iPhone
## 5 59500 iPhone Luxury 59500 iPhone
## 6 NA Android Non-Luxury 47300 Android
# rm("Nombre de la funcion")
family.salary = c(40000, 60000, 50000, 80000, 60000, 70000, 60000)
family.size = c(4, 3, 2, 2, 3, 4, 3)
family.car = c("Lujo", "Compacto", "Utilitario", "Lujo",
"Compacto", "Compacto", "Compacto")
family <- data.frame(family.salary, family.size, family.car)
La funcion unique borra los registros que estan duplicados y esto lo guardamos en otra variable
family.unique <- unique(family)
Esta funcion nos manda una variable de tipo booleanos ( verdaero o falso ) solo manda los que estan duplicados el “original , no lo detecta”
duplicated(family)
## [1] FALSE FALSE FALSE FALSE TRUE FALSE TRUE
Si quiero saber cuales son las filas duplicadas
family[duplicated(family),]
## family.salary family.size family.car
## 5 60000 3 Compacto
## 7 60000 3 Compacto
#Ojo: los corchetes le estan diciendo [dame esto,"todo"( es dejarlo en blanco)]
Primero se instala un paquete ( Aqui esta comentado por que solo se tiene que instalar una ves recoordemos)
#install.packages("scales")
Acivar el paquete y cargamos los datos
library("scales")
##
## Attaching package: 'scales'
## The following object is masked from 'package:purrr':
##
## discard
## The following object is masked from 'package:readr':
##
## col_factor
students <-read.csv( "../../r-course-master/data/tema1/data-conversion.csv")
head(students)
## Age State Gender Height Income
## 1 23 NJ F 61 5000
## 2 13 NY M 55 1000
## 3 36 NJ M 66 3000
## 4 31 VA F 64 4000
## 5 58 NY F 70 30000
## 6 29 TX F 63 10000
Ceramos una nueva variable reescalar es una transformacion lineal
students$Income.rescaled<- rescale(students$Income)
head(students)
## Age State Gender Height Income Income.rescaled
## 1 23 NJ F 61 5000 0.07407407
## 2 13 NY M 55 1000 0.00000000
## 3 36 NJ M 66 3000 0.03703704
## 4 31 VA F 64 4000 0.05555556
## 5 58 NY F 70 30000 0.53703704
## 6 29 TX F 63 10000 0.16666667
La funcion rescale es un resumen de la formula los resultados son exactamente lo mismo
(students$Income - min(students$Income))/(max(students$Income)-min(students$Income))
## [1] 0.07407407 0.00000000 0.03703704 0.05555556 0.53703704 0.16666667
## [7] 0.90740741 1.00000000 0.01851852 0.35185185
En el caso que esten en valores porcentuales aqui lo que se hace es agregar “to=c(min, max)”
rescale(students$Income, to= c(0,100))
## [1] 7.407407 0.000000 3.703704 5.555556 53.703704 16.666667
## [7] 90.740741 100.000000 1.851852 35.185185
# El resultado es el mismo pero multiplicado por 100 en este caso
rescaled.many<-function(dataframe ,cols){
names<- names(dataframe)
for (col in cols){
name<- paste(names[col],"rescaled",sep = ".")
dataframe[name]<- rescale(dataframe[,col])
}
cat(paste("Hemos reescalado", length(cols),"variable(s)"))
dataframe
}
Se obtiene para cada variable un reescalamiento
students<- rescaled.many(students,c(1,4))
## Hemos reescalado 2 variable(s)
head(students)
## Age State Gender Height Income Income.rescaled Age.rescaled Height.rescaled
## 1 23 NJ F 61 5000 0.07407407 0.2222222 0.4000000
## 2 13 NY M 55 1000 0.00000000 0.0000000 0.0000000
## 3 36 NJ M 66 3000 0.03703704 0.5111111 0.7333333
## 4 31 VA F 64 4000 0.05555556 0.4000000 0.6000000
## 5 58 NY F 70 30000 0.53703704 1.0000000 1.0000000
## 6 29 TX F 63 10000 0.16666667 0.3555556 0.5333333
Normalizar (campana de Gauss):Hacer que algo se ajuste a una norma, una regla o un modelo común Nota Importante : esta tecnica solo sirve cuando el DF contiene solo Numeros
housing<-read.csv("../../r-course-master/data/tema1/BostonHousing.csv")
housing.z<- scale(housing)
Ente mas cerca del cero :son los mas cencanos a la media Ente mas lejos del cero :son mas alejados de la media
Si quisiera ajustar la media ( que no se calculara con respecto a esta)
housing.mean<- scale(housing,center = T,scale = T)
#scale es la desviacion estandar
Ahora hagamos una funcion que agrege esa normalizacion y no sobre escriba el DF ( para conservar los datos )
scale.many <- function(dataframe,cols){
names <- names(dataframe)
for (col in cols){
name<-paste(names[col],"z",sep = ".")
dataframe[name]<- scale(dataframe[,cols])
}
cat(paste("hemos normalizado",length(cols),"variables"))
dataframe
}
Ahora ejecutaremos la funcion
housing <- scale.many(housing,c(1,3,5:8))
## hemos normalizado 6 variables
Ejemplo:Meter numeros en categorias ( 10 = pobre y 100 = rico )
students3 <-read.csv("../../r-course-master/data/tema1/data-conversion.csv")
bp<-c(-Inf,10000,31000,Inf)
names<-c("low","averange", "High")
#siempre es una categoria menos que los parametros y hace intervalos de tipo (abierto y cerrado]
# Inf a 10000, 10000 a 31000,31000 a Inf
students3$Income.cat<- cut(students3$Income,breaks=bp,labels=names)
head(students3)
## Age State Gender Height Income Income.cat
## 1 23 NJ F 61 5000 low
## 2 13 NY M 55 1000 low
## 3 36 NJ M 66 3000 low
## 4 31 VA F 64 4000 low
## 5 58 NY F 70 30000 averange
## 6 29 TX F 63 10000 low
Tambien puedo decirle que no ponga etiquetas (no las defino yo) observa como sumo una columna con los valores en intervalo y no en etiquetas
students3$Income.cat2<-cut(students3$Income,breaks=bp)
head(students3)
## Age State Gender Height Income Income.cat Income.cat2
## 1 23 NJ F 61 5000 low (-Inf,1e+04]
## 2 13 NY M 55 1000 low (-Inf,1e+04]
## 3 36 NJ M 66 3000 low (-Inf,1e+04]
## 4 31 VA F 64 4000 low (-Inf,1e+04]
## 5 58 NY F 70 30000 averange (1e+04,3.1e+04]
## 6 29 TX F 63 10000 low (-Inf,1e+04]
Tambien puedo pedirle a R corte como el quiera solo diciendo en cuantas categorias cortar
students3$Income.cat3<-cut(students3$Income,breaks=4,labels = c("1","2","3","4"))
head(students3)
## Age State Gender Height Income Income.cat Income.cat2 Income.cat3
## 1 23 NJ F 61 5000 low (-Inf,1e+04] 1
## 2 13 NY M 55 1000 low (-Inf,1e+04] 1
## 3 36 NJ M 66 3000 low (-Inf,1e+04] 1
## 4 31 VA F 64 4000 low (-Inf,1e+04] 1
## 5 58 NY F 70 30000 averange (1e+04,3.1e+04] 3
## 6 29 TX F 63 10000 low (-Inf,1e+04] 1
Instalamos la libreria
#install.packages("dummies")
library("dummies")
## dummies-1.5.6 provided by Decision Patterns
Como una conversion de variables a todo el Df
students4 <-read.csv("../../r-course-master/data/tema1/data-conversion.csv")
students.dummy<- dummy.data.frame(students4,sep=".", all = T)
## Warning in model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE):
## non-list contrasts argument ignored
## Warning in model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE):
## non-list contrasts argument ignored
names(students.dummy)
## [1] "Age" "State.NJ" "State.NY" "State.TX" "State.VA" "Gender.F" "Gender.M"
## [8] "Height" "Income"
#all detecta los valores numericos y los respeta , no los hace como los estados
Como una conversion de variables a una columna ( femenino y Masculino )
students4$nuevo <- dummy(students4$Gender)
## Warning in model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE):
## non-list contrasts argument ignored
Selecionamos los datos que queremos aplicarle la funcion dummy a algunas columas en especial
students4<- dummy.data.frame(students4,names = c("State"))
## Warning in model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE):
## non-list contrasts argument ignored
#Este ejemplo lo que hace es convierte una dummy en varias columans
students4$Gender.dummy<-dummy(students4$Gender)
## Warning in model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE):
## non-list contrasts argument ignored
#cuando solo tienes 2 ( hombre y mujer ) te crea una columna y no hace 2 columnas : asigna para F=1 y M=0
bostonprincipal<- read.csv("../../r-course-master/data/tema1/housing-with-missing-value.csv",header = T,stringsAsFactors = F)
Si queremos una vista rapida de los datos ( estadiasticos basicos ) Enterga :Minimo,Primer cuartil ,mediana,media,3er quartil, maximo y numero de N/A por columna
summary(bostonprincipal)
## X crim zn indus
## Min. : 1.0 Min. : 0.00632 Min. : 0.00 Min. : 0.46
## 1st Qu.:127.2 1st Qu.: 0.08205 1st Qu.: 0.00 1st Qu.: 5.19
## Median :253.5 Median : 0.25651 Median : 0.00 Median : 9.69
## Mean :253.5 Mean : 3.61352 Mean : 11.36 Mean :11.14
## 3rd Qu.:379.8 3rd Qu.: 3.67708 3rd Qu.: 12.50 3rd Qu.:18.10
## Max. :506.0 Max. :88.97620 Max. :100.00 Max. :27.74
##
## chas nox rm age
## Min. :0.00000 Min. :0.3850 Min. :3.561 Min. : 2.90
## 1st Qu.:0.00000 1st Qu.:0.4490 1st Qu.:5.886 1st Qu.: 45.02
## Median :0.00000 Median :0.5380 Median :6.208 Median : 77.50
## Mean :0.06917 Mean :0.5547 Mean :6.285 Mean : 68.57
## 3rd Qu.:0.00000 3rd Qu.:0.6240 3rd Qu.:6.623 3rd Qu.: 94.08
## Max. :1.00000 Max. :0.8710 Max. :8.780 Max. :100.00
##
## dis rad tax ptratio
## Min. : 1.130 Min. : 1.000 Min. :187.0 Min. :12.60
## 1st Qu.: 2.100 1st Qu.: 4.000 1st Qu.:279.0 1st Qu.:17.40
## Median : 3.207 Median : 5.000 Median :330.0 Median :19.10
## Mean : 3.795 Mean : 9.515 Mean :408.2 Mean :18.47
## 3rd Qu.: 5.188 3rd Qu.:24.000 3rd Qu.:666.0 3rd Qu.:20.20
## Max. :12.127 Max. :24.000 Max. :711.0 Max. :22.00
## NA's :40 NA's :40
## b lstat medv
## Min. : 0.32 Min. : 1.73 Min. : 5.00
## 1st Qu.:375.38 1st Qu.: 6.95 1st Qu.:17.02
## Median :391.44 Median :11.36 Median :21.20
## Mean :356.67 Mean :12.65 Mean :22.53
## 3rd Qu.:396.23 3rd Qu.:16.95 3rd Qu.:25.00
## Max. :396.90 Max. :37.97 Max. :50.00
##
Primera solucion n.omit ( eliminar las filas ) Pero esto borra datos que pueden ser muy importantes para el analsis y se mueven algunos datos
boston1<- bostonprincipal
#na.omit(boston1)
Puedes compararlos
summary(boston1)
## X crim zn indus
## Min. : 1.0 Min. : 0.00632 Min. : 0.00 Min. : 0.46
## 1st Qu.:127.2 1st Qu.: 0.08205 1st Qu.: 0.00 1st Qu.: 5.19
## Median :253.5 Median : 0.25651 Median : 0.00 Median : 9.69
## Mean :253.5 Mean : 3.61352 Mean : 11.36 Mean :11.14
## 3rd Qu.:379.8 3rd Qu.: 3.67708 3rd Qu.: 12.50 3rd Qu.:18.10
## Max. :506.0 Max. :88.97620 Max. :100.00 Max. :27.74
##
## chas nox rm age
## Min. :0.00000 Min. :0.3850 Min. :3.561 Min. : 2.90
## 1st Qu.:0.00000 1st Qu.:0.4490 1st Qu.:5.886 1st Qu.: 45.02
## Median :0.00000 Median :0.5380 Median :6.208 Median : 77.50
## Mean :0.06917 Mean :0.5547 Mean :6.285 Mean : 68.57
## 3rd Qu.:0.00000 3rd Qu.:0.6240 3rd Qu.:6.623 3rd Qu.: 94.08
## Max. :1.00000 Max. :0.8710 Max. :8.780 Max. :100.00
##
## dis rad tax ptratio
## Min. : 1.130 Min. : 1.000 Min. :187.0 Min. :12.60
## 1st Qu.: 2.100 1st Qu.: 4.000 1st Qu.:279.0 1st Qu.:17.40
## Median : 3.207 Median : 5.000 Median :330.0 Median :19.10
## Mean : 3.795 Mean : 9.515 Mean :408.2 Mean :18.47
## 3rd Qu.: 5.188 3rd Qu.:24.000 3rd Qu.:666.0 3rd Qu.:20.20
## Max. :12.127 Max. :24.000 Max. :711.0 Max. :22.00
## NA's :40 NA's :40
## b lstat medv
## Min. : 0.32 Min. : 1.73 Min. : 5.00
## 1st Qu.:375.38 1st Qu.: 6.95 1st Qu.:17.02
## Median :391.44 Median :11.36 Median :21.20
## Mean :356.67 Mean :12.65 Mean :22.53
## 3rd Qu.:396.23 3rd Qu.:16.95 3rd Qu.:25.00
## Max. :396.90 Max. :37.97 Max. :50.00
##
Segunda solucion: para eliminar solo de alguna columna
drop_na<-c("rad")
boston2<- bostonprincipal[complete.cases(bostonprincipal[,!names(bostonprincipal)%in% drop_na]),]
Esto modifica el DF, elimina la columna
bostonsin1col<- bostonprincipal
bostonsin1col$rad=NULL
Eliminar diferentes columnas a la vez
eliminarcol<-c("rad","ptratio")
bostonsin2col<- bostonprincipal[,!names(bostonprincipal)%in% eliminarcol]
#install.packages("Hmisc")
Activamos la libreria y cargamos los datos
library("Hmisc")
## Loading required package: lattice
## Loading required package: survival
## Loading required package: Formula
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:dplyr':
##
## src, summarize
## The following objects are masked from 'package:base':
##
## format.pval, units
bostoncopy<- bostonprincipal
Impute :Es para rellenar valores NA con la media =mean
bostoncopy$rad<-impute(bostoncopy$rad,mean)
bostoncopy$ptratio<-impute(bostoncopy$ptratio,mean)
summary(bostoncopy)
##
## 40 values imputed to 9.515021
##
##
## 40 values imputed to 18.4676
## X crim zn indus
## Min. : 1.0 Min. : 0.00632 Min. : 0.00 Min. : 0.46
## 1st Qu.:127.2 1st Qu.: 0.08205 1st Qu.: 0.00 1st Qu.: 5.19
## Median :253.5 Median : 0.25651 Median : 0.00 Median : 9.69
## Mean :253.5 Mean : 3.61352 Mean : 11.36 Mean :11.14
## 3rd Qu.:379.8 3rd Qu.: 3.67708 3rd Qu.: 12.50 3rd Qu.:18.10
## Max. :506.0 Max. :88.97620 Max. :100.00 Max. :27.74
## chas nox rm age
## Min. :0.00000 Min. :0.3850 Min. :3.561 Min. : 2.90
## 1st Qu.:0.00000 1st Qu.:0.4490 1st Qu.:5.886 1st Qu.: 45.02
## Median :0.00000 Median :0.5380 Median :6.208 Median : 77.50
## Mean :0.06917 Mean :0.5547 Mean :6.285 Mean : 68.57
## 3rd Qu.:0.00000 3rd Qu.:0.6240 3rd Qu.:6.623 3rd Qu.: 94.08
## Max. :1.00000 Max. :0.8710 Max. :8.780 Max. :100.00
## dis rad tax ptratio
## Min. : 1.130 Min. : 1.000 Min. :187.0 Min. :12.60
## 1st Qu.: 2.100 1st Qu.: 4.000 1st Qu.:279.0 1st Qu.:17.40
## Median : 3.207 Median : 5.000 Median :330.0 Median :18.60
## Mean : 3.795 Mean : 9.515 Mean :408.2 Mean :18.47
## 3rd Qu.: 5.188 3rd Qu.: 9.515 3rd Qu.:666.0 3rd Qu.:20.20
## Max. :12.127 Max. :24.000 Max. :711.0 Max. :22.00
## b lstat medv
## Min. : 0.32 Min. : 1.73 Min. : 5.00
## 1st Qu.:375.38 1st Qu.: 6.95 1st Qu.:17.02
## Median :391.44 Median :11.36 Median :21.20
## Mean :356.67 Mean :12.65 Mean :22.53
## 3rd Qu.:396.23 3rd Qu.:16.95 3rd Qu.:25.00
## Max. :396.90 Max. :37.97 Max. :50.00
Nota : ya no tiene N/A
Para este caso lo que se va a reemplazar con la mediana
bostonmedian<-bostonprincipal
bostonmedian$rad<-impute(bostonmedian$rad,median)
bostonmedian$ptratio<-impute(bostonmedian$ptratio,median)
Nota Importante : se puede usar con la media , mediana , un numero etc,etc ,etc
#install.packages("mice")
#install.packages("VIM")
library(mice)
##
## Attaching package: 'mice'
## The following object is masked from 'package:stats':
##
## filter
## The following objects are masked from 'package:base':
##
## cbind, rbind
library(VIM)
## Loading required package: colorspace
## Loading required package: grid
## VIM is ready to use.
## Suggestions and bug-reports can be submitted at: https://github.com/statistikat/VIM/issues
##
## Attaching package: 'VIM'
## The following object is masked from 'package:datasets':
##
## sleep
Entrega una matriz donde te muestra los datos completos y los casos donde faltan valores
md.pattern(bostonprincipal)
## X crim zn indus chas nox rm age dis tax b lstat medv rad ptratio
## 431 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
## 35 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1
## 35 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1
## 5 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 2
## 0 0 0 0 0 0 0 0 0 0 0 0 0 40 40 80
Grafiquemoslo Col= color labels= pone el nombre de la columna cex.axis=Tamaño de letra Gap= distancia entre graficos ylab=Nombre de la grafica en el eje y
aggr(bostonprincipal,col=c('blue','red',numbers=T,shortVar=T),labels=names(bostonprincipal),cey.axis=0.5,cex.axis=0.6, gap=3,ylab=c("histograma de NA","Matriz"))
# Combinando y Separando datos Lo interesante de este tema es lo que tiene valor Cargamos libreria tidyr
#install.packages("tidyr")
library(tidyr)
Carga de datos
crime.data <- read.csv("../../r-course-master/data/tema1/USArrests.csv", stringsAsFactors = F)
head(crime.data)
## X Murder Assault UrbanPop Rape
## 1 Alabama 13.2 236 58 21.2
## 2 Alaska 10.0 263 48 44.5
## 3 Arizona 8.1 294 80 31.0
## 4 Arkansas 8.8 190 50 19.5
## 5 California 9.0 276 91 40.6
## 6 Colorado 7.9 204 78 38.7
crime.data<-cbind(state=rownames(crime.data),crime.data)
Rownames ( enumera las filas) # Como se pueden resumir datos Array asociativo /diccionario gater = Función que unifica columnas Tablas de doble entrada
crime.data1<- gather(crime.data,key="crime_type", value = "arrest_estimate",Murder:UrbanPop)
Resume en 2 variables
crime.data2<- gather(crime.data,key="crime_type", value = "arrest_estimate",-state)
lo contrario a gether
crime.data3<-spread(crime.data2,key="crime_type", value="arrest_estimate")
Es como Juntar valores
crime.data4<- unite(crime.data,col="Mordet_Assailt",Murder,Assault,sep="_")
Ahora si te pasan datos que estan juntos con caracteres se separan con la funcion separate
crime.data5<-separate(crime.data4,col="Mordet_Assailt",
into = c("Murder","Assault"),
sep = "_")
Paso 1:pedrice valores que se parezcan con un metodo Paso 2:acompletar los datos paso 3:Sustituir en el Df original los datos completos
Borrarlos no es una opción Tecnicas de imputación multivariable
library(mice)
housingdata <- read.csv("../../r-course-master/data/tema1/housing-with-missing-value.csv",header = T,stringsAsFactors = F)
columns<-c("ptratio", "rad")
imputed_data<-mice(housingdata[,names(housingdata)%in% columns],
m=5,# numero de imputaciones
maxit = 3,#Numero de iteraciones
method="pmm",#Predice el promedio de los datos
seed=2018#Semilla
)
##
## iter imp variable
## 1 1 rad ptratio
## 1 2 rad ptratio
## 1 3 rad ptratio
## 1 4 rad ptratio
## 1 5 rad ptratio
## 2 1 rad ptratio
## 2 2 rad ptratio
## 2 3 rad ptratio
## 2 4 rad ptratio
## 2 5 rad ptratio
## 3 1 rad ptratio
## 3 2 rad ptratio
## 3 3 rad ptratio
## 3 4 rad ptratio
## 3 5 rad ptratio
Metodos =method pmm= comparación predictiva de medios logreg =regresión logistica “solo se pude con 2” polyreg = regresión logistica politomica polr= modelo de probabilidades proporcionales
summary(imputed_data)
## Class: mids
## Number of multiple imputations: 5
## Imputation methods:
## rad ptratio
## "pmm" "pmm"
## PredictorMatrix:
## rad ptratio
## rad 0 1
## ptratio 1 0
Ahora con el modelo hecho acompletaremos los datos
complete.cases<-mice::complete(imputed_data)
asi se indica cuando los metodos se confunden o R o entiende de que libreria (mice::complete)la libreria + el metodo Ahora se sustituye los valores na del Df original por los que estimaste con el metodo mice en otras palabras: mete en esta columna lo que esta en esta columna
housingdata$ptratio<-complete.cases$ptratio
housingdata$rad<-complete.cases$rad
anyNA(housingdata)
## [1] FALSE
library(Hmisc)
housingdata1 <- read.csv("../../r-course-master/data/tema1/housing-with-missing-value.csv",header = T,stringsAsFactors = F)
impute_arg<- aregImpute(~ptratio+rad,data = housingdata1,n.impute = 5)
## Iteration 1
Iteration 2
Iteration 3
Iteration 4
Iteration 5
Iteration 6
Iteration 7
Iteration 8
Veamos que nos arroja
impute_arg
##
## Multiple Imputation using Bootstrap and PMM
##
## aregImpute(formula = ~ptratio + rad, data = housingdata1, n.impute = 5)
##
## n: 506 p: 2 Imputations: 5 nk: 3
##
## Number of NAs:
## ptratio rad
## 40 40
##
## type d.f.
## ptratio s 2
## rad s 1
##
## Transformation of Target Variables Forced to be Linear
##
## R-squares for Predicting Non-Missing Values for Each Variable
## Using Last Imputations of Predictors
## ptratio rad
## 0.237 0.251
con este metodo de donde obtengo los valores que quiero imputar
impute_arg$imputed$ptratio
## [,1] [,2] [,3] [,4] [,5]
## 43 18.7 21.2 18.0 17.8 19.1
## 61 18.0 19.2 17.8 19.1 18.7
## 99 19.1 19.1 12.6 21.0 15.5
## 103 18.9 16.6 16.6 19.2 21.0
## 104 16.0 17.4 17.6 14.7 20.2
## 113 13.0 15.3 17.8 19.1 14.7
## 117 16.6 15.3 18.8 17.4 16.4
## 118 19.6 15.3 20.1 17.4 13.0
## 125 19.1 12.6 17.8 17.8 17.8
## 136 18.4 14.8 17.8 14.7 21.2
## 153 14.9 17.4 17.9 20.2 14.9
## 156 18.8 17.8 17.3 17.8 19.1
## 164 13.0 17.4 18.9 19.7 17.6
## 168 18.9 19.1 18.6 19.2 20.9
## 173 20.2 17.4 17.9 18.7 21.0
## 197 21.0 17.4 21.1 20.2 20.2
## 214 18.4 15.2 18.3 14.7 16.6
## 215 21.0 13.0 18.6 14.7 18.4
## 219 14.7 18.4 14.7 18.4 19.6
## 226 19.7 15.3 17.9 17.4 14.9
## 247 17.4 15.3 17.9 19.1 17.8
## 272 18.7 21.0 13.0 18.7 18.0
## 291 17.9 14.9 18.5 16.8 17.0
## 292 21.0 14.7 18.5 14.7 21.0
## 295 17.9 18.4 15.9 21.2 18.2
## 303 17.9 15.3 18.9 17.8 14.7
## 313 17.6 20.9 21.2 19.6 21.0
## 314 19.0 15.2 18.4 18.9 18.8
## 327 20.9 17.4 21.0 13.0 21.0
## 332 15.9 15.3 15.3 21.0 19.7
## 364 20.2 20.2 20.2 20.2 20.2
## 391 20.2 20.2 20.2 20.2 20.2
## 392 20.2 20.2 20.2 20.2 20.2
## 403 20.2 20.2 20.1 20.2 20.2
## 417 20.2 20.2 20.2 20.2 20.2
## 437 17.6 19.2 17.9 19.1 16.1
## 442 20.2 20.2 20.2 19.7 19.2
## 458 20.2 20.2 20.2 20.2 20.2
## 465 20.2 20.2 20.2 20.2 20.2
## 500 16.6 15.3 21.2 19.1 19.2
impute_arg$imputed$rad
## [,1] [,2] [,3] [,4] [,5]
## 29 4 1 5 4 4
## 61 4 4 6 7 4
## 83 2 5 3 5 4
## 85 5 4 4 4 4
## 101 4 5 1 5 5
## 131 4 4 4 4 4
## 133 4 4 5 4 4
## 139 4 4 4 4 4
## 156 2 3 3 2 7
## 166 5 5 5 1 5
## 175 8 4 4 4 3
## 176 8 4 6 6 1
## 185 4 2 3 2 2
## 197 5 8 5 24 24
## 203 5 4 1 5 5
## 233 3 8 6 3 4
## 236 6 2 3 3 6
## 243 6 4 4 4 3
## 261 5 2 5 5 2
## 263 5 5 5 5 5
## 273 4 5 3 5 7
## 279 3 3 2 3 8
## 296 5 5 1 6 5
## 310 3 3 4 5 2
## 329 4 8 6 8 4
## 337 5 24 4 24 24
## 345 7 6 6 6 4
## 362 24 24 4 24 24
## 370 24 5 4 24 24
## 376 24 24 4 24 24
## 407 24 24 6 5 24
## 419 24 24 4 24 24
## 423 24 24 4 24 24
## 437 4 4 6 6 5
## 442 24 24 6 5 4
## 452 24 24 6 24 24
## 464 24 24 4 24 24
## 486 24 24 24 24 24
## 491 24 24 1 24 24
## 497 6 5 2 4 4
Solo falatria sustituirlo con las columnas que se tienen en el DF Original
Los valores que se salen de lo comun es decir (1 o 2 y aparece un 73 de la nada ) Cambiar ruta del archivo
ozone.data<- read.csv("../../r-course-master/data/tema1/ozone.csv",header = T,stringsAsFactors = F)
outliner_values<-boxplot(ozone.data$pressure_height,main="presure Heigh",boxwex=0.5)
summary(ozone.data$pressure_height)
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 5320 5700 5770 5753 5830 5950 12
Comparando los datos
boxplot(pressure_height~Month,
data = ozone.data,
main="presure Height per Month"
)
boxplot(ozone_reading~Month,
data = ozone.data,
main="ozone reading per onth"
)$out # el out muestra un mensaje en consola
## [1] 11.06 9.93 22.89 24.29 29.79
mtext("hola")
# Enmascarando Outlinerscon trasnformaciones y cappings Lo que hacemos es los que esten arriba del percentil 95 se sustitute con la media , asi los datos no se ven tan alejados
impute_outliners<- function(x,removeNA=T){
quantiles<- quantile(x,c(0.05,0.95),na.rm=removeNA)
x[x<quantiles[1]]<- mean(x,na.rm=removeNA)
x[x>quantiles[2]]<- mean(x,na.rm=removeNA)
x
}
Validemos si acomodo los datos que estaban separados Aplicamos la función
imputed.data.ozone<-impute_outliners(ozone.data$pressure_height)
par(mfrow=c(1,2))
boxplot(ozone.data$pressure_height,main="presión con Outliners")
boxplot(imputed.data.ozone,main="presión sin Outliners")
# Outliners , pero reemplazando datos Nota: es diferente imputar los datos a reemplazarlos
replace.outliners<- function(x,removeNA=T){
qrts<-quantile(x,probs=c(0.25,0.75),na.rm=removeNA)
caps<-quantile(x,probs=c(0.05,0.95),na.rm=removeNA)
iqr<-qrts[2]-qrts[1]#Rango Intercuartilico
h<- 1.5*iqr
x[x<qrts[2]-h]<-caps[1]
x[x<qrts[1]+h]<-caps[2]
x
}
Ahora esa selección de valores fuera de esos rangos , se van a sutituir con la función de arriba ya cargada
capped_presure_heigh<-replace.outliners(ozone.data$pressure_height)
Grafiquemoslo 5
par(mfrow=c(1,2))
boxplot(ozone.data$pressure_height,main="presión con Outliners")
boxplot(capped_presure_heigh,main="Presión sin Outliners")
# Resumen de datos y estructura del DF
estructura<-read.csv("../../r-course-master/data/tema2/auto-mpg.csv",header = T,stringsAsFactors = F)
anyNA(estructura)#validamos si tiene NA's el DF
## [1] FALSE
Los cilindros de los carros no nos sirven como valores , por eso los vamos a comvertir en factores
estructura$cylinders<-factor(estructura$cylinders,
levels= c(3,4,6,8),
labels= c("3cil","4cil","6cil","8cil"))
summary da valores estadisticos
summary(estructura)
## No mpg cylinders displacement horsepower
## Min. : 1.0 Min. : 9.00 3cil: 4 Min. : 68.0 Min. : 46.0
## 1st Qu.:100.2 1st Qu.:17.50 4cil:204 1st Qu.:104.2 1st Qu.: 76.0
## Median :199.5 Median :23.00 6cil: 84 Median :148.5 Median : 92.0
## Mean :199.5 Mean :23.51 8cil:103 Mean :193.4 Mean :104.1
## 3rd Qu.:298.8 3rd Qu.:29.00 NA's: 3 3rd Qu.:262.0 3rd Qu.:125.0
## Max. :398.0 Max. :46.60 Max. :455.0 Max. :230.0
## weight acceleration model_year car_name
## Min. :1613 Min. : 8.00 Min. :70.00 Length:398
## 1st Qu.:2224 1st Qu.:13.82 1st Qu.:73.00 Class :character
## Median :2804 Median :15.50 Median :76.00 Mode :character
## Mean :2970 Mean :15.57 Mean :76.01
## 3rd Qu.:3608 3rd Qu.:17.18 3rd Qu.:79.00
## Max. :5140 Max. :24.80 Max. :82.00
Aqui lo que vas a ver es como R esta leyendo el archivo previamnte cargado
str(estructura)
## 'data.frame': 398 obs. of 9 variables:
## $ No : int 1 2 3 4 5 6 7 8 9 10 ...
## $ mpg : num 28 19 36 28 21 23 15.5 32.9 16 13 ...
## $ cylinders : Factor w/ 4 levels "3cil","4cil",..: 2 1 2 2 3 2 4 2 3 4 ...
## $ displacement: num 140 70 107 97 199 115 304 119 250 318 ...
## $ horsepower : int 90 97 75 92 90 95 120 100 105 150 ...
## $ weight : int 2264 2330 2205 2288 2648 2694 3962 2615 3897 3755 ...
## $ acceleration: num 15.5 13.5 14.5 17 15 15 13.9 14.8 18.5 14 ...
## $ model_year : int 71 72 82 72 70 75 76 81 75 76 ...
## $ car_name : chr "chevrolet vega 2300" "mazda rx2 coupe" "honda accord" "datsun 510 (sw)" ...
Tambien puedes verlo en un zoom de cada columna lo que vas a ver es: cuantos niveles ( etiquetas y que posicion con respecto a esa etiqueta tiene ) 2=4cil ,1=4cil y asi sucesivamente
str(estructura$cylinders)
## Factor w/ 4 levels "3cil","4cil",..: 2 1 2 2 3 2 4 2 3 4 ...
#install.packages(c("modeest","raster","moments"))
library(modeest)
## Registered S3 method overwritten by 'rmutil':
## method from
## print.response httr
library(raster)
## Loading required package: sp
##
## Attaching package: 'raster'
## The following object is masked from 'package:dplyr':
##
## select
library(moments)
##
## Attaching package: 'moments'
## The following object is masked from 'package:modeest':
##
## skewness
Creamos un vector desde una DF
x<-estructura$mpg
mean(x)#promedio (medida aritmetica)
## [1] 23.51457
median(x)#mediana
## [1] 23
mfv(x)#moda es el valor que mas se repite
## [1] 13
quantile(x)#percentiles
## 0% 25% 50% 75% 100%
## 9.0 17.5 23.0 29.0 46.6
como se distribuyen los datos (que tan lejos estan de la media)
var(x)#Varianza
## [1] 61.08961
sd(x)#desviacion tipica(se usa intervalos de confianza )
## [1] 7.815984
cv(x)#Coheficiente de variacion
## [1] 33.2389
Momento de # Asimetria de Fisher Asimetria de fisher(que tan chueca esta la campana de gauss), si sale negativo es asimetrica negativa , y si es positiva , pues es asimetrica positiva
skewness(x)
## [1] 0.4553419
Que tan chaparra esta la campana de gauss Leptocurtica = sin colas ,“una curva flaquita” Mesocurtica=Esta es perfecta platicurtica=La curva es casi toda curvas
moments::kurtosis(x)
## [1] 2.480575
#Histograma
hist(x)
# Obtener un subconnjunto de los datos Cargamos los datos
dat<- read.csv("../../r-course-master/data/tema2/auto-mpg.csv",header = T,stringsAsFactors = F)
Indice por posicion
dat[1:5,8:9]
## model_year car_name
## 1 71 chevrolet vega 2300
## 2 72 mazda rx2 coupe
## 3 82 honda accord
## 4 72 datsun 510 (sw)
## 5 70 amc gremlin
ind.posic<-dat[c(1:5,c(8,9))]
ind.posic[1:3,]
## No mpg cylinders displacement horsepower model_year car_name
## 1 1 28 4 140 90 71 chevrolet vega 2300
## 2 2 19 3 70 97 72 mazda rx2 coupe
## 3 3 36 4 107 75 82 honda accord
O tienes la opcion de seleccionar por nombre de la columna: Se lle mas o menos asi :De la fila 1 a la 5 de las columnas que se llaman “etc”
dat[1:5,c("model_year","car_name")]
## model_year car_name
## 1 71 chevrolet vega 2300
## 2 72 mazda rx2 coupe
## 3 82 honda accord
## 4 72 datsun 510 (sw)
## 5 70 amc gremlin
dat[dat$mpg==max(dat$mpg)|dat$mpg==min(dat$mpg),]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 190 190 9.0 8 304 193 4732 18.5 70
## 269 269 46.6 4 86 65 2110 17.9 80
## car_name
## 190 hi 1200d
## 269 mazda glc
dat[dat$mpg<30 & dat$cylinders==6,c("car_name","mpg")]
## car_name mpg
## 5 amc gremlin 21.0
## 9 chevroelt chevelle malibu 16.0
## 21 plymouth volare 20.5
## 29 amc hornet 18.0
## 37 amc concord 19.4
## 41 dodge aspen 6 20.6
## 43 ford mustang 18.0
## 48 dodge aspen 19.1
## 50 chevrolet citation 23.5
## 52 ford torino 500 19.0
## 69 chevrolet chevelle malibu classic 16.0
## 72 ford maverick 15.0
## 73 pontiac firebird 19.0
## 75 chevrolet nova 18.0
## 77 chevrolet malibu 20.5
## 85 ford maverick 21.0
## 110 plymouth valiant 18.0
## 115 buick century 22.4
## 117 pontiac lemans v6 21.5
## 124 ford pinto 18.0
## 137 ford fairmont (auto) 20.2
## 147 mercury capri v6 21.0
## 149 amc gremlin 18.0
## 157 plymouth satellite custom 16.0
## 161 datsun 810 maxima 24.2
## 174 buick skyhawk 21.0
## 177 amc pacer d/l 17.5
## 178 ford granada l 22.0
## 182 plymouth duster 23.0
## 183 chevrolet nova 15.0
## 184 chevrolet nova 22.0
## 201 amc hornet 19.0
## 202 toyota cressida 25.4
## 203 ford maverick 24.0
## 207 plymouth satellite sebring 18.0
## 209 amc hornet sportabout (sw) 18.0
## 215 buick century special 20.6
## 219 amc matador 18.0
## 223 amc gremlin 20.0
## 225 oldsmobile omega brougham 26.8
## 238 dodge aspen 18.6
## 239 mercury zephyr 6 19.8
## 247 plymouth duster 20.0
## 258 peugeot 604sl 16.2
## 270 buick skylark 20.5
## 273 ford granada 18.5
## 274 buick regal sport coupe (turbo) 17.7
## 276 ford granada gl 20.2
## 277 buick century 17.0
## 282 chevrolet concours 17.5
## 284 amc matador 15.0
## 287 amc concord dl 6 20.2
## 292 mercury monarch 15.0
## 294 toyota mark ii 20.0
## 305 chrysler lebaron salon 17.6
## 308 plymouth valiant 22.0
## 310 pontiac ventura sj 18.5
## 312 toyota mark ii 19.0
## 315 ford granada ghia 18.0
## 324 ford maverick 18.0
## 325 amc hornet 18.0
## 333 ford maverick 21.0
## 334 plymouth volare custom 19.0
## 336 datsun 810 22.0
## 337 amc pacer 19.0
## 341 pontiac phoenix lj 19.2
## 343 chevrolet chevelle malibu 17.0
## 353 chevrolet citation 28.8
## 356 dodge aspen se 20.0
## 363 amc concord d/l 18.1
## 366 plymouth duster 22.0
## 370 buick century limited 25.0
## 373 chevrolet nova custom 16.0
## 374 plymouth valiant custom 19.0
## 377 volvo 264gl 17.0
## 380 amc hornet 22.5
## 381 mercury zephyr 20.8
## 382 amc matador 16.0
## 385 plymouth fury 18.0
## 394 mercedes-benz 280s 16.5
## 398 amc gremlin 19.0
subset(dat,mpg>30 & cylinders==6,select = c("car_name","mpg"))#si no se incluye el select lo que se hace es : Te entrega las columnas que selecciones , de lo contrario , te entrega todas las columnas
## car_name mpg
## 12 volvo diesel 30.7
## 300 oldsmobile cutlass ciera (diesel) 38.0
## 364 datsun 280-zx 32.7
Ejemplo c1:2,2:3 # Nomenclatura & = y ( este y este ) | = o ( este o este ) ! = Lo contrario “==” = igual
#Excuir columnas
dat[1:5,c(-1,-9)]
## mpg cylinders displacement horsepower weight acceleration model_year
## 1 28 4 140 90 2264 15.5 71
## 2 19 3 70 97 2330 13.5 72
## 3 36 4 107 75 2205 14.5 82
## 4 28 4 97 92 2288 17.0 72
## 5 21 6 199 90 2648 15.0 70
#si se quiere usar con los nombres de las columnas no se puede
#dat[1:5,-c("car_name",mpg)]
#se tiene que hacer de esta forma
excluir.col<-dat[dat$mpg ,!names(dat)%in% c("No","car_name")]# evito el dato escrito en las columnas
excluir.col[1:3,]
## mpg cylinders displacement horsepower weight acceleration model_year
## 28 15 8 383 170 3563 10.0 70
## 19 14 8 302 140 4638 16.0 74
## 36 14 8 351 153 4154 13.5 71
dat[dat$mpg %in% c(15,20),c("car_name","mpg")]
## car_name mpg
## 23 chevrolet vega 20
## 24 audi 100ls 20
## 28 dodge challenger se 15
## 55 chevrolet monza 2+2 20
## 72 ford maverick 15
## 91 mercury cougar brougham 15
## 98 ford galaxie 500 15
## 108 buick skylark 320 15
## 134 chevrolet monte carlo s 15
## 141 amc ambassador dpl 15
## 170 amc matador (sw) 15
## 172 dodge coronet custom 15
## 183 chevrolet nova 15
## 187 plymouth fury iii 15
## 194 toyota carina 20
## 223 amc gremlin 20
## 226 dodge dart custom 15
## 235 chevrolet bel air 15
## 247 plymouth duster 20
## 250 volvo 245 20
## 284 amc matador 15
## 285 chevrolet monte carlo 15
## 292 mercury monarch 15
## 294 toyota mark ii 20
## 356 dodge aspen se 20
Hace subconjuntos y crea listas de DF
car.list<-split(dat,dat$cylinders)
como accedemos a este Df
car.list[[1]]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 2 2 19.0 3 70 97 2330 13.5 72
## 199 199 18.0 3 70 90 2124 13.5 73
## 251 251 23.7 3 70 100 2420 12.5 80
## 365 365 21.5 3 80 110 2720 13.5 77
## car_name
## 2 mazda rx2 coupe
## 199 maxda rx3
## 251 mazda rx-7 gs
## 365 mazda rx-4
compara como se diferencia de usar un corchete doble de uno sencillo
str(dat[1])
## 'data.frame': 398 obs. of 1 variable:
## $ No: int 1 2 3 4 5 6 7 8 9 10 ...
str(dat[[1]])
## int [1:398] 1 2 3 4 5 6 7 8 9 10 ...
#install.packages("caret")
library(caret)
##
## Attaching package: 'caret'
## The following object is masked from 'package:survival':
##
## cluster
## The following object is masked from 'package:purrr':
##
## lift
dat.casa<- read.csv("../../r-course-master/data/tema2/BostonHousing.csv")
metV: Valor mediano de casas ocupadas con mil dolares # Training practicion con el 80% de los datos
training.ids<- createDataPartition(dat.casa$MEDV,p=.80, list=F)
data.training<-dat.casa[training.ids,]#
data.validation <- dat.casa[-training.ids,]
Se interpreta:crea una particion( array) con el 80% de los datos y mo ,me lo des como lista
Crearemos una particion con el 70%
training.ids2<- createDataPartition(dat.casa$MEDV,p=.70, list=F)
data.training2<-dat.casa[training.ids2,]
temp<- dat.casa[-training.ids2,]
data.validation2 <-createDataPartition(temp$MEDV,p=.5, list=F)
data.testing<- temp[-data.validation2,]
data2<-read.csv("../../r-course-master/data/tema2/boston-housing-classification.csv", head =T)
Paricion 70-30
training.ids.3<- createDataPartition(data2$MEDV_CAT,p=0.7,list = F)
data.training.3<-data2[training.ids.3,]
data.validation3<-data2[-training.ids.3,]
rda.cb.partition2<- function(dataframe,target.index,prob){
library(caret)
training.ids<- createDataPartition(dataframe[,target.index],p=prob, list = F)
list(train=dataframe[training.ids,],val=dataframe[-training.ids,])
}
rda.cb.partition3<- function(dataframe,target.index,
prob.training,prob.val){
library(caret)
training.ids<- createDataPartition(dataframe[,target.index],p=prob.training, list = F)
train.data<-dataframe[training.ids,]
temp<- dataframe[-training.ids,]
validation.ids<-createDataPartition(temp[,target.index],p=prob.val,list=F)
list(train=train.data,val=validation.ids,test=temp[-validation.ids,])
}
veamos como hace las particiones de la funcion de 2 particiones
data.particion2<-rda.cb.partition2(dat.casa,14,0.8)
Para partir con la funcion de 3
data.particion3<- rda.cb.partition3(dat.casa,14,0.7,0.5)
Como se accede a las propiedades de una lista
data.particion2.1<-data.particion2[[1]]
data.particion2.1[1:3,]
## CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO B LSTAT
## 1 0.00632 18 2.31 0 0.538 6.575 65.2 4.0900 1 296 15.3 396.90 4.98
## 3 0.02729 0 7.07 0 0.469 7.185 61.1 4.9671 2 242 17.8 392.83 4.03
## 4 0.03237 0 2.18 0 0.458 6.998 45.8 6.0622 3 222 18.7 394.63 2.94
## MEDV
## 1 24.0
## 3 34.7
## 4 33.4
data.particion3.1<-data.particion3[[1]]
data.particion3.1[1:3,]
## CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO B LSTAT
## 1 0.00632 18 2.31 0 0.538 6.575 65.2 4.0900 1 296 15.3 396.90 4.98
## 2 0.02731 0 7.07 0 0.469 6.421 78.9 4.9671 2 242 17.8 396.90 9.14
## 4 0.03237 0 2.18 0 0.458 6.998 45.8 6.0622 3 222 18.7 394.63 2.94
## MEDV
## 1 24.0
## 2 21.6
## 4 33.4
muestra<-sample(dat.casa$CRIM,40,replace = F)# replase = False significa que esos 40 que tome valores quer no estan repoetidos ( Nota :no puedes pedir mas de los que tiene tu DF)
# puede validar el numero de filas con nrow
auto.data<- read.csv("../../r-course-master/data/tema2/auto-mpg.csv", stringsAsFactors = F)
#sobre escribiremos a cartor la columna de cilindros
auto.data$cylinders<-factor(auto.data$cylinders,
levels= c(3,4,5,6,8),labels=c("3cil","4cil","5cil","6cil","8cil"))
attach(auto.data)#carga el paquete para trabajar y con esto te evitas referenciar el DF , solo indicas la columna
## The following object is masked from package:ggplot2:
##
## mpg
Histograma
hist(acceleration,
col =rainbow(16),#Color del Histograma o rainbow para arcohiris o solo col="Blue"
xlab="Aceleracion",# Nombre del eje X
ylab = "Frecuencia",# Nombre del eje y
main ="Histograma de la aceleraciones",# Titulo que quieres poner
breaks = 16)#numero de diviciones que deseas
Se puede hacer que te mida todo el Df de un jalon
#boxplot(auto.data)
boxplot(mpg,
xlab="Millas por Galeon")
Hacer un boxplot en funcion de otra variable
boxplot(mpg~model_year, #muestra las millas por galeon por ano
xlab="millas por galeon" )
Hacer otro boxplot en fincion de otra varioable distinta a la mencionada arriba
boxplot(mpg~cylinders,
xlab="Millas por Galeon en funcion de los cilindros" )
# Scatter Plot (solo variables numericas)
plot(mpg~horsepower)
linearmodel1<-lm(mpg~horsepower)#Crea una linea de regresion lineal
abline(linearmodel1)# sobrepone la linea sobre la grafica anterior
Es mas funcional tener una matriz de scaterplot
pairs(~mpg+displacement+horsepower+weight)
plot(mpg~horsepower,#Grafica de nube de puntos
type="n") # No pintes nada ( no pongas los puntos )
linearmodel<-lm(mpg~horsepower)#Crea una linea de regresion lineal
abline(linearmodel)# sobrepone la linea sobre la grafica anterior
# Agregar colores para una variable ( en este caso los cilindros )
with(subset(auto.data,# toma es te subconjunto
cylinders=="8cil"),# que se llama asi
points(horsepower,mpg,# de estas variables que mandate llamar en el grafico
col="red"))# y los coloreas de este color
with(subset(auto.data,cylinders=="6cil"), points(horsepower,mpg,col="blue"))
with(subset(auto.data,cylinders=="5cil"), points(horsepower,mpg,col="green"))
with(subset(auto.data,cylinders=="4cil"), points(horsepower,mpg))# si no se manda llamar algun color , lo pone negro por defoult
with(subset(auto.data,cylinders=="3cil"),points(horsepower,mpg,,col="yellow"))
Nota el Histograma tiene que estar en frecuencias acumuladas
hist(mpg,prob=T)
lines(density(mpg))
old.par<- par()#guardas que esta era la configuracion inicial de los parametros :ojo esto es importante
par(mfrow=c(1,2))# Cmabias la configuracion ( por columnas, una al lado de otra )
# para mfcol ( los tienes un gafico uno sobre otro )
with(auto.data,{
plot(mpg~weight, main="Peso vs Consumo")
plot(mpg~acceleration,main="Aceleracion Vs el Consumo ")
}
)
par(old.par)# aqui regresas a decirle que solo es para este grafico ( esto que te mandas en rojo, solo es ten cuidado , pero no esta mal )
## Warning in par(old.par): el parámetro del gráfico "cin" no puede ser
## especificado
## Warning in par(old.par): el parámetro del gráfico "cra" no puede ser
## especificado
## Warning in par(old.par): el parámetro del gráfico "csi" no puede ser
## especificado
## Warning in par(old.par): el parámetro del gráfico "cxy" no puede ser
## especificado
## Warning in par(old.par): el parámetro del gráfico "din" no puede ser
## especificado
## Warning in par(old.par): el parámetro del gráfico "page" no puede ser
## especificado
bwplot xyplot densityplot splom
library(lattice)
bwplot(~auto.data$mpg|auto.data$cylinders,#asi se representan valores(x) con factores(y) de manera rapida
main="MPG segun los cilindros ",
xlab = "Millas por Galeon")
# Cajas de gatos con vigotes de menara rapida con valores numeros y vategorias
xyplot(mpg~weight|cylinders,data = auto.data,
main="Peso Vs Consumo Vs Cilindros",
xlab = "Peso en KG",
ylab="Consumo (MPG)")
#Se puede agregar el valor aspect=1 a la funcion para que guarde la proporcion
alquiler<- read.csv("../../r-course-master/data/tema2/daily-bike-rentals.csv", header = T)
alquiler$season<-factor(alquiler$season, levels = c(1,2,3,4),labels=c("Invierno","Primavera","Verano","Otono"))
alquiler$workingday<-factor(alquiler$workingday, levels = c(0,1),labels=c("festivo ","De trabajo"))
alquiler$weathersit<-factor(alquiler$weathersit, levels = c(1,2,3),labels=c("Despejado","Nublado", "LLuvia/Nieve "))
alquiler$dteday<- as.Date(alquiler$dteday, format = "%Y-%m-%d")# cambiar la columna a dia en el formatro especializado
attach(alquiler)
## The following object is masked _by_ .GlobalEnv:
##
## temp
## The following object is masked from package:mice:
##
## windspeed
winter <- subset(alquiler,season=="Invierno")$cnt
spring<-subset(alquiler,season=="Primavera")$cnt
summer<-subset(alquiler,season=="Verano")$cnt
fall<-subset(alquiler,season=="Otono")$cnt
par(mfrow=c(2,2))#2 filas y 2 columnas hist(winter,prob=T, xlab = “alquiler de bicicletas en Invierno”, main = ““)
par(mfrow=c(2,2))#2 filas y 2 columnas
hist(winter,prob=T, xlab = "alquiler de bicicletas en Invierno", main = "")
lines(density(winter))
abline(v=mean(winter), col="blue")
abline(v=median(winter), col="red")
hist(spring,prob=T, xlab = "alquiler de bicicletas en Primavera", main = "")
lines(density(spring))
abline(v=mean(spring), col="blue")
abline(v=median(spring), col="red")
hist(summer,prob=T, xlab = "alquiler de bicicletas en Verano", main = "")
lines(density(summer))
abline(v=mean(summer), col="blue")
abline(v=median(summer), col="red")
hist(fall,prob=T, xlab = "alquiler de bicicletas en otono", main = "")
lines(density(fall))
abline(v=mean(fall), col="blue")
abline(v=median(fall), col="red")
# Visualizacion de datos
#install.packages("beanplot")
library(beanplot)
beanplot(alquiler$cnt~alquiler$season, col = c("blue","red","green"))
#ctm es la cantidad de bicicletas que se alqularon
Esto puede ayudar validar hipotesis Analisis de causalidad
bwplot(cnt~weathersit, data = alquiler,
layout=c(1,1),
xlab = "Pronostico del tiempo",
ylab = "Frecuencias"
)
Ahora si queriamos comparar cuantos datos se tienen por distribucion
bwplot(cnt~weathersit, data = alquiler,
layout=c(1,1),
xlab = "Pronostico del tiempo",
ylab = "Frecuencias",
panel = function(x,y,...){
panel.bwplot(x,y,...)
panel.stripplot(x,y,jitter.data = T,...,col="blue")#anade /sobrepone los datos de los puntos
}
)
# Tecnica de Validacion cruzada Se explicara mas a detalle mas adelante # Q-Q Plot Graficos Cuartil- Cuartil ( validar si es normal una muestra o datos )
s<-seq(0.01,0.99,0.01)# crea una secuencia desde el 0.001 hasta el 0.99 en contadores de 0.001
qn<-qnorm(s)#cuartiles normales
df<-data.frame(p=s,q=qn)
sample<-rnorm(200)# se hizo una distribucion normal con 200 datos
quantile(sample,probs = s)
## 1% 2% 3% 4% 5% 6%
## -2.055577679 -1.992587557 -1.923669383 -1.819028832 -1.781607474 -1.687751134
## 7% 8% 9% 10% 11% 12%
## -1.508056688 -1.455795697 -1.298594111 -1.275686301 -1.196551456 -1.170797954
## 13% 14% 15% 16% 17% 18%
## -1.137196582 -1.077353836 -1.009672373 -0.992896091 -0.965983635 -0.899407571
## 19% 20% 21% 22% 23% 24%
## -0.874598243 -0.858187236 -0.767458782 -0.747680443 -0.727995697 -0.716790398
## 25% 26% 27% 28% 29% 30%
## -0.701607965 -0.662561116 -0.620113773 -0.544906561 -0.530396062 -0.508232899
## 31% 32% 33% 34% 35% 36%
## -0.475261809 -0.465008877 -0.454095238 -0.438904163 -0.410543511 -0.394888059
## 37% 38% 39% 40% 41% 42%
## -0.388175220 -0.357129631 -0.315099855 -0.275215674 -0.266799437 -0.247391137
## 43% 44% 45% 46% 47% 48%
## -0.231328523 -0.206997353 -0.178793544 -0.168080581 -0.131701120 -0.104470825
## 49% 50% 51% 52% 53% 54%
## -0.099925444 -0.088655855 -0.057255416 -0.046189812 -0.023463017 0.008122843
## 55% 56% 57% 58% 59% 60%
## 0.061224700 0.104525861 0.130282941 0.142039331 0.169750936 0.188530312
## 61% 62% 63% 64% 65% 66%
## 0.208795272 0.220380875 0.230618120 0.244648746 0.256915945 0.268875238
## 67% 68% 69% 70% 71% 72%
## 0.289933316 0.362914355 0.372145602 0.410711232 0.446006964 0.472163111
## 73% 74% 75% 76% 77% 78%
## 0.501493524 0.527359701 0.557780203 0.602611089 0.663977468 0.695990469
## 79% 80% 81% 82% 83% 84%
## 0.722022081 0.778221977 0.846321370 0.912534405 0.952579796 1.021396271
## 85% 86% 87% 88% 89% 90%
## 1.073874417 1.136068446 1.143140328 1.154871615 1.175476688 1.257221019
## 91% 92% 93% 94% 95% 96%
## 1.281232264 1.311270023 1.360024297 1.399522634 1.432030721 1.655224747
## 97% 98% 99%
## 1.818300390 1.946532206 2.126562356
qqnorm (tiene que seguir aproximadamente una linea recta )
qqnorm(trees$Height)
# como diferenciar cuando es una distribucion normal de una uniforme Se ve como una ojiva y recordemos que tiene que ser una linea recta
qqnorm(randu$x)
#randu es una distribucion uniforme( todos tienen la misma probabilidad de salir )
n<-length(randu$x)# obtiene el largo de los datos ( son 400)
y<- qunif(ppoints(n))#qunif distribucion uniforme
#ppoints genera un nuemro de probabilidades , en este caso , ya sacamos el largo por eso es n
qqplot(y,randu$x)
Asi se ve una distribucion de ji cuadrado
chi3<- qchisq(ppoints(30)#qchiq= cuantil chi square
,df=3)# df son los grados de libertad
n30<- qnorm(ppoints(30))
qqplot(n30,chi3)
se ve como una onda y tiene que ser una linea recta
cauchy<-qcauchy(ppoints(30))
qqplot(n30,cauchy)
Ahora , si comparas la misma
x<- seq(-3,3,0.01)# aqui solo generas numeros
par(mfrow=c(3,2))# configuracion par que sean 2 graficas
plot(x,dnorm(x),
main="Distibucion Normal")#funcion de distribucion
plot(x,pnorm(x),
main="Probabilidad de una normal")# funcion de probabilidad acumulativa
plot(x,dchisq(x,df=3),
#Grados de libertad
main="Distibucion chi")#funcion de distribucion de chi
plot(x,pchisq(x,df=3),
main="probabilidad chi")#funcion de probabilidad de Chi
plot(x,dcauchy(x),
#Grados de libertad
main="Distibucion chi")#funcion de distribucion de cauchi
plot(x,pcauchy(x),
main="probabilidad chi")#funcion de probabilidad de cauchi
Algortimos de ML que no se ven en este curso
XGBoost Long Short-Term Memory (LSTM)
calificaciones<-read.csv("../../r-course-master/data/tema3/college-perf.csv",header = T)
calificaciones$Perf<-ordered(calificaciones$Perf,levels=c("Low","Medium","High"))# odenamos los valores ne este orden , en el DF no se ve pero ya lo hizo
calificaciones$Pred<-ordered(calificaciones$Pred,levels=c("Low","Medium","High"))# mismo comentario de arriba pero a otr columna
table<-table(calificaciones$Perf,calificaciones$Pred,dnn = c("Actual"," Prediccion"))
table# matriz de confucion
## Prediccion
## Actual Low Medium High
## Low 1150 84 98
## Medium 166 1801 170
## High 35 38 458
si se quiere saber en porcentaje
prop.table(table)*100#en porcentaje ( pero esto es del total)
## Prediccion
## Actual Low Medium High
## Low 28.750 2.100 2.450
## Medium 4.150 45.025 4.250
## High 0.875 0.950 11.450
round(prop.table(table,1)*100,2)#esto es por filas
## Prediccion
## Actual Low Medium High
## Low 86.34 6.31 7.36
## Medium 7.77 84.28 7.96
## High 6.59 7.16 86.25
round(prop.table(table,2)*100,2)#por columnas
## Prediccion
## Actual Low Medium High
## Low 85.12 4.37 13.50
## Medium 12.29 93.66 23.42
## High 2.59 1.98 63.09
barplot(table,leyend=T,
Xlab="Nota predecida por el modelo")
## Warning in plot.window(xlim, ylim, log = log, ...): "leyend" is not a graphical
## parameter
## Warning in plot.window(xlim, ylim, log = log, ...): "Xlab" is not a graphical
## parameter
## Warning in axis(if (horiz) 2 else 1, at = at.l, labels = names.arg, lty =
## axis.lty, : "leyend" is not a graphical parameter
## Warning in axis(if (horiz) 2 else 1, at = at.l, labels = names.arg, lty =
## axis.lty, : "Xlab" is not a graphical parameter
## Warning in title(main = main, sub = sub, xlab = xlab, ylab = ylab, ...):
## "leyend" is not a graphical parameter
## Warning in title(main = main, sub = sub, xlab = xlab, ylab = ylab, ...): "Xlab"
## is not a graphical parameter
## Warning in axis(if (horiz) 1 else 2, cex.axis = cex.axis, ...): "leyend" is not
## a graphical parameter
## Warning in axis(if (horiz) 1 else 2, cex.axis = cex.axis, ...): "Xlab" is not a
## graphical parameter
mosaicplot(table,main="Eficiencia del modelo")
summary(table)# el p-valor indica dependencia entre el valor actual y el predicho , es decir el modelo es eficiente
## Number of cases in table: 4000
## Number of factors: 2
## Test for independence of all factors:
## Chisq = 4449, df = 4, p-value = 0
Tranforma los datos de muchas dimenciones y busca los basicos
crimenes<-read.csv("../../r-course-master/data/tema3/USArrests.csv")
rownames(crimenes)<-crimenes$X #cambia como el identificador a una columna en particular
crimenes$X<- NULL# Eliminamos la fila que ya no necesitamos
apply(crimenes,
2,#por columnas
var)# la funcion varianza
## Murder Assault UrbanPop Rape
## 18.97047 6945.16571 209.51878 87.72916
Podemos observar que la que tiene mayor varianza es la de assault
Normaliza y estandarizar los datos
acp<-prcomp(crimenes,# analisis de componentes principales
center = T,#Resta la media de cada variable
scale. = T)#y divide por la desviación estandar
acp
## Standard deviations (1, .., p=4):
## [1] 1.5748783 0.9948694 0.5971291 0.4164494
##
## Rotation (n x k) = (4 x 4):
## PC1 PC2 PC3 PC4
## Murder -0.5358995 0.4181809 -0.3412327 0.64922780
## Assault -0.5831836 0.1879856 -0.2681484 -0.74340748
## UrbanPop -0.2781909 -0.8728062 -0.3780158 0.13387773
## Rape -0.5434321 -0.1673186 0.8177779 0.08902432
Graficar la lista Nota:usar la tecnica del codo la cual consiste en donde la tecnica del “codo del brazo”, por ejemplo, en este caso lo que se mostraria, serian las 2 variables leyendolas de izquierda a derecha
plot(acp,type="l")
summary(acp)
## Importance of components:
## PC1 PC2 PC3 PC4
## Standard deviation 1.5749 0.9949 0.59713 0.41645
## Proportion of Variance 0.6201 0.2474 0.08914 0.04336
## Cumulative Proportion 0.6201 0.8675 0.95664 1.00000
cuando se observa el summary de acp en la caracteristica cumulative proportion significa la cantidad de datos que se representan #representacion de acp
biplot(acp,scale=0,col=c("grey","red"))
si se observa hacia donde se mueve mas es rape en el espacio PC2 #Analizando la diferentes componentes principales
pc1<- apply(acp$rotation[,1]*crimenes,1,sum)
pc2<- apply(acp$rotation[,1]*crimenes,1,sum)#de la lista sumamos el vector de rotacion , recuerda que son matrices
crimenes$pc1<-pc1#sumamos una nueva fila a dataset
crimenes$pc2<-pc2
Es una tecnica de clasificacion: Sensibilidad vs Especificidad Entre mas sensibilidad es mejor y entre menos especificidad es mejor Cargamos los paquetes
#install.packages("ROCR")
library(ROCR)
curvaroc1<- read.csv("../../r-course-master/data/tema3/roc-example-1.csv")# variables numericas
curvaroc2<- read.csv("../../r-course-master/data/tema3/roc-example-2.csv")# variables categoricas
Para el DF de variables numericas tpr=true, positive rate, fpr=False Positive Rate
#nota : las clases del DF significa: 0 fallo y 1 exito
pred1<-prediction(curvaroc1$prob,curvaroc1$class)#Con respecto a este objeto
perf1<-performance(pred1,"tpr","fpr")
#Objeto de probabilidad con respecto ala predicción
plot(perf1)
lines(par()$usr[1:2],par()$usr[3:4])
Cuales son las variables que son los que se tienen que perfecionar
probcortes<-data.frame(cut=perf1@alpha.values[[1]],#valor de corte
pfr=perf1@x.values[[1]],#toma los valores de perfilamiento del eje x
tpr=perf1@y.values)#toma los valores de perfilamiento del eje x
colnames(probcortes)<-c("cut","pfr","tpr")# renombraremos las columnas
head(probcortes)#La cabeza de los datos
## cut pfr tpr
## 1 Inf 0 0.00000000
## 2 0.9917340 0 0.01851852
## 3 0.9768288 0 0.03703704
## 4 0.9763148 0 0.05555556
## 5 0.9601505 0 0.07407407
## 6 0.9351574 0 0.09259259
tail(probcortes)#Cola de los datos
## cut pfr tpr
## 96 0.10426897 0.8913043 1
## 97 0.07292866 0.9130435 1
## 98 0.07154785 0.9347826 1
## 99 0.04703280 0.9565217 1
## 100 0.04652589 0.9782609 1
## 101 0.00112760 1.0000000 1
Se debe encontar un equilibrio donde la empresa se sienta comoda con los verdederos positivos
probcortes[probcortes$tpr>.80,]#dame todos los valores verdaderos positivos por arriba del 80%
## cut pfr tpr
## 55 0.49815058 0.2173913 0.8148148
## 56 0.49616956 0.2173913 0.8333333
## 57 0.47840739 0.2391304 0.8333333
## 58 0.47754679 0.2608696 0.8333333
## 59 0.46323419 0.2826087 0.8333333
## 60 0.45227354 0.2826087 0.8518519
## 61 0.44950615 0.3043478 0.8518519
## 62 0.43443516 0.3260870 0.8518519
## 63 0.43274841 0.3478261 0.8518519
## 64 0.42845777 0.3695652 0.8518519
## 65 0.40701592 0.3695652 0.8703704
## 66 0.40272660 0.3695652 0.8888889
## 67 0.40248242 0.3913043 0.8888889
## 68 0.40140505 0.3913043 0.9074074
## 69 0.37646732 0.4130435 0.9074074
## 70 0.36254324 0.4347826 0.9074074
## 71 0.35547851 0.4565217 0.9074074
## 72 0.34872470 0.4782609 0.9074074
## 73 0.33814262 0.5000000 0.9074074
## 74 0.33528819 0.5217391 0.9074074
## 75 0.33041954 0.5434783 0.9074074
## 76 0.31878806 0.5652174 0.9074074
## 77 0.31438300 0.5869565 0.9074074
## 78 0.31164060 0.6086957 0.9074074
## 79 0.30761685 0.6086957 0.9259259
## 80 0.23584000 0.6304348 0.9259259
## 81 0.23310990 0.6304348 0.9444444
## 82 0.22243908 0.6521739 0.9444444
## 83 0.20977357 0.6739130 0.9444444
## 84 0.19511299 0.6739130 0.9629630
## 85 0.18730064 0.6739130 0.9814815
## 86 0.18210618 0.6956522 0.9814815
## 87 0.17060700 0.7173913 0.9814815
## 88 0.15536249 0.7391304 0.9814815
## 89 0.14907332 0.7391304 1.0000000
## 90 0.14288827 0.7608696 1.0000000
## 91 0.13868194 0.7826087 1.0000000
## 92 0.13090790 0.8043478 1.0000000
## 93 0.12741177 0.8260870 1.0000000
## 94 0.12676979 0.8478261 1.0000000
## 95 0.11107864 0.8695652 1.0000000
## 96 0.10426897 0.8913043 1.0000000
## 97 0.07292866 0.9130435 1.0000000
## 98 0.07154785 0.9347826 1.0000000
## 99 0.04703280 0.9565217 1.0000000
## 100 0.04652589 0.9782609 1.0000000
## 101 0.00112760 1.0000000 1.0000000
Para el DF de variables numericas
predict2<-prediction(curvaroc2$prob,curvaroc2$class,label.ordering = c("non-buyer","buyer"))
# nota importante :deben cohincidri exactamente los nombres con las etiquetas del DF
#Probabilidad mas baja de compra a la mas alta ( en ese orden )
perf2<-performance(predict2,"tpr","fpr")
plot(perf2)
lines(par()$usr[1:2],par()$usr[3:4])# pinta la linea recta
# Arboles de clasificacion
#install.packages(c("rpart","rpart.plot","caret"))
library(rpart)#construye los arboles
library(rpart.plot)#grafico de esos arboles
library(caret)
library(ggplot2)
library(lattice)
Cargamos los datos
banknote<-read.csv("../../r-course-master/data/tema3/banknote-authentication.csv")
#caret:: set.seed(2018)# semilla
training.ids<-caret::createDataPartition(banknote$class,p=0.7,list=F)#revisar Particion de data frame con variable numerica
mod<-rpart(class~.,# especifica las variables dependientes e independientes ( clase depende de todas las anteriores(.))
data = banknote[training.ids,],#De donde va a tomar los datos ( de solo los datos de entrenamiento)
method = "class",#Clasifique casos
control = rpart.control(minsplit = 20,#Solo debe tener mas elementos en cada clase
cp=0.01))#ajustar la complejidad
mod # Asi se ve el modelo de forma (analitica )
## n= 961
##
## node), split, n, loss, yval, (yprob)
## * denotes terminal node
##
## 1) root 961 427 0 (0.555671176 0.444328824)
## 2) variance>=0.320165 498 57 0 (0.885542169 0.114457831)
## 4) variance>=1.5922 353 6 0 (0.983002833 0.016997167) *
## 5) variance< 1.5922 145 51 0 (0.648275862 0.351724138)
## 10) curtosis>=-2.2722 107 16 0 (0.850467290 0.149532710)
## 20) entropy< 0.0353305 81 1 0 (0.987654321 0.012345679) *
## 21) entropy>=0.0353305 26 11 1 (0.423076923 0.576923077)
## 42) curtosis>=1.99915 9 0 0 (1.000000000 0.000000000) *
## 43) curtosis< 1.99915 17 2 1 (0.117647059 0.882352941) *
## 11) curtosis< -2.2722 38 3 1 (0.078947368 0.921052632) *
## 3) variance< 0.320165 463 93 1 (0.200863931 0.799136069)
## 6) skew>=5.86535 106 31 0 (0.707547170 0.292452830)
## 12) variance>=-3.4449 74 0 0 (1.000000000 0.000000000) *
## 13) variance< -3.4449 32 1 1 (0.031250000 0.968750000) *
## 7) skew< 5.86535 357 18 1 (0.050420168 0.949579832)
## 14) curtosis>=6.21565 115 16 1 (0.139130435 0.860869565)
## 28) skew>=-4.6745 16 1 0 (0.937500000 0.062500000) *
## 29) skew< -4.6745 99 1 1 (0.010101010 0.989898990) *
## 15) curtosis< 6.21565 242 2 1 (0.008264463 0.991735537) *
prp(mod,type=2,#cada nodo quede etiquetado y sea exactamente a la mitad( investigar/ variar)
extra=104,#mostrar la probabilidad de cada uno de los casos por en base acada rama
nn=T,# numero del nodo
fallen.leaves=T,#Nodos finales los muestra en la parte final
faclen=4,# abreviar los nombres de las clases
varlen=8,# abreviar la longitud de los nombres de las variables
shadow.col="blue")#sombras
# Podar arboles de Clasificacion Seleccionar solo algunas ramas muestra las componentes principales
mod$cptable
## CP nsplit rel error xerror xstd
## 1 0.64871194 0 1.00000000 1.00000000 0.03607406
## 2 0.10304450 1 0.35128806 0.38875878 0.02744404
## 3 0.07025761 2 0.24824356 0.31850117 0.02530503
## 4 0.03747073 3 0.17798595 0.20140515 0.02072353
## 5 0.01639344 5 0.10304450 0.17096019 0.01923439
## 6 0.01522248 7 0.07025761 0.13817330 0.01742769
## 7 0.01000000 9 0.03981265 0.08665105 0.01396842
se debe seleccionar minimo xerror y sumada alguna la fila de xstd( desviacion estandar) debe dar un valor minimo de xerror para este ejemplo tomamos la numero 6( desviacion estandar wey) # Creamos el modelo de clasificacion recortado
mod.pruned<-prune(mod,mod$cptable[6,"CP"])
prp(mod.pruned,type=2,#cada nodo quede etiquetado y sea exactamente a la mitad( investigar/ variar)
extra=104,#mostrar la probabilidad de cada uno de los casos por en base acada rama
nn=T,# numero del nodo
fallen.leaves=T,#Nodos finales los muestra en la parte final
faclen=4,# abreviar los nombres de las clases
varlen=8,# abreviar la longitud de los nombres de las variables
shadow.col="blue")#sombras
Con los datos totales coteja que tan bien se apega a los valores de el DF original
pred.pruned<-predict(mod,banknote[-training.ids,],type = "class")# generea la prediccion
table(banknote[-training.ids,]$class,pred.pruned,dnn=c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 228 0
## 1 4 179
Se ve excelente
#comparando con el arbol “podado” Se han movido los datos y subieron los errores
pred.pruned.recort<-predict(mod.pruned,banknote[-training.ids,],type = "class")# generea la prediccion
table(banknote[-training.ids,]$class,pred.pruned.recort,dnn=c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 228 0
## 1 6 177
pred.pruned.predict<-predict(mod.pruned,banknote[-training.ids,],type = "prob")# genera modelo probabilistico
pred.prob<-ROCR::prediction(pred.pruned.predict[,2],banknote[-training.ids,"class"])
perf.pruned.pred<-ROCR::performance(pred.prob,"tpr","fpr")
plot(perf.pruned.pred)
Esto si es un pinche buen modelo
#install.packages("randomForest")
library(randomForest)
## randomForest 4.7-1
## Type rfNews() to see new features/changes/bug fixes.
##
## Attaching package: 'randomForest'
## The following object is masked from 'package:dplyr':
##
## combine
## The following object is masked from 'package:ggplot2':
##
## margin
library(ROCR)
library(caret)
library(ggplot2)
Cargamos los datos
random.forest<-read.csv("../../r-course-master/data/tema3/banknote-authentication.csv")
Cambiemos a factores la columna de class
random.forest$class<-factor(random.forest$class)
Hagamos una semilla y particion de datos
set.seed(2018)
trainining.random.fores<-createDataPartition(random.forest$class,p=.70,list=F)
Apliquemos la tecnica de Random Forest
mod<-randomForest(x=random.forest[trainining.random.fores,1:4],# todas las variables independientes ( todo el Df)
y=random.forest[trainining.random.fores,5],# esta es la variable que queremos predecir
ntree = 500,#numero de arboles
keep.forest =TRUE)#se queda con todos los arboles intermedios ( para predicciones futuras)
Predecimos los valores del Df con los valores predichos por el modelo
pred.random.forest<-predict(mod,random.forest[-trainining.random.fores,])
table(random.forest[-trainining.random.fores,"class"],pred.random.forest,dnn=c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 225 3
## 1 0 183
prob.random.forest<-predict(mod,random.forest[-trainining.random.fores,],type = "prob")# genero probabilidades
head(prob.random.forest)
## 0 1
## 4 1.000 0.000
## 6 1.000 0.000
## 7 1.000 0.000
## 9 1.000 0.000
## 10 0.958 0.042
## 12 1.000 0.000
library(ROCR)
pred.random.forest.roc<-ROCR::prediction(prob.random.forest[,2],random.forest[-trainining.random.fores,"class"])#Predecir
perf.random.forest<-performance(pred.random.forest.roc,"tpr","fpr")# desempeno de las prediciiones
plot(perf.random.forest)
Este modelo es la leche # maquinas de soporte vectorial ( Suport Verctor Machine ) Hiper plano de separacion se trata de encontrar la linea que separa ambos conjuntos de datos
#install.packages("e1071")
library(e1071)
##
## Attaching package: 'e1071'
## The following objects are masked from 'package:moments':
##
## kurtosis, moment, skewness
## The following object is masked from 'package:raster':
##
## interpolate
## The following object is masked from 'package:modeest':
##
## skewness
## The following object is masked from 'package:Hmisc':
##
## impute
library(caret)
banknote.svm<-read.csv("../../r-course-master/data/tema3/banknote-authentication.csv")
banknote.svm$class =factor(banknote.svm$class)
Plantamos la semilla
set.seed(2018)
t.ids<-createDataPartition(banknote.svm$class,p=.70,list = F)
#La fuccion svm toma una media y desviacion estandar ( unificada )
# el parametro puede darle diferentes pesos a las clases en las cuales se quieres orrer la funcion svm ( class.weights =c("0"=0.03),"1"=0.7))
# cost =1 (por default)es el parametro donde se le dice al modelo qe margen de error podemos darle
mod.svm<-svm(class~.,#tipo de modelo ( calsificacion o de regresion )cuando es clasificacion solo separa
data=banknote.svm[t.ids,],
cost=1)
Como calculo el margen de error mas eficiente Investigar un poco mas, ya que aqui nos sale un error
tuned<-tune.svm(class~.,data=banknote.svm[t.ids,],gama=10^(-6:-1),10^(1:2))
summary(tuned)
##
## Error estimation of 'svm' using 10-fold cross validation: 0
Grafiquemos los datos del svm
table(banknote.svm[t.ids,"class"],fitted(mod.svm)#Trae los valores dentro de si , vienen intrinsecos
,dnn=c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 534 0
## 1 0 427
NO existe error alguno
Se fue catalogado de manera correcta
pred.smv<-predict(mod.svm,banknote.svm[-t.ids,])# predice
table(banknote.svm[-t.ids,"class"],pred.smv,dnn=c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 228 0
## 1 0 183
Grafiquemoslo para ver como se observa como tenemos 4 variables seleccionamos 2 , pero esto es para los valores de entrenamiento
plot(mod.svm,data=banknote.svm[t.ids,],skew~variance)
# Grafica del SVM sin los valores de entrenamiento
plot(mod.svm,data=banknote.svm[-t.ids,],skew~variance)
pred.bayes<-predict(mod.bayes,ep[-t.id.bayes,])# prediccion
# tabla de confucion
tab.bayes<-table(ep[-t.id.bayes,]$Purchase,pred.bayes,dnn=c("Actual", "Predicho"))
confusionMatrix(tab.bayes)
## Confusion Matrix and Statistics
##
## Predicho
## Actual No Yes
## No 1 1
## Yes 2 0
##
## Accuracy : 0.25
## 95% CI : (0.0063, 0.8059)
## No Information Rate : 0.75
## P-Value [Acc > NIR] : 0.9961
##
## Kappa : -0.5
##
## Mcnemar's Test P-Value : 1.0000
##
## Sensitivity : 0.3333
## Specificity : 0.0000
## Pos Pred Value : 0.5000
## Neg Pred Value : 0.0000
## Prevalence : 0.7500
## Detection Rate : 0.2500
## Detection Prevalence : 0.5000
## Balanced Accuracy : 0.1667
##
## 'Positive' Class : No
##
Es una metodologia no parametrica de clasificacion y regresion
#install.packages("class")# regularmente instalado pero se puede actualizar
library(class)
library(caret)
cargamos el archivo
vacaciones<-read.csv("../../r-course-master/data/tema3/vacation-trip-classification.csv")
anyNA(vacaciones)# existen NA
## [1] FALSE
Normalizaremos el DF con 2 nuevas variables ya que estan super diferentes los valores de entrada
vacaciones$income.z<-scale(vacaciones$Income)#crea una columna normalizada
vacaciones$Family_size.z<-scale(vacaciones$Family_size)#crea una columna normalizada
Se hara de la siguiente forma 50% del Df para entrenar 25% para validar 25% para testear
set.seed(2018)
#50% de los datos
t.ids.kneigh<-createDataPartition(vacaciones$Result,p=0.5, list = F)#Data de entrenamiento
train.kneigh<-vacaciones[t.ids.kneigh,]# Data de entrenamiento
temp.kneigh<-vacaciones[-t.ids.kneigh,]# es el restante es decir todos los que no son el conjunto de entrenamiento
# Aqui se encuentra la partición del 25% que esta ( 50% del 50%)
validation.id.kneigh<-createDataPartition(temp.kneigh$Result, p=0.5, list=F)#Datos de validacion
validation.kneigh<-temp.kneigh[validation.id.kneigh,]
test.kneigh<- temp.kneigh[-t.ids.kneigh,]
Empecemos a predecir , para este momento es iterativo , es decir manualmente se varia k=1,2,3,4..n
pred1.kneigh<-knn(train.kneigh[,4:5],validation.kneigh[,4:5],train.kneigh[,3],k=1)
errormatrix1<-table(validation.kneigh$Result,pred1.kneigh,dnn=c("Actual","Predict"))
errormatrix1
## Predict
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 5 0
Generareremos una predidcion 2 y sale diferente y observamos que con K=5 nos manda un error de tan solo 3 datos que no predice
pred2.kneigh<-knn(train.kneigh[,4:5],test.kneigh[,4:5],train.kneigh[,3],k=5)
errormatrix2<- table(test.kneigh$Result,pred2.kneigh,dnn =c("Actual","Predict"))
errormatrix2
## Predict
## Actual Buyer Non-buyer
## Buyer 4 2
## Non-buyer 1 4
knn.automate<-function(tr.prediction, val.prediction,tr.target,val.target,start.k,end.k){
for(k in start.k:end.k){
pred.k<-knn(tr.prediction,val.prediction,tr.target,k)
tab<- table(val.target,pred.k,dnn = c("Actual","Predicho"))
cat(paste("Matriz de confusion para k=",k,"\n"))
cat("===============================\n")
print(tab)
cat("-------------------------------\n")
}
}
Como chingaos se utiliza esta funcion recuerda que el nombre de las variables puede variar dependeindo de como tu llamaste tus variables
knn.automate(train.kneigh[,4:5],# el conjunto de entrenamiento en este caso normalizado
validation.kneigh[,4:5],#las columnas de validacion
train.kneigh[,3],# le decimos que de la columna 3 que es por la categoria que queremos clasificar
validation.kneigh[,3],#tambien le decimos que lo queremos por esta variable de este conjunto de datos
1,8#Aqui le decimos de que numero a que numero va a iterar
)
## Matriz de confusion para k= 1
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 4 1
## -------------------------------
## Matriz de confusion para k= 2
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 4 1
## -------------------------------
## Matriz de confusion para k= 3
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 5 0
## -------------------------------
## Matriz de confusion para k= 4
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 4 1
## -------------------------------
## Matriz de confusion para k= 5
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 1 4
## -------------------------------
## Matriz de confusion para k= 6
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 1 4
## -------------------------------
## Matriz de confusion para k= 7
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 1 4
## -------------------------------
## Matriz de confusion para k= 8
## ===============================
## Predicho
## Actual Buyer Non-buyer
## Buyer 3 2
## Non-buyer 0 5
## -------------------------------
ya existe un algoritmo que no es a “mano” se puede usar la funcion de carte::trainControl
training.control<-trainControl(method = "repeatedcv",#Valodacion cruzada repetida
number = 10,#numero de remuestreos
repeats = 3)#repeticiones de la validacion cruzada
cater.knn.fit<-train(Result~Family_size.z+Income,data = train.kneigh,
method="knn",#metodo por el cual se va a hacer
trControl=training.control,#el de arriba
preProcess=c("center","scale"),#Centrar y restar la media
tuneLength=10)#longitud del ajuste
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.44871854585396, -0.84508581841481, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.44871854585396, -0.84508581841481, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.35320178424367, -0.789367707475475, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.35320178424367, -0.789367707475475, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.79845760605179, -0.83005735663929, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.79845760605179, -0.83005735663929, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.48638756616766, -0.772921534407183, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.48638756616766, -0.772921534407183, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(-0.772921534407183,
## -0.772921534407183, : k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(-0.772921534407183,
## -0.772921534407183, : k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.23421938529559, -0.987375508236473, :
## k = 19 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.23421938529559, -0.987375508236473, :
## k = 21 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.23421938529559, -0.987375508236473, :
## k = 23 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.44871854585396, -0.84508581841481, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.44871854585396, -0.84508581841481, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.35320178424367, -0.789367707475475, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.35320178424367, -0.789367707475475, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(-0.84508581841481, -0.84508581841481, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(-0.84508581841481, -0.84508581841481, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.75609839671568, -0.913171166292152, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.75609839671568, -0.913171166292152, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.46926177338491, -0.734630886692453, :
## k = 19 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.46926177338491, -0.734630886692453, :
## k = 21 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.46926177338491, -0.734630886692453, :
## k = 23 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.26324401467532, -0.902317153339516, :
## k = 19 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.26324401467532, -0.902317153339516, :
## k = 21 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.26324401467532, -0.902317153339516, :
## k = 23 exceeds number 18 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(2.05211309734947, -0.836046076697931, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(2.05211309734947, -0.836046076697931, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.31914046975573, -0.860309002014607, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.28892483532644, -0.937399880237408, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(-0.772921534407183,
## -0.772921534407183, : k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(-0.772921534407183,
## -0.772921534407183, : k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.35320178424367, -0.789367707475475, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.35320178424367, -0.789367707475475, :
## k = 23 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.44871854585396, -0.84508581841481, :
## k = 21 exceeds number 19 of patterns
## Warning in knn3Train(train = structure(c(1.44871854585396, -0.84508581841481, :
## k = 23 exceeds number 19 of patterns
cater.knn.fit
## k-Nearest Neighbors
##
## 21 samples
## 2 predictor
## 2 classes: 'Buyer', 'Non-buyer'
##
## Pre-processing: centered (2), scaled (2)
## Resampling: Cross-Validated (10 fold, repeated 3 times)
## Summary of sample sizes: 19, 19, 19, 19, 19, 19, ...
## Resampling results across tuning parameters:
##
## k Accuracy Kappa
## 5 0.7944444 0.58000000
## 7 0.7722222 0.53000000
## 9 0.6833333 0.35000000
## 11 0.7333333 0.45000000
## 13 0.6500000 0.28333333
## 15 0.7444444 0.48333333
## 17 0.7111111 0.43000000
## 19 0.5277778 0.04666667
## 21 0.5055556 0.01000000
## 23 0.4722222 -0.04333333
##
## Accuracy was used to select the optimal model using the largest value.
## The final value used for the model was k = 5.
Como lo menciona la salida , este ejercicio el algoritmo encuentra que el mas optimo es de K=5
ahora que ya conocemos el valor mas optimo de K , correremos el valor mas eficiente
pred5<- knn(train.kneigh[,4:5],validation.kneigh[,4:5],train.kneigh[,3],k=5,prob = T)
pred5
## [1] Buyer Buyer Buyer Non-buyer Non-buyer Non-buyer Non-buyer
## [8] Buyer Non-buyer Non-buyer
## attr(,"prob")
## [1] 1.0000000 0.6000000 0.8333333 0.6000000 0.6000000 0.6666667 0.6000000
## [8] 0.8333333 0.6000000 0.6000000
## Levels: Buyer Non-buyer
Las cajas negras
#install.packages("nnet")
library(nnet)
library(caret)
cargamos los datos
bn<-read.csv("../../r-course-master/data/tema3/banknote-authentication.csv")
bn$class<-factor(bn$class)# solo para corroborar que lo toma como factor
Para seleccionar el rango que se va a utilizar dentro de la red neuronal sigue a grosomodo la fomrmula rango*maximo (|variables|)~1
apply(bn,2,max)
## variance skew curtosis entropy class
## " 6.8248000" " 12.95160000" "17.92740000" " 2.4495000" "1"
el maximo de las varibles que vemos es 17, por lo tanto se debe buscar un numero que se acerque a uno
podemos hacer una ecuacion rango= 1/ maximo de los numeros que nos mostro la funcion apply
Creamos particion
t.id.redn<-createDataPartition(bn$class,p=0.70,list=F)
mod.redn<-nnet::nnet(class~.,data=bn[t.id.redn,],
size=3,# especifica el numero de capas , puede ser el numero de columnas
maxit=10000,#Numero de iteraciones maximas
decay=.001,#Se utiliza para el overfiting ( no se especializa en los datos que entrenamos )se debe dejar rango para las validacioens
rang=0.05,#ver nota superior
na.action=na.omit)#Para que omita los NA
## # weights: 19
## initial value 665.779419
## iter 10 value 445.463295
## iter 20 value 61.023803
## iter 30 value 32.802513
## iter 40 value 17.213270
## iter 50 value 2.682251
## iter 60 value 2.006200
## iter 70 value 1.788214
## iter 80 value 1.581753
## iter 90 value 1.522893
## iter 100 value 1.477252
## iter 110 value 1.454335
## iter 120 value 1.354654
## iter 130 value 1.258758
## iter 140 value 1.191089
## iter 150 value 1.012912
## iter 160 value 0.922466
## iter 170 value 0.855131
## iter 180 value 0.825344
## iter 190 value 0.752956
## iter 200 value 0.662098
## iter 210 value 0.632855
## iter 220 value 0.626612
## iter 230 value 0.625244
## iter 240 value 0.624736
## iter 250 value 0.624530
## iter 260 value 0.624512
## iter 270 value 0.624510
## iter 280 value 0.624509
## iter 290 value 0.624509
## final value 0.624509
## converged
Hagamos la prediccion
pred.redn<-predict(mod.redn,newdata = bn[-t.id.redn,],type = "class")
table(bn[-t.id.redn,]$class,pred.redn,dnn = c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 228 0
## 1 0 183
#curva Roc de una red neuronal
library(ROCR)
pred2.redn<-predict(mod.redn,newdata = bn[-t.id.redn,],type = "raw")
perf.redn<-performance(prediction(pred2.redn,bn[-t.id.redn,"class"]),"tpr","fpr")
plot(perf.redn)
Esta madre es perfecta
Se trata de ver si las medias o varianzas son parecidas entre ellas Se parece mucho a la prueba de ANoVA la varible dependiente :categorica la varible independiente: continua
#install.packages("MASS")
library(MASS)
##
## Attaching package: 'MASS'
## The following object is masked _by_ '.GlobalEnv':
##
## housing
## The following objects are masked from 'package:raster':
##
## area, select
## The following object is masked from 'package:dplyr':
##
## select
library(caret)
cargamos datos
#seet.seed(2018)
bn.disc.lin<- read.csv("../../r-course-master/data/tema3/banknote-authentication.csv")
bn.disc.lin$class<-factor(bn.disc.lin$class)
t.id.disc.lin<-createDataPartition(bn.disc.lin$class,p=0.7,list=F)
modelo lineal de dicriminacion
mod.disc.lin<-lda(bn.disc.lin[t.id.disc.lin,1:4],#parametro de entrada
bn.disc.lin[t.id.disc.lin,5] )#parametro de salida , con la indicación de la columna
# otra forma de escribirlo
# mod.disc.lin.2<-lda(class~.,data = bn.disc.lin[t.id.disc.lin,])
agregamos una columana al DF y creamos la tabla para los datos de entrenamiento
bn.disc.lin[t.id.disc.lin,"Pred"]<-predict(mod.disc.lin,bn.disc.lin[t.id.disc.lin,1:4])$class# valor predicho y se mete desde el una columna nueva
table(bn.disc.lin[t.id.disc.lin,"class"],
bn.disc.lin[t.id.disc.lin,"Pred"],dnn = c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 515 19
## 1 0 427
Excluimos los valores de etrenamiento y predecimos la matriz de confusion
bn.disc.lin[-t.id.disc.lin,"Pred"]<-predict(mod.disc.lin,bn.disc.lin[-t.id.disc.lin,1:4])$class
table(bn.disc.lin[-t.id.disc.lin,"class"],
bn.disc.lin[-t.id.disc.lin,"Pred"],dnn = c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 215 13
## 1 0 183
Resultado de una variable categorica en fucnión de variables predictoras calculo integral (supongo resuelve las integrales a travez de metodos numericos )
library(caret)
library(lattice)
#cargamos datos
boston_Reg_log<-read.csv("../../r-course-master/data/tema3/boston-housing-logistic.csv")
boston_Reg_log$CLASS<-factor(boston_Reg_log$CLASS,levels=c(0,1))
set.seed(2018)
# creamos la particion aleatoria
t_id_reg_log<-createDataPartition(boston_Reg_log$CLASS,p=0.7,list = F)
#creamos el modelo
mod_reg_log<- glm(CLASS~.,data=boston_Reg_log[t_id_reg_log,],family=binomial)#si es vaerdadero o falso
summary(mod_reg_log)
##
## Call:
## glm(formula = CLASS ~ ., family = binomial, data = boston_Reg_log[t_id_reg_log,
## ])
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -2.17116 -0.47682 0.09069 0.44375 2.83196
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 23.873324 3.936114 6.065 1.32e-09 ***
## NOX -21.564510 4.658177 -4.629 3.67e-06 ***
## DIS -0.368276 0.143892 -2.559 0.0105 *
## RAD 0.174650 0.071923 2.428 0.0152 *
## TAX -0.005127 0.003755 -1.365 0.1722
## PTRATIO -0.717774 0.133575 -5.374 7.72e-08 ***
## B 0.009092 0.003918 2.320 0.0203 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 353.03 on 254 degrees of freedom
## Residual deviance: 167.07 on 248 degrees of freedom
## AIC: 181.07
##
## Number of Fisher Scoring iterations: 6
Investigar fisher scoring
Creamos una columana de datos de las probabilidades
boston_Reg_log[-t_id_reg_log,"Prob_success"]<-predict(mod_reg_log,newdata = boston_Reg_log[-t_id_reg_log,],
type="response")# mide las probabilidades de los objetos clasificados
# creamos otra columna donde si esta por encima de 50% de prob, entonces es un exito , de lo contrario es un fracaso
boston_Reg_log[-t_id_reg_log,"pred_50"]<-ifelse(boston_Reg_log[-t_id_reg_log,"Prob_success"]>=0.5,1,0)
Creamos la matriz de confusion para la regresion logistica
table(boston_Reg_log[-t_id_reg_log,"CLASS"],boston_Reg_log[-t_id_reg_log,"pred_50"],dnn=c("Actual","Predicho"))
## Predicho
## Actual 0 1
## 0 45 6
## 1 6 51
Se deja pendiente por validacion de perfil de desarrollados por parte de Twiter
#La raiz del error cuadratico medio Se trata de restar Para este ejemplo se toma el precio=price y lo predicho por alguno de los algotirmos antes vistos
dat_error_medio<-read.csv("../../r-course-master/data/tema4/rmse.csv")
# Paso 1 se resta la columna del precio menos la columana predicha y este resultado al cuadrado
sqrt(mean((dat_error_medio$price-dat_error_medio$pred)^2))
## [1] 2.934995
#graficamos los datos de prediccion vs precio real
plot(dat_error_medio$price,dat_error_medio$pred,xlab = "Actual",ylab = "Predicho")
abline(0,1)
Hagamos una funcion para error cuadratico medio
rmse.fuction<-function(actual,predicted){
return(sqrt(mean((actual-predicted)^2)))
}
Como se usa esta vaina
rmse.fuction(dat_error_medio$price,dat_error_medio$pred)
## [1] 2.934995
#install.packages("FNN")
library(FNN)
##
## Attaching package: 'FNN'
## The following objects are masked from 'package:class':
##
## knn, knn.cv
library(dummies)
library(scales)
library(caret)
edu<-read.csv("../../r-course-master/data/tema4/education.csv")
Se va a hacer dummy la variable región
dms<-dummy(edu$region,sep="_")
## Warning in model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE):
## non-list contrasts argument ignored
Le agregamos esta varibel al DF edu
edu<-cbind(edu,dms)
Cambiemos a factores los datos que son necesarios estandarizar el resto de
edu$urban.s<-rescale(edu$urban)
edu$income.z<-rescale(edu$income)
edu$under18.z<-rescale(edu$under18)
Creamos la perticion de los datos
set.seed(2018)
library(caret)
t_id_kneigh.regresion<-caret::createDataPartition(edu$expense,p=0.6, list=F)
conjunto de entrenamiento
tr_knn_regresion<-edu[t_id_kneigh.regresion,]# meten todos lo que fueron seleccionados
temp<-edu[-t_id_kneigh.regresion,] #Aqui entra el resto de los datos
Datos de validacion
v_ids_kneigh.regresion<-createDataPartition(temp$expense,p=0.5,list=F)#Se Creo otra partición de los datos de temp
val.kneigh.regresion<-temp[v_ids_kneigh.regresion,]
test_kneight_regresion<-temp[-v_ids_kneigh.regresion,]
Determinemos la K que es mas eficiente
training_control<-trainControl(method = "repeatedcv",#Valodacion cruzada repetida
number = 10,#numero de remuestreos
repeats = 3)#repeticiones de la validacion cruzada
cater.knn.fit<-train(expense~.,data =edu,
method="knn",#metodo por el cual se va a hacer
trControl=training_control,#el de arriba
tuneLength=10)#longitud del ajuste
cater.knn.fit
## k-Nearest Neighbors
##
## 50 samples
## 12 predictors
##
## No pre-processing
## Resampling: Cross-Validated (10 fold, repeated 3 times)
## Summary of sample sizes: 45, 46, 43, 45, 44, 46, ...
## Resampling results across tuning parameters:
##
## k RMSE Rsquared MAE
## 5 47.66062 0.4239637 37.55211
## 7 46.00489 0.4819194 36.71542
## 9 46.63363 0.4587353 36.98325
## 11 45.77538 0.4655686 36.77972
## 13 46.30492 0.4597074 36.87004
## 15 45.32533 0.4888495 36.30289
## 17 45.44537 0.4919484 36.72798
## 19 46.36769 0.4783885 37.50904
## 21 46.42500 0.4896844 37.61464
## 23 46.60530 0.4987181 37.80011
##
## RMSE was used to select the optimal model using the smallest value.
## The final value used for the model was k = 15.
Regresion 1
reg1<-knn.reg(tr_knn_regresion[,7:12],# conjunto de entrenamiento
val.kneigh.regresion[,7:12],#Conjunto de validacion
tr_knn_regresion$expense, # variable ( columna) que se desea predecir
k=25, # iterar para el valor mas cercano
algorithm = "brute")#este es por default
regrecion predicha
reg.test<-knn.reg(tr_knn_regresion[,7:12],test_kneight_regresion[,7:12],tr_knn_regresion$expense,k=25,algorithm = "brute")
Cargamos la funcion que en la sesión pasada generamos
rmse_reg_kneight<-rmse.fuction(reg1$pred,edu$expense)
rmse_reg_kneight
## [1] 61.36413
creamos la regresion de donde se van a tomar los valores sin test
reg_knn_sin.test<-knn.reg(tr_knn_regresion[,7:12],#valores a de entrenamiento
test = NULL,# sin valores de prueba
y=tr_knn_regresion$expense,#respuesta de cada observacion de entrenamiento
k=3,# numero de vecinos
algorithm = "brute")
Error medio
rmse_reg_knn<- sqrt(mean((reg_knn_sin.test$residuals)^2))
rmse_reg_knn
## [1] 40.9394
funcion que calcula la regresion lineal
regresion_knn<-function(tr_predictor,val_predictors,
tr_target,val_target,k) {
library(FNN)
result<-knn.reg(tr_predictor,val_predictors,tr_target,k,algorithm = "brute")
rmserror<-sqrt(mean((tr_target-result$pred)^2))
cat(paste("RMSE para k=",toString(k),":",rmserror,"\n",sep=" "))
rmserror
}
regresion_knn(tr_knn_regresion[,7:12],val.kneigh.regresion[,7:12]
,tr_knn_regresion$expense,val.kneigh.regresion$expense,25)
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 25 : 48.4137955545731
## [1] 48.4138
Funcion que grafica los valores de error medio con base a lo calculado anteriormente RMSE
error_knn_cuadratico_regresion <-function(tr_predictors, val_predictors,
tr_target, val_target, start_k, end_k){
rms_errors <- vector()
for(k in start_k:end_k){
rms_error <- regresion_knn(tr_predictors, val_predictors,
tr_target, val_target, k)
rms_errors <- c(rms_errors, rms_error)
}
plot(rms_errors, type = 'o', xlab = "k", ylab = "RMSE")
}
como se usa esta pinche funcion de RMSE
error_knn_cuadratico_regresion(tr_knn_regresion[,7:12],val.kneigh.regresion[,7:12],tr_knn_regresion$expense,val.kneigh.regresion$expense,1,25)
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 1 : 69.0455013016779
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 2 : 64.9357855885335
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 3 : 66.3299569911246
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 4 : 64.8152572942899
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 5 : 63.6186096987352
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 6 : 62.3610608450676
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 7 : 60.011111853709
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 8 : 59.4158371077842
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 9 : 57.8842635174964
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 10 : 57.3507029163549
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 11 : 57.1439027354162
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 12 : 56.6673138749805
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 13 : 55.613860163701
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 14 : 54.0501866064668
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 15 : 53.570560945355
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 16 : 52.7946669226045
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 17 : 52.3436748243534
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 18 : 51.0961651607614
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 19 : 51.0052869862921
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 20 : 51.0679594694658
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 21 : 49.8425056400732
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 22 : 49.1411825647657
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 23 : 48.5951736558941
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 24 : 48.0292263769835
## Warning in tr_target - result$pred: longitud de objeto mayor no es múltiplo de
## la longitud de uno menor
## RMSE para k= 25 : 48.4137955545731
#Regresion lineal Es
library(caret)
auto <- read.csv("../../r-course-master/data/tema4/auto-mpg.csv")
auto$cylinders <- factor(auto$cylinders,
levels = c(3,4,5,6,8),
labels = c("3c", "4c", "5c", "6c", "8c"))
Realizamos la particion
set.seed(2018)#muestreo
t_id_reg_lin<- createDataPartition(auto$mpg, p = 0.7, list = F)# creamos particion
names(auto)#imprimimos el nombre de las columnas
## [1] "No" "mpg" "cylinders" "displacement" "horsepower"
## [6] "weight" "acceleration" "model_year" "car_name"
Creamos el modelo Ya hace las varibles dummy de por default la funcion lm
mod <- lm(mpg ~ .#mpg en funcion de todos
, data = auto[t_id_reg_lin,# con los datos de entrenamieto
-c(1,8,9)])#quitamos las columnas que no necesitamos(solo la 1,8 y 9)
mod
##
## Call:
## lm(formula = mpg ~ ., data = auto[t_id_reg_lin, -c(1, 8, 9)])
##
## Coefficients:
## (Intercept) cylinders4c cylinders5c cylinders6c cylinders8c
## 37.284202 6.231475 8.248195 2.131026 4.568171
## displacement horsepower weight acceleration
## 0.002245 -0.057543 -0.004665 0.050745
Este es el modelo que predice el Millas Por galeon #mpg = 37.284202 + # + 6.2314754c + 8.2481955c + 2.1310266c + 4.5681718c + # + 0.002245 * displacement -0.057543 * horsepower + # - 0.004665 * weight + 0.050745 * acceleration
Residual es el error que estoy cometiendo
Recuerda que los * que pinta summary (son mas importantes para el modelo lineal) residual standar error =Rmse Si el p-value es chiquito es mejor la estimacion
summary(mod)
##
## Call:
## lm(formula = mpg ~ ., data = auto[t_id_reg_lin, -c(1, 8, 9)])
##
## Residuals:
## Min 1Q Median 3Q Max
## -10.0606 -2.4686 -0.4435 1.9821 16.0907
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 37.2842024 3.6497412 10.216 < 2e-16 ***
## cylinders4c 6.2314753 2.4926855 2.500 0.01301 *
## cylinders5c 8.2481946 3.8091396 2.165 0.03123 *
## cylinders6c 2.1310256 2.7759570 0.768 0.44335
## cylinders8c 4.5681710 3.2054454 1.425 0.15527
## displacement 0.0022449 0.0108924 0.206 0.83687
## horsepower -0.0575428 0.0202773 -2.838 0.00489 **
## weight -0.0046652 0.0009999 -4.665 4.84e-06 ***
## acceleration 0.0507454 0.1443575 0.352 0.72547
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.092 on 271 degrees of freedom
## Multiple R-squared: 0.7304, Adjusted R-squared: 0.7224
## F-statistic: 91.75 on 8 and 271 DF, p-value: < 2.2e-16
Haremos una caja de gato con bigotes de los residuos (de los errores)
boxplot(mod$residuals)
RMSE, aunque le summary lo arroja lo podemos comparar
sqrt(mean((mod$fitted.values - auto[t_id_reg_lin,]$mpg)^2))
## [1] 4.026021
Predecimos los valores de consumo de Millas por Galeon
pred <- predict(mod, auto[-t_id_reg_lin, -c(1,8,9)])
sqrt(mean((pred - auto[-t_id_reg_lin,]$mpg)^2))
## [1] 3.894627
Interpretemos los parametros
par(mfrow=c(2,2))#recuerda que esto es para graficar 2 por 2
plot(mod)
los numeros de los plots son el numero de dato de la izquierda del DF original
1._se contesta la pregunta ,Existe una relacion que es lineal? 2._El de la parte superior derecha ( sirve para ver si los errores siguen una distribucion normal) 3._ El de la parte inferior izquierda(Representa los residuos estandarizados sobre los valores ajustados)spred location ( si todos los valores tienen la misma varianza “homosedasticos”)si estan ordenados , es bueno
4._la de la derecha abajo Posibles sujetos influyentes (los outliners pueden influenciar los valores )(distancia de cook’s distance) arriba derecha y abajo derecha son los puntos criticos
Si se quiere indicar al modelo que utilice un dato especifico , se le pude que sea otro el de referencia
Nota importante : el que tengas mas valores categoricos se recomienda ponerlo como principal
auto <- within(auto,
cylinders <- relevel(cylinders, ref="4c"))
# se vuelve a correr el modelo
mod <- lm(mpg ~. , data = auto[t_id_reg_lin, -c(1,8,9)])
summary(mod)
##
## Call:
## lm(formula = mpg ~ ., data = auto[t_id_reg_lin, -c(1, 8, 9)])
##
## Residuals:
## Min 1Q Median 3Q Max
## -10.0606 -2.4686 -0.4435 1.9821 16.0907
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 43.5156778 2.8644210 15.192 < 2e-16 ***
## cylinders3c -6.2314753 2.4926855 -2.500 0.013014 *
## cylinders5c 2.0167192 2.9414057 0.686 0.493532
## cylinders6c -4.1004497 1.0580642 -3.875 0.000134 ***
## cylinders8c -1.6633044 1.8447503 -0.902 0.368048
## displacement 0.0022449 0.0108924 0.206 0.836872
## horsepower -0.0575428 0.0202773 -2.838 0.004886 **
## weight -0.0046652 0.0009999 -4.665 4.84e-06 ***
## acceleration 0.0507454 0.1443575 0.352 0.725467
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.092 on 271 degrees of freedom
## Multiple R-squared: 0.7304, Adjusted R-squared: 0.7224
## F-statistic: 91.75 on 8 and 271 DF, p-value: < 2.2e-16
pred <- predict(mod, auto[-t_id_reg_lin, -c(1,8,9)])
sqrt(mean((pred-auto[-t_id_reg_lin,]$mpg)^2))
## [1] 3.894627
par(mfrow=c(2,2))
plot(mod)
Se puede mejorar el analisis , esto sirve para determinar que columnas (variables )son importates y cuales no (stepAIC)
library(MASS)
mod
##
## Call:
## lm(formula = mpg ~ ., data = auto[t_id_reg_lin, -c(1, 8, 9)])
##
## Coefficients:
## (Intercept) cylinders3c cylinders5c cylinders6c cylinders8c
## 43.515678 -6.231475 2.016719 -4.100450 -1.663304
## displacement horsepower weight acceleration
## 0.002245 -0.057543 -0.004665 0.050745
summary(mod)
##
## Call:
## lm(formula = mpg ~ ., data = auto[t_id_reg_lin, -c(1, 8, 9)])
##
## Residuals:
## Min 1Q Median 3Q Max
## -10.0606 -2.4686 -0.4435 1.9821 16.0907
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 43.5156778 2.8644210 15.192 < 2e-16 ***
## cylinders3c -6.2314753 2.4926855 -2.500 0.013014 *
## cylinders5c 2.0167192 2.9414057 0.686 0.493532
## cylinders6c -4.1004497 1.0580642 -3.875 0.000134 ***
## cylinders8c -1.6633044 1.8447503 -0.902 0.368048
## displacement 0.0022449 0.0108924 0.206 0.836872
## horsepower -0.0575428 0.0202773 -2.838 0.004886 **
## weight -0.0046652 0.0009999 -4.665 4.84e-06 ***
## acceleration 0.0507454 0.1443575 0.352 0.725467
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.092 on 271 degrees of freedom
## Multiple R-squared: 0.7304, Adjusted R-squared: 0.7224
## F-statistic: 91.75 on 8 and 271 DF, p-value: < 2.2e-16
step.model <- MASS::stepAIC(mod, direction="backward")
## Start: AIC=797.96
## mpg ~ cylinders + displacement + horsepower + weight + acceleration
##
## Df Sum of Sq RSS AIC
## - displacement 1 0.71 4539.2 796.00
## - acceleration 1 2.07 4540.5 796.08
## <none> 4538.5 797.96
## - horsepower 1 134.87 4673.3 804.16
## - weight 1 364.53 4903.0 817.59
## - cylinders 4 619.82 5158.3 825.80
##
## Step: AIC=796
## mpg ~ cylinders + horsepower + weight + acceleration
##
## Df Sum of Sq RSS AIC
## - acceleration 1 1.76 4541.0 794.11
## <none> 4539.2 796.00
## - horsepower 1 136.06 4675.2 802.27
## - weight 1 475.09 5014.3 821.87
## - cylinders 4 629.80 5169.0 824.38
##
## Step: AIC=794.11
## mpg ~ cylinders + horsepower + weight
##
## Df Sum of Sq RSS AIC
## <none> 4541.0 794.11
## - horsepower 1 289.06 4830.0 809.39
## - cylinders 4 642.38 5183.3 823.16
## - weight 1 605.26 5146.2 827.14
summary(step.model)
##
## Call:
## lm(formula = mpg ~ cylinders + horsepower + weight, data = auto[t_id_reg_lin,
## -c(1, 8, 9)])
##
## Residuals:
## Min 1Q Median 3Q Max
## -9.9108 -2.4854 -0.4535 1.9444 16.2137
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 44.3060838 1.5539812 28.511 < 2e-16 ***
## cylinders3c -6.4358865 2.3970441 -2.685 0.0077 **
## cylinders5c 2.0004828 2.9289747 0.683 0.4952
## cylinders6c -4.0112530 0.8426183 -4.760 3.14e-06 ***
## cylinders8c -1.4973133 1.3818662 -1.084 0.2795
## horsepower -0.0611080 0.0146588 -4.169 4.12e-05 ***
## weight -0.0044161 0.0007321 -6.032 5.24e-09 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.078 on 273 degrees of freedom
## Multiple R-squared: 0.7302, Adjusted R-squared: 0.7243
## F-statistic: 123.2 on 6 and 273 DF, p-value: < 2.2e-16
Lo que te arroja los variables de la ultima iteracion por lo que se puede concluir que (cylinders, hoursepower y wheight) son las varibles para la obtener un modelo completo
Instalamos y cargamos las librerias
#install.packages("rpart.plot")
library(rpart)
library(rpart.plot)
library(caret)
Cargamos el documento ( cambiar dirección)
bh <- read.csv("../../r-course-master/data/tema4/BostonHousing.csv")
Creamos una paticion
t.id <-caret::createDataPartition(bh$MEDV, p = .7, list = F)
bfit <- rpart(MEDV ~., data = bh[t.id,])
bfit
## n= 356
##
## node), split, n, deviance, yval
## * denotes terminal node
##
## 1) root 356 28822.1900 22.40618
## 2) RM< 6.805 293 11281.7400 19.51433
## 4) LSTAT>=14.91 112 1896.9530 14.34196
## 8) CRIM>=5.76921 58 591.3710 11.96552 *
## 9) CRIM< 5.76921 54 626.2083 16.89444 *
## 5) LSTAT< 14.91 181 4534.2900 22.71492
## 10) LSTAT>=5.245 172 2639.5900 22.13140
## 20) LSTAT>=9.715 89 566.7760 20.60674 *
## 21) LSTAT< 9.715 83 1644.0860 23.76627 *
## 11) LSTAT< 5.245 9 716.8800 33.86667 *
## 3) RM>=6.805 63 3694.3560 35.85556
## 6) RM< 7.437 44 1094.5590 32.39545 *
## 7) RM>=7.437 19 853.1011 43.86842 *
Grafiquemoslo
par(mfrow=c(1,1))
prp(bfit, type = 2, nn=T,
fallen.leaves = T, faclen = 4,
varlen = 8, shadow.col = "gray")
Detalle de tabla
bfit$cptable
## CP nsplit rel error xerror xstd
## 1 0.48039697 0 1.0000000 1.0033907 0.09825971
## 2 0.16829040 1 0.5196030 0.5827505 0.06549191
## 3 0.06060246 2 0.3513126 0.3935690 0.05315030
## 4 0.04086502 3 0.2907102 0.3487069 0.05377561
## 5 0.02357120 4 0.2498451 0.3007673 0.04694361
## 6 0.01487496 5 0.2262740 0.2785457 0.04780752
## 7 0.01000000 6 0.2113990 0.2642192 0.04714776
Grafiquemos lo que dice la tabla
cuando se tiene muchas clasificaciones se puede elejir alguno de los factores que sea representativo
plotcp(bfit)
Subes a la tablay tomas el valor que sea mas factible (y recortas el arbol)
bfitpruned <- prune(bfit, cp = 0.02343779)
Volvemos a representar el arbol
par(mfrow=c(1,1))
prp(bfitpruned, type = 2, nn=T,
fallen.leaves = T, faclen = 4,
varlen = 8, shadow.col = "gray")
Calculamos las predicciones
Pedeciremos los datos de entrenamiento para el arbol no recortado, todos los datos de entrenamiento
preds <- predict(bfit, bh[t.id,])
#Calculamos el error medio para los datos de validacion
sqrt(mean((preds - bh[t.id,]$MEDV)^2))
## [1] 4.137042
Pedeciremos los datos deentrenamiento para el arbol no recortado, todos los datos que no son de entrenamiento
preds <- predict(bfit, bh[-t.id, ])
sqrt(mean((preds - bh[-t.id,]$MEDV)^2))
## [1] 5.689694
Pedeciremos los datos de entrenamiento para el arbol recortado, todos los datos entrenamiento
preds <- predict(bfitpruned, bh[t.id,])
sqrt(mean((preds - bh[t.id,]$MEDV)^2))
## [1] 4.280118
Pedeciremos los datos de validacion para el arbol recortado, todos los datos que no son de entrenamiento
preds <- predict(bfitpruned, bh[-t.id, ])
sqrt(mean((preds - bh[-t.id,]$MEDV)^2))
## [1] 5.898846
#predictores categoricos
#Cargamos los datos
ed <- read.csv("../../r-course-master/data/tema4/education.csv")
#convertimos a factores
ed$region <- factor(ed$region)
#partimos el data frame
t.id <- caret::createDataPartition(ed$expense, p = 0.7, list = F)
#Predeciren función de todo la variable
fit <- rpart::rpart(expense ~ region+urban+income+under18, data = ed[t.id,])
#pintemos el arbol que diseñamos
rpart.plot::prp(fit, type = 2, nn=T, fallen.leaves = T, faclen=4, varlen=8, shadow.col = "gray")
#Bagging Combina de forma conjunta lo de diferentes arboles
#install.packages("ipred")
library(ipred)
##
## Attaching package: 'ipred'
## The following object is masked from 'package:raster':
##
## cv
# Construimos el bagguing a partir de los datos de entrenamiento
bagging.fit <- bagging(MEDV~.,#predice esta variable en función de las demas
data=bh[t.id, ])# vas a tomar del DF inicial y las filas de entrenamiento
# Predeciremos apartir de el conjunto de entrenamiento
prediction.t <- predict(bagging.fit, bh[t.id,])
#RMSE de bagging
sqrt(mean((prediction.t-bh[t.id,]$MEDV)^2))
## [1] 2.561796
#Predecirmos con los valores a partir de los de validación ( los que nos on de entrenamiento)
prediction.v <- predict(bagging.fit, bh[-t.id,])
sqrt(mean((prediction.v-bh[-t.id,]$MEDV)^2))
## [1] 6.936346
#Boosting
#install.packages("gbm")
library(gbm)#gradient busted machine
## Loaded gbm 2.1.8
gbmfit <- gbm(MEDV~., #predice en funciónde todas las variables
data = bh, #datos tomalos de aqui
distribution = "gaussian")# distribucion gaussina
#Predice en función de
prediction.t <- predict(gbmfit, bh)
## Using 100 trees...
library(randomForest)
library(caret)
bh <- read.csv("../../r-course-master/data/tema4/BostonHousing.csv")
#elejimos semilla
set.seed(2018)
#Creamos datos de entrenamiento
t.id <- createDataPartition(bh$MEDV, p = 0.7, list = F)
Creamos el modelo
mod <- randomForest(x = bh[t.id, 1:13],#predictores
y = bh[t.id, 14],#las variables a predecir
ntree = 1000, #numero de arboles
xtest = bh[-t.id, 1:13],#son los predictors que se usan en la particion
ytest = bh[-t.id, 14],#las variables de salida en la misma particio de validacion
importance = T,#Si tiene que computar o no las puntuaciones de varibales predictoras
keep.forest = T)#mantener los arboles del modelo
mod
##
## Call:
## randomForest(x = bh[t.id, 1:13], y = bh[t.id, 14], xtest = bh[-t.id, 1:13], ytest = bh[-t.id, 14], ntree = 1000, importance = T, keep.forest = T)
## Type of random forest: regression
## Number of trees: 1000
## No. of variables tried at each split: 4
##
## Mean of squared residuals: 11.77997
## % Var explained: 86.72
## Test set MSE: 10.05
## % Var explained: 86.51
Parametros que se pueden introducir en la tecnica de Random Forest
mtry = m/3, donde m = # de predictores nodesize = 5 minimos tamaño que debe tener un nodo termina maxnodes ( maximo de nodos terminales )
Se ven la importancia para cada variable %purity el dato mayor es la que tine mayor importancia
mod$importance
## %IncMSE IncNodePurity
## CRIM 8.1353944 1795.0927
## ZN 0.9797628 240.7091
## INDUS 4.7049920 1536.7625
## CHAS 0.5831449 194.5591
## NOX 8.1279708 1623.9652
## RM 41.3092319 10179.2089
## AGE 3.8170358 802.6095
## DIS 6.4509516 1953.6404
## RAD 1.0707028 263.1413
## TAX 4.4276314 1188.9411
## PTRATIO 8.9288034 2591.7216
## B 1.8193482 667.7755
## LSTAT 55.9722090 8001.2091
Grafiquemoslo soble los datos predichos ( con los datos de entrenamiento)
plot(bh[t.id,]$MEDV, predict(mod, newdata = bh[t.id,]),
xlab = "Actual", ylab = "Predichos")
abline(0,1)
Grafiquemos los datos en caso de los datos de predicccion
plot(bh[-t.id,]$MEDV, predict(mod, newdata = bh[-t.id,]),
xlab = "Actual", ylab = "Predichos")
abline(0,1)
library(nnet)
library(caret)
library(devtools)
## Loading required package: usethis
bh <- read.csv("../../r-course-master/data/tema4/BostonHousing.csv")
set.seed(2018)
t.id <- createDataPartition(bh$MEDV, p= 0.7, list = F)
summary(bh$MEDV)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 5.00 17.02 21.20 22.53 25.00 50.00
creamos la red neuronal ( parara en 290 iteraciones)
fit <- nnet(MEDV/50 ~., data=bh[t.id, ],
size = 6, decay = 0.1,
maxit = 1000, linout=T)
## # weights: 91
## initial value 1711.376818
## iter 10 value 14.279679
## iter 20 value 9.849751
## iter 30 value 7.511037
## iter 40 value 6.285160
## iter 50 value 3.989395
## iter 60 value 3.214674
## iter 70 value 2.455499
## iter 80 value 1.950545
## iter 90 value 1.782552
## iter 100 value 1.735083
## iter 110 value 1.686014
## iter 120 value 1.632630
## iter 130 value 1.516829
## iter 140 value 1.490113
## iter 150 value 1.438664
## iter 160 value 1.385513
## iter 170 value 1.362224
## iter 180 value 1.349518
## iter 190 value 1.322281
## iter 200 value 1.307838
## iter 210 value 1.304445
## iter 220 value 1.303188
## iter 230 value 1.302788
## iter 240 value 1.302763
## iter 250 value 1.302370
## iter 260 value 1.301663
## iter 270 value 1.300696
## iter 280 value 1.298021
## iter 290 value 1.293863
## iter 300 value 1.290511
## iter 310 value 1.279228
## iter 320 value 1.264173
## iter 330 value 1.241595
## iter 340 value 1.211158
## iter 350 value 1.193082
## iter 360 value 1.187331
## iter 370 value 1.184634
## iter 380 value 1.181169
## iter 390 value 1.179331
## iter 400 value 1.177550
## iter 410 value 1.170499
## iter 420 value 1.169408
## iter 430 value 1.159805
## iter 440 value 1.149498
## iter 450 value 1.147599
## iter 460 value 1.147367
## final value 1.147343
## converged
Descargueos el recurso
source_url("https://gist.githubusercontent.com/fawda123/7471137/raw/466c1474d0a505ff044412703516c34f1a4684a5/nnet_plot_update.r")
## i SHA-1 hash of file is 74c80bd5ddbc17ab3ae5ece9c0ed9beb612e87ef
Grafiquemos la red neuronal
plot(fit, max.sp = T)
Calculemos el valor medio de la red neuronal de los datos de entrenamiento
sqrt(mean((fit$fitted.values*50# esto se hace por que estaban escalados (x/50)
-bh[t.id,"MEDV"])^2))
## [1] 2.354379
Predigamos los valores de validación con base al modelo
# calculamos la predicción
pred <- predict(fit, bh[-t.id,])
# calculemos el error medio
sqrt(mean((pred*50 - bh[-t.id,"MEDV"])^2))
## [1] 4.082578
#k-fold cross validation( para evitar el over-fiting ) La técnica que hace un muestreo de los datos dejando siempre un conjunto no vacío y de más de un elemento como testing de los mismos usando el resto como conjunto de entrenamiento, de modo que en algún momento todo elemento del data set habrá sido parte del conjunto de testing
bh <- read.csv("../../r-course-master/data/tema4/BostonHousing.csv")
Función que nos ayuda de validacion cruzada (Kross Validaion )
kfold.crossval.reg <- function(df, nfolds){
fold <- sample(1:nfolds,#diviciones
nrow(df),#valor maximo es el numero de columnas
replace = T)# con remplazo
cat(fold)
mean.sqr.errs <- sapply(1:nfolds,
kfold.cval.reg.iter,
df, fold)
list("MSE "= mean.sqr.errs,
"Overall_Mean_Sqr_Error" = mean(mean.sqr.errs),
"Std_Mean_Sqr_Error" = sd(mean.sqr.errs))
}
Esta fucnión es tal vez ala mas importante como lo hemos visto
kfold.cval.reg.iter <- function(k, df, fold){
tr.ids <- !fold %in% c(k)# los que no estan el el fold
test.ids <- fold %in% c(k)
mod <- lm(MEDV ~., data = df[tr.ids,])#este es Lineal , pero puede ser cualquiera de los que se han visto
pred <- predict(mod, df[test.ids,])#predecimos los valores con los de entrenamiento
sqr.errs <- (pred - df[test.ids,"MEDV"])^2# calculamos los valores con los de entreanamiento
mean(sqr.errs)
}
como se ocupa la funcion
res <- kfold.crossval.reg(bh, 5)
## 2 5 5 4 3 1 5 1 4 4 1 4 4 4 1 4 1 5 3 4 5 3 3 1 4 2 4 5 3 2 1 2 5 5 2 3 1 5 4 5 1 2 5 4 4 3 4 5 2 3 3 2 4 3 3 5 4 2 1 2 4 2 1 4 2 4 4 4 2 4 2 1 5 3 1 1 5 3 2 3 2 3 1 4 2 5 1 1 4 3 4 5 1 1 1 1 2 5 2 1 4 4 5 5 3 5 2 3 4 5 2 3 1 2 2 5 3 5 4 5 1 5 1 5 3 4 4 5 1 1 5 5 1 3 2 5 3 3 5 3 5 3 2 3 1 3 2 4 2 5 2 3 3 3 1 4 3 3 1 2 1 3 2 2 3 1 5 4 3 5 3 4 4 2 4 5 1 3 4 5 2 4 3 2 4 1 1 5 3 1 1 2 5 3 5 1 2 1 2 1 2 4 1 1 1 5 5 5 1 1 3 3 3 1 2 5 4 2 2 2 4 2 1 2 3 4 4 5 1 3 5 4 3 5 4 5 3 5 1 4 4 4 1 5 2 3 3 3 5 4 5 2 2 3 2 5 4 5 3 4 1 2 3 4 4 3 4 2 2 5 4 5 5 1 4 4 1 2 2 5 5 1 4 2 4 3 5 4 1 5 3 3 4 1 3 1 3 5 4 5 2 5 5 2 2 5 3 3 1 5 2 4 4 5 5 3 3 4 4 2 4 5 3 3 5 4 2 3 5 5 5 5 2 5 1 3 1 1 2 2 5 5 1 3 1 5 4 4 2 1 3 4 5 1 1 3 5 5 2 2 5 2 1 3 2 3 5 4 5 1 1 2 5 2 2 5 4 2 2 3 4 3 2 4 3 1 4 4 2 4 3 1 1 4 3 4 4 2 3 3 4 1 1 3 3 3 4 5 4 2 3 2 5 2 5 2 5 5 4 1 5 4 2 1 2 3 5 4 2 2 4 1 1 1 4 4 1 4 5 4 3 5 2 4 4 1 4 3 4 1 1 3 5 5 1 2 1 1 3 1 2 1 4 2 2 5 5 3 4 4 3 5 2 1 4 4 1 5 2 2 4 4 5 2 3 4 2 5 4 2 2 3 4 4 2 1 4 5 4 3 5 5 5 3 2 2
res
## $`MSE `
## [1] 26.53045 29.62104 19.72100 15.59297 29.42232
##
## $Overall_Mean_Sqr_Error
## [1] 24.17756
##
## $Std_Mean_Sqr_Error
## [1] 6.249624
Función que
loocv.reg <- function(df){
mean.sqr.errors <- sapply(1:nrow(df),
loocv.reg.iter, df)
list("MSE"=mean.sqr.errors,
"overall_mean_sqr_errors" = mean(mean.sqr.errors),
"sd_mean_sqr_errors" = sd(mean.sqr.errors))
}
#Leave one out cross validatión La técnica que hace un muestreo de los datos dejando siempre un elemento como testing de los mismos usando el resto como conjunto de entrenamiento, de modo que en algún momento todo elemento del data set habrá sido probado en el mismo es
loocv.reg.iter <- function(k, df){
mod <- lm(MEDV~., data = df[-k,])
pred <- predict(mod, df[k,])
sqr.error <- (pred - df[k,"MEDV"])^2
sqr.error
}
Vemos el resultado de la funcion locv.reg(bh)
res <- loocv.reg(bh)
res
## $MSE
## 1 2 3 4 5 6
## 3.729797e+01 1.199961e+01 1.748783e+01 2.371101e+01 7.041998e+01 1.221852e+01
## 7 8 9 10 11 12
## 1.066078e-02 6.083233e+01 2.760620e+01 4.354925e-04 1.718911e+01 7.572428e+00
## 13 14 15 16 17 18
## 6.522578e-01 7.377726e-01 1.208910e+00 3.733962e-01 6.923949e+00 3.547527e-01
## 19 20 21 22 23 24
## 1.697014e+01 4.355471e-02 1.201640e+00 3.821703e+00 4.135365e-01 4.993998e-01
## 25 26 27 28 29 30
## 6.331468e-03 2.721472e-01 1.331116e+00 8.652999e-03 1.362318e+00 1.574726e-02
## 31 32 33 34 35 36
## 1.611519e+00 1.313453e+01 2.067570e+01 1.443976e+00 4.475714e-02 2.463602e+01
## 37 38 39 40 41 42
## 5.592485e+00 4.552686e+00 3.286605e+00 3.312408e-01 5.014142e-01 2.130980e+00
## 43 44 45 46 47 48
## 9.679261e-03 8.527549e-03 3.100071e+00 8.032073e+00 1.844215e-01 2.157248e+00
## 49 50 51 52 53 54
## 3.108574e+01 4.973245e+00 2.566659e+00 1.243208e+01 7.237428e+00 4.330235e-01
## 55 56 57 58 59 60
## 1.389389e+01 1.940582e+01 2.618686e-02 2.472834e+00 2.411174e+00 2.266668e+00
## 61 62 63 64 65 66
## 7.126901e-01 6.707352e+00 3.332020e+00 6.237148e+00 1.001863e+02 4.957845e+01
## 67 68 69 70 71 72
## 3.986293e+01 8.085272e-01 4.762654e-04 1.357698e-02 1.056106e+00 1.892730e-03
## 73 74 75 76 77 78
## 3.244263e+00 4.352050e-01 2.105917e+00 6.779739e+00 8.939215e+00 6.729250e+00
## 79 80 81 82 83 84
## 3.953892e-03 4.682032e+00 1.670276e-01 9.770162e+00 1.549403e+00 4.721297e+00
## 85 86 87 88 89 90
## 7.947959e-01 1.439888e+00 1.121866e-01 1.391472e+01 5.172308e+01 4.657649e+00
## 91 92 93 94 95 96
## 2.092745e+01 3.007600e+01 3.806832e+01 1.761120e+01 4.348412e+01 5.188964e-02
## 97 98 99 100 101 102
## 1.140565e+01 8.993158e+00 7.964098e+01 9.323476e-01 8.796581e+00 8.471550e-01
## 103 104 105 106 107 108
## 1.561794e+00 1.054589e+00 1.843013e+00 9.606184e-01 5.567635e+00 1.272343e-01
## 109 110 111 112 113 114
## 8.422781e+00 1.431191e-01 1.141503e+00 1.421192e+01 4.012310e+00 4.185680e+00
## 115 116 117 118 119 120
## 4.570305e+01 4.663181e+00 4.841275e+00 2.068423e+01 4.232158e-03 2.282826e+00
## 121 122 123 124 125 126
## 7.941337e-03 5.336048e+00 3.731817e-03 1.002866e+00 3.516524e+00 1.325469e+00
## 127 128 129 130 131 132
## 1.355923e+00 1.089893e+00 9.276111e-01 6.229524e-02 7.355950e-01 3.796536e-02
## 133 134 135 136 137 138
## 9.110577e+00 7.297429e+00 5.771485e+00 7.366954e-01 2.418407e+00 5.385606e+00
## 139 140 141 142 143 144
## 2.782415e-01 1.916950e+00 1.958247e-01 1.187180e+02 1.648491e+00 1.312498e+01
## 145 146 147 148 149 150
## 1.051908e+01 3.492333e+00 5.403145e-02 4.135578e+01 7.243438e+01 3.865230e-01
## 151 152 153 154 155 156
## 4.774235e-01 1.861299e+00 2.725144e+01 4.887157e+00 3.267753e+01 2.424213e+01
## 157 158 159 160 161 162
## 3.113948e-01 6.897296e+01 2.403866e+01 5.712380e+00 3.625518e+01 1.883310e+02
## 163 164 165 166 167 168
## 1.003511e+02 7.590807e+01 4.601966e+00 1.531457e-01 1.776428e+02 5.385503e-01
## 169 170 171 172 173 174
## 7.141359e+00 1.992025e+01 2.800766e+01 2.847223e+01 1.597189e-02 3.089412e+01
## 175 176 177 178 179 180
## 1.593424e+01 1.814710e+00 6.004608e+00 2.117228e+01 2.417781e+00 1.889265e+01
## 181 182 183 184 185 186
## 2.700943e+01 7.380785e+01 1.683769e+01 2.388951e+00 1.426146e+01 2.407323e+01
## 187 188 189 190 191 192
## 2.082895e+02 2.136408e+00 7.143840e+00 1.544500e-01 4.038493e+01 4.588249e-02
## 193 194 195 196 197 198
## 1.256855e+01 1.061280e+00 6.230196e+00 8.896089e+01 8.516689e+00 6.006171e+00
## 199 200 201 202 203 204
## 1.170881e-02 2.496221e+01 5.508817e+00 2.875440e+01 2.919602e+01 4.615213e+01
## 205 206 207 208 209 210
## 5.129553e+01 8.475094e-03 5.215106e-01 2.201520e+01 8.825574e-01 9.969343e+00
## 211 212 213 214 215 216
## 5.206310e-01 5.555872e+00 1.244453e-01 8.517094e+00 1.843480e+02 2.440186e-01
## 217 218 219 220 221 222
## 1.180092e+01 1.224423e-01 1.264901e+01 4.821454e+01 4.536309e+01 4.762079e+00
## 223 224 225 226 227 228
## 2.311447e+01 1.282296e-01 4.341674e+01 1.114443e+02 2.034105e-04 6.545355e-01
## 229 230 231 232 233 234
## 1.348988e+02 7.382200e-02 3.471605e-02 2.588687e+00 1.403737e+01 1.299645e+02
## 235 236 237 238 239 240
## 7.888862e+00 1.634536e+00 2.682745e+01 1.525101e+00 2.281558e+01 2.668342e+01
## 241 242 243 244 245 246
## 2.865031e+01 1.363589e+01 3.776324e+00 1.412930e+01 1.715674e+00 2.743474e+01
## 247 248 249 250 251 252
## 1.891622e+01 4.323744e-01 1.062594e+01 4.655989e+00 3.867855e-02 6.070924e-02
## 253 254 255 256 257 258
## 2.333755e+01 1.857514e+02 4.552659e+00 6.702129e-01 4.504348e+01 4.929602e+01
## 259 260 261 262 263 264
## 2.498378e-01 2.562539e+01 1.085240e+00 3.742820e+01 6.618498e+01 1.265035e+01
## 265 266 267 268 269 270
## 4.714732e-01 3.236633e+01 2.956476e-01 9.015552e+01 1.837542e+01 2.719936e+01
## 271 272 273 274 275 276
## 1.479861e+00 4.164324e+00 1.721232e+01 8.352803e-02 1.497046e+01 3.314929e+00
## 277 278 279 280 281 282
## 6.268429e+00 3.281041e+00 1.615043e+00 4.566495e-02 4.540504e+01 1.176022e+00
## 283 284 285 286 287 288
## 3.475458e+01 3.231028e+01 3.856496e-01 2.956488e+01 3.221712e-06 1.517697e+01
## 289 290 291 292 293 294
## 2.489079e+01 4.593853e+00 2.655275e+01 9.144115e+00 1.689299e+01 3.928269e+00
## 295 296 297 298 299 300
## 7.862971e+00 2.158638e-02 7.318452e-02 6.199754e-01 4.571617e+01 8.848605e+00
## 301 302 303 304 305 306
## 3.740617e+01 4.908793e+01 6.331184e+00 9.313059e-02 8.707894e+00 5.865127e+00
## 307 308 309 310 311 312
## 4.925755e+00 2.134519e+01 3.490444e+01 1.097246e+01 6.295753e+00 2.339483e+01
## 313 314 315 316 317 318
## 1.532674e+01 1.582541e+01 2.870317e+00 1.912256e+01 3.450631e-02 2.052398e+00
## 319 320 321 322 323 324
## 1.430690e+00 1.069377e-01 1.198376e+00 3.176837e+00 6.198795e+00 9.227381e-01
## 325 326 327 328 329 330
## 1.416033e-02 4.804102e-03 4.765176e-01 8.336834e+00 3.781088e+00 2.954469e+00
## 331 332 333 334 335 336
## 3.441631e+00 8.528804e+00 1.587045e+01 3.698186e-03 7.654037e-01 2.415336e-01
## 337 338 339 340 341 342
## 4.512952e-01 6.365567e-01 2.542731e+00 5.219794e+00 7.668080e+00 5.806470e+00
## 343 344 345 346 347 348
## 3.408684e+01 1.489448e+01 7.243904e+00 9.687327e-01 6.213789e+00 4.995692e+00
## 349 350 351 352 353 354
## 9.689524e+00 2.109834e+01 6.324526e+00 1.385283e+01 3.218312e+00 2.582157e+01
## 355 356 357 358 359 360
## 1.685384e+01 1.801083e+01 3.683016e+00 1.141446e+00 2.744186e-01 1.208874e+01
## 361 362 363 364 365 366
## 5.772775e+00 9.752284e-01 7.091829e+00 1.291493e+01 2.852837e+02 2.149911e+02
## 367 368 369 370 371 372
## 4.275165e+01 1.779938e+02 7.873947e+02 3.351657e+02 2.640801e+02 6.543936e+02
## 373 374 375 376 377 378
## 6.339490e+02 6.339202e+01 1.869516e+02 1.116278e+02 1.532786e+01 5.002861e+01
## 379 380 381 382 383 384
## 7.834563e+00 4.540748e+01 3.271900e+01 5.936606e+01 4.666056e+00 5.998654e-01
## 385 386 387 388 389 390
## 3.213960e+01 7.774770e-01 2.024656e+01 3.378258e+00 1.470464e+01 7.556259e+00
## 391 392 393 394 395 396
## 4.588322e+00 3.579287e+01 3.790106e-02 4.228283e+01 2.818196e+01 5.328189e+01
## 397 398 399 400 401 402
## 4.761296e+01 6.304668e+01 2.668367e+00 2.232802e+01 4.152712e+01 1.158000e+02
## 403 404 405 406 407 408
## 3.896707e+01 2.289148e+01 1.396653e+00 1.449052e+01 1.583904e+01 6.525032e+01
## 409 410 411 412 413 414
## 1.275883e+01 6.108433e+01 6.495700e-02 6.170145e-02 2.925406e+02 2.156831e+01
## 415 416 417 418 419 420
## 1.483805e+02 6.146177e+00 3.742888e+01 1.289712e+01 1.072386e+01 4.155393e+01
## 421 422 423 424 425 426
## 8.599456e+00 1.575544e+01 5.345426e+00 5.494603e-02 9.396361e+00 2.815285e+00
## 427 428 429 430 431 432
## 4.101458e+01 1.140076e+01 1.113683e+01 1.329283e+01 1.418733e+01 2.253565e+01
## 433 434 435 436 437 438
## 3.126912e+01 7.832180e+00 1.898620e+01 1.566939e-03 2.581520e+01 1.540751e-02
## 439 440 441 442 443 444
## 1.363672e+01 7.302687e-02 5.062740e+00 3.949323e-02 1.197830e-01 7.300796e+00
## 445 446 447 448 449 450
## 5.229042e-01 3.231554e-02 7.953288e+00 3.147774e+01 1.200647e+01 1.829087e+01
## 451 452 453 454 455 456
## 1.057631e+01 1.831199e+01 6.343967e+00 2.318438e+01 1.557890e-01 3.159516e+00
## 457 458 459 460 461 462
## 1.753985e-04 4.202941e-01 5.355962e+00 2.282126e+00 7.235331e+00 6.317140e+00
## 463 464 465 466 467 468
## 7.758864e-02 5.171410e+00 1.204679e+00 4.230099e+00 2.308054e+01 4.803341e+00
## 469 470 471 472 473 474
## 4.610735e+00 2.372174e+00 7.392626e-02 1.200459e+01 5.737959e-01 1.851058e+01
## 475 476 477 478 479 480
## 6.970657e+00 8.239081e+00 1.522962e+01 2.160582e-01 2.176554e+01 2.202696e-01
## 481 482 483 484 485 486
## 2.296869e-01 1.214821e+01 1.347174e+01 5.440092e-01 1.376131e+00 1.091587e+00
## 487 488 489 490 491 492
## 3.195204e-01 5.479531e-01 1.304814e+01 1.753278e+00 2.335405e+01 2.967204e-02
## 493 494 495 496 497 498
## 2.040458e+01 1.419016e+00 1.572809e+01 4.111324e+01 3.327803e+01 6.650704e-01
## 499 500 501 502 503 504
## 9.817067e-03 9.329858e-01 1.369270e+01 1.336045e+00 3.277817e+00 1.463799e+01
## 505 506
## 1.785779e+01 1.136972e+02
##
## $overall_mean_sqr_errors
## [1] 23.72575
##
## $sd_mean_sqr_errors
## [1] 65.33334
este conjunto de funciones hace la cantidad de daros que se tiene , pues ese numero , hace regresiones lineales para cada uno de los valores
Merodos partitivos Aglomeramos o separamos ( divisitibo)( dendograma ) Metodos gerargicos #clustering gerargico
protein <- read.csv("../../r-course-master/data/tema5/protein.csv")
Escalamos los valores numericos
data <- as.data.frame(scale(protein[,-1]))
pero se elimino la columna , no pasa nada, lo incluimos
data$Country = protein$Country
Le ponemos numero a las filas
rownames(data) = data$Country
cluster gerargico ( este es “el mas eficiente”)
hc <- hclust(dist# medir distancias
(data,#Data frame
method = "euclidean"),#metodo para distancia
method = "ward.D2")#es de minima varianza
## Warning in dist(data, method = "euclidean"): NAs introducidos por coerción
hc
##
## Call:
## hclust(d = dist(data, method = "euclidean"), method = "ward.D2")
##
## Cluster method : ward.D2
## Distance : euclidean
## Number of objects: 25
veamoslo graficamente
plot(hc, hang = -0.01, cex = 0.7)
hc2 <- hclust(dist(data, method = "euclidean"),
method = "single")
## Warning in dist(data, method = "euclidean"): NAs introducidos por coerción
plot(hc2, hang=-0.01, cex = 0.7)
Las diferencias de metodos de aglomeracion
hc3 <- hclust(dist(data, method = "euclidean"),
method = "complete")
## Warning in dist(data, method = "euclidean"): NAs introducidos por coerción
plot(hc3, hang=-0.01, cex = 0.7)
hc3$merge
## [,1] [,2]
## [1,] -18 -25
## [2,] -2 -14
## [3,] -6 -20
## [4,] -3 -24
## [5,] -12 4
## [6,] -5 -7
## [7,] -4 1
## [8,] -15 3
## [9,] -10 -13
## [10,] -21 2
## [11,] -9 -22
## [12,] -8 8
## [13,] -16 6
## [14,] 5 10
## [15,] -17 -19
## [16,] -1 7
## [17,] -23 13
## [18,] -11 17
## [19,] 11 14
## [20,] 9 16
## [21,] 12 19
## [22,] 18 21
## [23,] 15 20
## [24,] 22 23
hc4 <- hclust(dist(data, method = "euclidean"),
method = "average")
## Warning in dist(data, method = "euclidean"): NAs introducidos por coerción
plot(hc4, hang=-0.01, cex = 0.7)
Esta matriz lo que hace es te da las posiciones de como aglomera cada uno de los valores
hc4$merge
## [,1] [,2]
## [1,] -18 -25
## [2,] -2 -14
## [3,] -6 -20
## [4,] -3 -24
## [5,] -12 4
## [6,] -15 3
## [7,] -5 -7
## [8,] -4 1
## [9,] -21 2
## [10,] -10 -13
## [11,] 5 9
## [12,] -8 6
## [13,] -16 7
## [14,] -9 -22
## [15,] 11 13
## [16,] -1 8
## [17,] -17 -19
## [18,] 14 15
## [19,] 12 18
## [20,] -11 16
## [21,] -23 20
## [22,] 10 21
## [23,] 17 22
## [24,] 19 23
En esta tabla podemos ver como se ven las relaciones numericas entre los nuemros de aglomeracion
d <- dist(data, method = "euclidean")
## Warning in dist(data, method = "euclidean"): NAs introducidos por coerción
d
## Albania Austria Belgium Bulgaria Czechoslovakia Denmark
## Austria 6.467966
## Belgium 6.270545 2.583921
## Bulgaria 2.914078 5.165346 5.520376
## Czechoslovakia 5.419246 2.246156 2.340354 4.164048
## Denmark 6.993021 3.182556 2.676462 6.363126 3.551469
## E Germany 6.738023 2.721647 2.228452 5.701727 1.981974 2.914117
## Finland 6.197500 4.291913 3.693850 6.132320 4.199483 2.775939
## France 6.648173 3.783072 2.313117 5.861471 3.551333 3.860951
## Greece 4.486144 5.443265 4.949126 3.966231 5.133578 5.899629
## Hungary 4.926246 3.463473 4.210760 3.526341 2.900155 5.311659
## Ireland 7.122631 2.889077 1.746375 6.548645 3.328471 2.982614
## Italy 4.243320 3.918642 3.919850 3.020464 3.527166 5.037933
## Netherlands 6.333064 1.184075 2.370619 5.448173 2.312485 2.673810
## Norway 5.760859 4.085139 3.120846 5.562267 3.717820 2.101509
## Poland 6.201022 2.947240 3.094715 4.674394 2.218277 4.052664
## Portugal 6.969670 6.882349 5.956965 6.329434 5.817515 6.187499
## Romania 2.835084 4.902056 5.017853 1.991640 3.754924 5.833256
## Spain 5.869554 5.152500 4.213951 5.103852 4.373624 5.388490
## Sweden 5.959496 3.095772 2.725222 5.688855 3.433509 1.456405
## Switzerland 5.400868 2.321822 2.471070 4.725284 2.765509 3.360708
## UK 6.261715 3.950516 2.051293 6.109584 4.038158 3.662983
## USSR 4.580364 4.387765 3.331584 4.038101 2.863559 4.387004
## W Germany 6.698441 1.733344 1.494659 5.914431 2.302033 2.521632
## Yugoslavia 3.101508 5.740029 5.906917 2.100768 4.575402 6.706354
## E Germany Finland France Greece Hungary Ireland Italy
## Austria
## Belgium
## Bulgaria
## Czechoslovakia
## Denmark
## E Germany
## Finland 4.292653
## France 3.998525 4.843663
## Greece 5.923580 5.801368 4.790900
## Hungary 3.875142 5.686633 5.243799 4.332346
## Ireland 3.197670 3.411083 3.322193 6.013141 5.078293
## Italy 4.554132 5.180912 4.007816 2.266429 3.323988 5.105872
## Netherlands 2.668781 3.567546 3.592490 5.434954 3.679952 2.470828 4.132090
## Norway 3.449373 2.174253 4.132575 4.877926 5.173575 3.804993 4.216275
## Poland 2.855449 4.352077 3.793482 4.652913 3.207114 3.939571 3.286878
## Portugal 5.536763 6.859720 5.961973 5.042438 6.006109 7.445740 4.914201
## Romania 5.042962 5.340870 5.825068 3.815704 2.604885 5.907937 3.277615
## Spain 4.308394 5.777546 4.690822 3.266241 4.090129 5.568623 3.029450
## Sweden 3.225851 2.177177 4.023670 5.255041 4.917562 3.009951 4.359957
## Switzerland 3.764376 3.728661 2.555926 4.329069 4.062262 2.968257 3.095835
## UK 4.140596 4.092941 2.710334 4.871947 5.396215 2.375613 4.411907
## USSR 3.601734 3.657170 4.466362 4.336835 3.615445 4.109018 3.752108
## W Germany 1.994169 3.851187 3.094365 5.653969 4.113548 1.905283 4.361052
## Yugoslavia 5.823788 6.108572 6.647119 4.143284 3.194559 6.811222 3.774715
## Netherlands Norway Poland Portugal Romania Spain
## Austria
## Belgium
## Bulgaria
## Czechoslovakia
## Denmark
## E Germany
## Finland
## France
## Greece
## Hungary
## Ireland
## Italy
## Netherlands
## Norway 3.545298
## Poland 2.922854 3.907456
## Portugal 6.714237 5.055744 5.075801
## Romania 4.893325 4.936560 4.168287 5.934467
## Spain 5.129482 4.386674 3.582102 3.091414 4.472014
## Sweden 2.532559 1.585203 4.049537 6.186614 5.122213 5.069184
## Switzerland 2.003929 3.518374 3.239766 6.453545 4.594953 4.827802
## UK 3.707378 3.741913 4.742940 6.891621 5.716957 4.969019
## USSR 4.091736 3.436253 3.074917 5.349661 2.905607 3.823926
## W Germany 1.341817 3.477531 3.159113 6.474562 5.365969 4.852100
## Yugoslavia 5.800653 5.700872 4.733978 6.141142 1.039579 4.814148
## Sweden Switzerland UK USSR W Germany
## Austria
## Belgium
## Bulgaria
## Czechoslovakia
## Denmark
## E Germany
## Finland
## France
## Greece
## Hungary
## Ireland
## Italy
## Netherlands
## Norway
## Poland
## Portugal
## Romania
## Spain
## Sweden
## Switzerland 2.834669
## UK 3.302204 2.995056
## USSR 3.974365 4.000245 4.222185
## W Germany 2.602745 2.408679 3.051419 4.105817
## Yugoslavia 6.010580 5.491393 6.605472 3.536161 6.286440
Calculemos las distanciasentre los paises
alb<-data["Albania",-10]
aus<-data["Austria",-10]
sqrt(sum((alb-aus)^2))#Errror medio
## [1] 6.136051
sum(abs(alb-aus))#este se calcula para la distancia de manhatan
## [1] 15.97134
#install.packages("cluster")
library(cluster)
dv <- diana(data, metric = "euclidean")
par(mfrow=c(1,2))
plot(dv)
Ver como se comport la separacionde cada uno de esos valores
par(mfrow=c(1,1))
#Se recorta el arbol en el numero indicado
fit <- cutree(hc, k=4)
#Asi se ve como se van categorizando los datos
fit
## Albania Austria Belgium Bulgaria Czechoslovakia
## 1 2 2 1 3
## Denmark E Germany Finland France Greece
## 2 3 2 2 4
## Hungary Ireland Italy Netherlands Norway
## 3 2 4 2 2
## Poland Portugal Romania Spain Sweden
## 3 4 1 4 2
## Switzerland UK USSR W Germany Yugoslavia
## 2 2 3 2 1
#Esta tabla se ejecutan los datos se agruparon por grupo (parte superior) y como se fueron acomodando los paises(el nuemro de abajo )
table(fit)
## fit
## 1 2 3 4
## 4 12 5 4
#graficamos los datos
plot(hc, hang = -0.01, cex = 0.7)
#Le pedimos que nos pinte las segmentaciones
rect.hclust(hc, k=4, border="red")
# Clustering con K-means
Cuidado con los outliners por que se mueve sumamente feo
protein <- read.csv("../../r-course-master/data/tema5/protein.csv")
rownames(protein) = protein$Country # asignamos los valores como identificador para cada fila
Eliminamos la columna donde se mostraban estos numeros
protein$Country = NULL
Ahora que todo los valores son numericos , entoces escalamos los valores
protein.scaled = as.data.frame(scale(protein))
Cargamos e instalamos desde paquete desde git_hub Minimiza el uso a traves de analisis de componentes principales
library(devtools)
devtools::install_github("kassambara/factoextra")#esta libreria nos ayuda cuando tenemos muchas variables
## Skipping install of 'factoextra' from a github remote, the SHA1 (1689fc74) has not changed since last install.
## Use `force = TRUE` to force installation
#Se puede validar en el github kassambra (https://github.com/kassambara/factoextra)
Creamos los valores que nos ayudan a hacer los K-means devuelve los grupos a los cuales pertenece cada uno de esos valores Que porcentaje esta informacion esta resumida dentro de la informacion (between_SS( suma de cada cluster ) / total_SS(suma de los cuadrados totales ) = 59.8 % )
km <- kmeans(protein.scaled,4)
km
## K-means clustering with 4 clusters of sizes 4, 11, 4, 6
##
## Cluster means:
## RedMeat WhiteMeat Eggs Milk Fish Cereals
## 1 -0.508801956 -1.1088009 -0.4124850 -0.8320414 0.9819154 0.1300253
## 2 0.613615213 0.7738178 0.7161344 0.3066547 -0.2598064 -0.5146342
## 3 0.006572897 -0.2290150 0.1914789 1.3458748 1.1582546 -0.8722721
## 4 -0.790141851 -0.5267887 -1.1655757 -0.9047559 -0.9504683 1.4383272
## Starch Nuts Fr.Veg
## 1 -0.1842010 1.3108846 1.6292449
## 2 0.4208082 -0.6131165 0.1060327
## 3 0.1676780 -0.9553392 -1.1148048
## 4 -0.7604664 0.8870168 -0.5373533
##
## Clustering vector:
## Albania Austria Belgium Bulgaria Czechoslovakia
## 4 2 2 4 2
## Denmark E Germany Finland France Greece
## 3 2 3 2 1
## Hungary Ireland Italy Netherlands Norway
## 4 2 1 2 3
## Poland Portugal Romania Spain Sweden
## 2 1 4 1 3
## Switzerland UK USSR W Germany Yugoslavia
## 2 2 4 2 4
##
## Within cluster sum of squares by cluster:
## [1] 18.925874 37.885439 5.900318 24.091128
## (between_SS / total_SS = 59.8 %)
##
## Available components:
##
## [1] "cluster" "centers" "totss" "withinss" "tot.withinss"
## [6] "betweenss" "size" "iter" "ifault"
Hora lo que hacemos es
aggregate(protein.scaled,# de este DF
by = list(cluster = km$cluster),# de la lista de cluster que esta contenida en el metodo de calculo anterior
mean)#dame la media para cada cluster ( conjunto de datos )
## cluster RedMeat WhiteMeat Eggs Milk Fish Cereals
## 1 1 -0.508801956 -1.1088009 -0.4124850 -0.8320414 0.9819154 0.1300253
## 2 2 0.613615213 0.7738178 0.7161344 0.3066547 -0.2598064 -0.5146342
## 3 3 0.006572897 -0.2290150 0.1914789 1.3458748 1.1582546 -0.8722721
## 4 4 -0.790141851 -0.5267887 -1.1655757 -0.9047559 -0.9504683 1.4383272
## Starch Nuts Fr.Veg
## 1 -0.1842010 1.3108846 1.6292449
## 2 0.4208082 -0.6131165 0.1060327
## 3 0.1676780 -0.9553392 -1.1148048
## 4 -0.7604664 0.8870168 -0.5373533
Visualicemos como se ve de manera grafica este
library(factoextra)
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
fviz_cluster(km, data = protein.scaled)
#mini Bach K-means para segmentar imagenes intalamos paquetes y cargamos
#install.packages(c("OpenImageR", "ClusterR"))
library(OpenImageR)#
library(ClusterR)#
## Loading required package: gtools
##
## Attaching package: 'gtools'
## The following object is masked from 'package:e1071':
##
## permutations
Cargamos la imagen pequena
imagename <- "../../r-course-master/data/tema5/bodegon.jpg"
Hacemos que leea la imagen
img <- readImage(imagename)
Usamos un algoritmo que redimenciona el tamano y cantidad de pixeles dependiendo del algoritmo que se desee usar
img.resize <- resizeImage(img, 350, 350,
method = "bilinear")#lo que hacemos es redimencionar los pixeles que se desea
imageShow(img.resize)
Vectorizamos la imagen
img.vector <- apply(img.resize, 3,# se compacta de 3 en 3 los pixeles
as.vector)
Veamos la dimencion del vector
dim(img.vector)#Elementos y pixeles
## [1] 122500 3
Predice el centroide de cadauno de los trosos el los que se dividira la imagen
kmmb<-MiniBatchKmeans(img.vector,
clusters = 10,#aprox numero de colores
batch_size = 20, #
num_init = 5,#Numero inicial
max_iters = 100,#Maximo de iteraciones
init_fraction = 0.2,#
initializer = "kmeans++",#metodo
early_stop_iter = 10, # que no se pare nunca antes de la iteracion 10
verbose = F)
kmmb
## KMeans Cluster
## Call: NULL
## Data cols: 3
## Centroids: 10
## BSS/SS:
## SS: = 15136.32 (WSS) + (BSS)
Predice los centroides Mira cuales de los 10 colores tiene mas cerca
prmb <- predict_MBatchKMeans(img.vector,
kmmb$centroids)#de esta variable toma los centroides
por alguna extrana rason esto no me lo compila
library(OpenImageR)
get.cent.mb <- kmmb$centroids#jala los centroides
new.img <- get.cent.mb[prmb,]#crea la nueva imagen
#dim(new.img) <- c(nrow(new.img), ncol(img),3)
#imageShow(new.img)
#caracteristicas de clustering estandar 1. Tiende a crear clusters convexos 2.Tiende a crear clusters redondos 3. clasifica todos los puntos aunque sean outliners
#Tecnicas de Particionar alrededor de los k medoides medoide: es el que mas se parece a los datos de ese grupo de datos (geometricamente el de en medio )
protein<-read.csv("../../r-course-master/data/tema5/protein.csv")
Trasformaciones al DF Nota importante: el escalado es fundamental esn estas tecnicas con la finalidad de evitar inconvenientes con los outliners
rownames(protein) = protein$Country#ponemos nombre a las filas
protein$Country = NULL#eliminamos esas filas
protein.scaled <- as.data.frame(scale(protein))#escalamos el DF
Cargamos las librerias
library(cluster)
library(factoextra)
Medoides (algoritmo pam ) Caracteristica y ventaja de este algoritmo ( lo que hace es toma un valor existente dentro de Df y lo toma para cada uno)
km <- pam(protein.scaled,#DF
4)# numero de medoides
km
## Medoids:
## ID RedMeat WhiteMeat Eggs Milk Fish Cereals
## Romania 18 -1.0839304 -0.43204252 -1.2848772 -0.8461152 -0.9651632 1.5810786
## W Germany 24 0.4696633 1.24631815 1.0415022 0.2375653 -0.2598064 -1.2435778
## Sweden 20 0.0215113 -0.02598752 0.5046454 1.0679178 0.9451781 -1.1615716
## Spain 19 -0.8150392 -1.21708219 0.1467409 -1.1979595 0.7982288 -0.2777275
## Starch Nuts Fr.Veg
## Romania -0.7196689 1.1220326 -0.7406162
## W Germany 0.5654541 -0.7916675 -0.1862628
## Sweden -0.3524909 -0.8420280 -1.1840990
## Spain 0.8714358 1.4241958 1.6985391
## Clustering vector:
## Albania Austria Belgium Bulgaria Czechoslovakia
## 1 2 2 1 2
## Denmark E Germany Finland France Greece
## 3 2 3 2 4
## Hungary Ireland Italy Netherlands Norway
## 1 2 4 2 3
## Poland Portugal Romania Spain Sweden
## 2 4 1 4 3
## Switzerland UK USSR W Germany Yugoslavia
## 2 2 1 2 1
## Objective function:
## build swap
## 1.847172 1.839215
##
## Available components:
## [1] "medoids" "id.med" "clustering" "objective" "isolation"
## [6] "clusinfo" "silinfo" "diss" "call" "data"
Veamoslo graficamente
fviz_cluster(km)
Medoide ( algoritmo clara) Extrae muestras y utiliza el partition arround mediods(pAm) Tecnica de particion para datos enormes ( ayuda para problemas de memoria)
1._Hace muetreo del data set original y elabora un cluster a la muestra 2._Devuelve el mejor clustering de todos los que elabora
clarafit <- clara(protein.scaled, 4,
samples = 6)#tamano de la muestra
clarafit
## Call: clara(x = protein.scaled, k = 4, samples = 6)
## Medoids:
## RedMeat WhiteMeat Eggs Milk Fish Cereals
## Romania -1.0839304 -0.43204252 -1.2848772 -0.8461152 -0.9651632 1.5810786
## W Germany 0.4696633 1.24631815 1.0415022 0.2375653 -0.2598064 -1.2435778
## Sweden 0.0215113 -0.02598752 0.5046454 1.0679178 0.9451781 -1.1615716
## Spain -0.8150392 -1.21708219 0.1467409 -1.1979595 0.7982288 -0.2777275
## Starch Nuts Fr.Veg
## Romania -0.7196689 1.1220326 -0.7406162
## W Germany 0.5654541 -0.7916675 -0.1862628
## Sweden -0.3524909 -0.8420280 -1.1840990
## Spain 0.8714358 1.4241958 1.6985391
## Objective function: 1.839215
## Clustering vector: Named int [1:25] 1 2 2 1 2 3 2 3 2 4 1 2 4 2 3 2 4 1 ...
## - attr(*, "names")= chr [1:25] "Albania" "Austria" "Belgium" "Bulgaria" "Czechoslovakia" "Denmark" "E Germany" ...
## Cluster sizes: 6 11 4 4
## Best sample:
## [1] Albania Austria Belgium Bulgaria Czechoslovakia
## [6] Denmark E Germany Finland France Greece
## [11] Hungary Ireland Italy Netherlands Norway
## [16] Poland Portugal Romania Spain Sweden
## [21] Switzerland UK USSR W Germany Yugoslavia
##
## Available components:
## [1] "sample" "medoids" "i.med" "clustering" "objective"
## [6] "clusinfo" "diss" "call" "silinfo" "data"
Veamos este algoritmo
fviz_cluster(clarafit)
#Validando los resultados de un cluster
Como puedo saber que porcenteje estaq bien catalogado y cuando no esto sirve para elejir o variar el metodo de clustering Validacion de estabilidad (consistencia del cluster )= va quitando columnas (variables )y ve si se meueve mucho la casificacion Cargamos los paquetes
#install.packages(c("fpc", "NbClust"))
library(factoextra)
library(cluster)
library(fpc)
library(NbClust)
volvemos a trabajar con el dataset de proteinas explicado en las lineas de codigo 2502 aprox
protein <- read.csv("../../r-course-master/data/tema5/protein.csv")
rownames(protein) = protein$Country
protein$Country = NULL
protein.scaled <- as.data.frame(scale(protein))
Determinar numero de clusters que se desean nota ver “Conclusion”, muestra k=3 , pero el numero de diviciones es 7 que correponde a esa linea
nb <- NbClust(protein.scaled,#DF escalado
distance = "euclidean",#Tipo de distancia
min.nc = 2,# minimo de cluster
max.nc = 12, #Maximo de cluster
method = "ward.D2",# metodo aglomerativo
index = "all")#paramerto por defecto
## Warning in pf(beale, pp, df2): NaNs produced
## *** : The Hubert index is a graphical method of determining the number of clusters.
## In the plot of Hubert index, we seek a significant knee that corresponds to a
## significant increase of the value of the measure i.e the significant peak in Hubert
## index second differences plot.
##
## *** : The D index is a graphical method of determining the number of clusters.
## In the plot of D index, we seek a significant knee (the significant peak in Dindex
## second differences plot) that corresponds to a significant increase of the value of
## the measure.
##
## *******************************************************************
## * Among all indices:
## * 6 proposed 2 as the best number of clusters
## * 7 proposed 3 as the best number of clusters
## * 3 proposed 6 as the best number of clusters
## * 1 proposed 7 as the best number of clusters
## * 1 proposed 10 as the best number of clusters
## * 5 proposed 12 as the best number of clusters
##
## ***** Conclusion *****
##
## * According to the majority rule, the best number of clusters is 3
##
##
## *******************************************************************
generemos una visualizacion mas sencilla El analisis
fviz_nbclust(nb) + theme_minimal()
## Warning in if (class(best_nc) == "numeric") print(best_nc) else if
## (class(best_nc) == : la condición tiene longitud > 1 y sólo el primer elemento
## será usado
## Warning in if (class(best_nc) == "matrix") .viz_NbClust(x, print.summary, : la
## condición tiene longitud > 1 y sólo el primer elemento será usado
## Warning in if (class(best_nc) == "numeric") print(best_nc) else if
## (class(best_nc) == : la condición tiene longitud > 1 y sólo el primer elemento
## será usado
## Warning in if (class(best_nc) == "matrix") {: la condición tiene longitud > 1 y
## sólo el primer elemento será usado
## Among all indices:
## ===================
## * 2 proposed 0 as the best number of clusters
## * 1 proposed 1 as the best number of clusters
## * 6 proposed 2 as the best number of clusters
## * 7 proposed 3 as the best number of clusters
## * 3 proposed 6 as the best number of clusters
## * 1 proposed 7 as the best number of clusters
## * 1 proposed 10 as the best number of clusters
## * 5 proposed 12 as the best number of clusters
##
## Conclusion
## =========================
## * According to the majority rule, the best number of clusters is 3 .
Ahora que tenemos el numero de clusters mas eficiente generamos kmeans
km.res <- kmeans(protein.scaled, 3)
Creamos una sirueta : que es otro tipo de analisis
sil.km <- silhouette(km.res$cluster, #del objeto creado
dist(protein.scaled))#calcule la distancia del Df inicial
Del objeto que creamos le la varibale de la sirueta le hacemos un summary
sil.sum <- summary(sil.km)
sil.sum
## Silhouette of 25 units in 3 clusters from silhouette.default(x = km.res$cluster, dist = dist(protein.scaled)) :
## Cluster sizes and average silhouette widths:
## 4 10 11
## 0.4187964 0.1936819 0.2068237
## Individual silhouette widths:
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -0.03801 0.14773 0.23808 0.23548 0.32609 0.46940
visualicemos este objeto (la sirueta) Para medir la eficiencia del objeto anchura (analisis de DAnn),conectividad , separacion ,
fviz_silhouette(sil.km)
## cluster size ave.sil.width
## 1 1 4 0.42
## 2 2 10 0.19
## 3 3 11 0.21
25 paises , pues 25 columnas mirar la grafica de arriba entre mas cerca de -1 esta peor clusterizado y entre mas cercano a 1 mejor esta clasificado
la linea intermedia es la linea roja punteada es el promedio de que tan bien se clasifico entre la k elejida
“ver teoria de clusters” nota : es importante notar que si todos salen positivos es muy bueno
fviz_cluster(km.res, data = protein.scaled)
dd <- dist(protein.scaled, method = "euclidean")#calculo de distancias
km_stats <- fpc::cluster.stats(dd, km.res$cluster)#calculo de los estados con base a las distancias recien hechas
km_stats
## $n
## [1] 25
##
## $cluster.number
## [1] 3
##
## $cluster.size
## [1] 4 10 11
##
## $min.cluster.size
## [1] 4
##
## $noisen
## [1] 0
##
## $diameter
## [1] 2.633487 6.612010 4.499548
##
## $average.distance
## [1] 1.940134 3.792570 2.654427
##
## $median.distance
## [1] 2.028172 3.627695 2.581981
##
## $separation
## [1] 2.39223 2.71661 2.39223
##
## $average.toother
## [1] 4.196834 4.904011 4.398396
##
## $separation.matrix
## [,1] [,2] [,3]
## [1,] 0.000000 3.259916 2.39223
## [2,] 3.259916 0.000000 2.71661
## [3,] 2.392230 2.716610 0.00000
##
## $ave.between.matrix
## [,1] [,2] [,3]
## [1,] 0.000000 5.134783 3.344152
## [2,] 5.134783 0.000000 4.820093
## [3,] 3.344152 4.820093 0.000000
##
## $average.between
## [1] 4.550228
##
## $average.within
## [1] 2.995397
##
## $n.between
## [1] 194
##
## $n.within
## [1] 106
##
## $max.diameter
## [1] 6.61201
##
## $min.separation
## [1] 2.39223
##
## $within.cluster.ss
## [1] 114.7435
##
## $clus.avg.silwidths
## 1 2 3
## 0.4187964 0.1936819 0.2068237
##
## $avg.silwidth
## [1] 0.2354826
##
## $g2
## NULL
##
## $g3
## NULL
##
## $pearsongamma
## [1] 0.5320644
##
## $dunn
## [1] 0.3618008
##
## $dunn2
## [1] 0.8817642
##
## $entropy
## [1] 1.020961
##
## $wb.ratio
## [1] 0.658296
##
## $ch
## [1] 9.707054
##
## $cwidegap
## [1] 2.062677 2.932773 2.194416
##
## $widestgap
## [1] 2.932773
##
## $sindex
## [1] 2.39223
##
## $corrected.rand
## NULL
##
## $vi
## NULL
Suma de los cuadrados internos del cluster
km_stats$within.cluster.ss# este es el total de todos los centros
## [1] 114.7435
km_stats$clus.avg.silwidths#promedio de cada K
## 1 2 3
## 0.4187964 0.1936819 0.2068237
#indice de Dunn entre mas alejado este un cluster ( ente mas grande es este numero es mejor , significa que el equivocarse al clasificar se hace mas raro , minimiza el reisgo de equivocarse)
km_stats$dunn# indice de dun (distancia mas pequena de un dato entre dos clusters /distancia maxima entre elementos dentro de un cluster)
## [1] 0.3618008
Vamos a comparar la diferencia de los indices de Dunn entre metodos
kmed <- pam(protein.scaled, 3)
sil.kmed <- silhouette(kmed$clustering,
dist(protein.scaled))
fviz_cluster(kmed, data = protein.scaled)#graficamos las categorias del calculo de pam
fviz_silhouette(sil.kmed)# calculamos la cirueta del paquete PAM
## cluster size ave.sil.width
## 1 1 6 0.31
## 2 2 15 0.38
## 3 3 4 0.21
kmed_stats <- cluster.stats(dd, kmed$clustering)
kmed_stats$within.cluster.ss
## [1] 105.9863
kmed_stats$clus.avg.silwidths
## 1 2 3
## 0.3062056 0.3811136 0.2063242
kmed_stats$dunn
## [1] 0.5678917
Comparamos los 2 clusters
res.com <- cluster.stats(dd, km.res$cluster,
kmed$clustering)
res.com$corrected.rand#Indice de correcion aleatoria ( simiitudes )entre -1 y 1( conhincidencia casi exacta )( este lo queremos mas hacia el 1)
## [1] 0.5243425
res.com$vi#Variacion entre custers (distancia entre custers )( lo mas pequeno posible )
## [1] 0.6171538
#tecnicas avanzadas de clustering Un [unto de la frontera en un cluster es quel que :tiene unvecindario inferior al minimo estipulado a la distancia menor o igual a la indicada #clustering basado en densidades ( cuando tenemos ruido y outliners )
library(fpc)
library(factoextra)
data("multishapes", package = "factoextra")# esta precargado
como se ve el DF
par(mfrow=c(1,1))
head(multishapes)
## x y shape
## 1 -0.8037393 -0.8530526 1
## 2 0.8528507 0.3676184 1
## 3 0.9271795 -0.2749024 1
## 4 -0.7526261 -0.5115652 1
## 5 0.7068462 0.8106792 1
## 6 1.0346985 0.3946550 1
Obtenemos la columna 1(X) y 2(y)
dataPoints <- multishapes[,1:2]
plot(multishapes)
plot(dataPoints)# esta es la que vamos a trabajar
intentemos meter estos valores dentro de un k-means Esta agrupando horrible (jajajaja)
km <- kmeans(dataPoints, 5)
fviz_cluster(km, data= dataPoints)
eliminamos los ruidos
dsFit <- dbscan(dataPoints,
eps = 0.15,#epsilon :Radio que debe de existir entre valores
MinPts = 5)#minimo de puntos:no se cree un cluster abajo del numero indicado
dsFit
## dbscan Pts=1100 MinPts=5 eps=0.15
## 0 1 2 3 4 5
## border 31 24 1 5 7 1
## seed 0 386 404 99 92 50
## total 31 410 405 104 99 51
veamos como lo categoriza
fviz_cluster(dsFit, dataPoints, geom = "point")
BIC:Criterio de informacion bayesiano clasification : uncertanty :regiones de incertidumbre ( el algoritmo no sabe donde poner estos datos ) density:
#install.packages("mclust")
library(mclust)
## Package 'mclust' version 5.4.9
## Type 'citation("mclust")' for citing this R package in publications.
##
## Attaching package: 'mclust'
## The following object is masked _by_ '.GlobalEnv':
##
## banknote
## The following object is masked from 'package:VIM':
##
## diabetes
## The following object is masked from 'package:purrr':
##
## map
mclust <- Mclust(dataPoints)
plot(mclust)
que hizo Mclust Modelo Gaussiano mixto finito
summary(mclust)
## ----------------------------------------------------
## Gaussian finite mixture model fitted by EM algorithm
## ----------------------------------------------------
##
## Mclust VEV (ellipsoidal, equal shape) model with 9 components:
##
## log-likelihood n df BIC ICL
## -2062.757 1100 45 -4440.653 -4577.743
##
## Clustering table:
## 1 2 3 4 5 6 7 8 9
## 134 187 112 132 128 142 108 104 53
#install.packages("corrplot")
library(corrplot)#correlaciones
## corrplot 0.92 loaded
bh <- read.csv("../../r-course-master/data/tema5/BostonHousing.csv")
Hacemos el objeto para las correlaciones
corr <- cor(bh[,-14])
corr
## CRIM ZN INDUS CHAS NOX
## CRIM 1.00000000 -0.20046922 0.40658341 -0.055891582 0.42097171
## ZN -0.20046922 1.00000000 -0.53382819 -0.042696719 -0.51660371
## INDUS 0.40658341 -0.53382819 1.00000000 0.062938027 0.76365145
## CHAS -0.05589158 -0.04269672 0.06293803 1.000000000 0.09120281
## NOX 0.42097171 -0.51660371 0.76365145 0.091202807 1.00000000
## RM -0.21924670 0.31199059 -0.39167585 0.091251225 -0.30218819
## AGE 0.35273425 -0.56953734 0.64477851 0.086517774 0.73147010
## DIS -0.37967009 0.66440822 -0.70802699 -0.099175780 -0.76923011
## RAD 0.62550515 -0.31194783 0.59512927 -0.007368241 0.61144056
## TAX 0.58276431 -0.31456332 0.72076018 -0.035586518 0.66802320
## PTRATIO 0.28994558 -0.39167855 0.38324756 -0.121515174 0.18893268
## B -0.38506394 0.17552032 -0.35697654 0.048788485 -0.38005064
## LSTAT 0.45562148 -0.41299457 0.60379972 -0.053929298 0.59087892
## RM AGE DIS RAD TAX PTRATIO
## CRIM -0.21924670 0.35273425 -0.37967009 0.625505145 0.58276431 0.2899456
## ZN 0.31199059 -0.56953734 0.66440822 -0.311947826 -0.31456332 -0.3916785
## INDUS -0.39167585 0.64477851 -0.70802699 0.595129275 0.72076018 0.3832476
## CHAS 0.09125123 0.08651777 -0.09917578 -0.007368241 -0.03558652 -0.1215152
## NOX -0.30218819 0.73147010 -0.76923011 0.611440563 0.66802320 0.1889327
## RM 1.00000000 -0.24026493 0.20524621 -0.209846668 -0.29204783 -0.3555015
## AGE -0.24026493 1.00000000 -0.74788054 0.456022452 0.50645559 0.2615150
## DIS 0.20524621 -0.74788054 1.00000000 -0.494587930 -0.53443158 -0.2324705
## RAD -0.20984667 0.45602245 -0.49458793 1.000000000 0.91022819 0.4647412
## TAX -0.29204783 0.50645559 -0.53443158 0.910228189 1.00000000 0.4608530
## PTRATIO -0.35550149 0.26151501 -0.23247054 0.464741179 0.46085304 1.0000000
## B 0.12806864 -0.27353398 0.29151167 -0.444412816 -0.44180801 -0.1773833
## LSTAT -0.61380827 0.60233853 -0.49699583 0.488676335 0.54399341 0.3740443
## B LSTAT
## CRIM -0.38506394 0.4556215
## ZN 0.17552032 -0.4129946
## INDUS -0.35697654 0.6037997
## CHAS 0.04878848 -0.0539293
## NOX -0.38005064 0.5908789
## RM 0.12806864 -0.6138083
## AGE -0.27353398 0.6023385
## DIS 0.29151167 -0.4969958
## RAD -0.44441282 0.4886763
## TAX -0.44180801 0.5439934
## PTRATIO -0.17738330 0.3740443
## B 1.00000000 -0.3660869
## LSTAT -0.36608690 1.0000000
Grafiquemos las correlaciones Rojo =poco correlacionado azul =muy correlacionado
corrplot(corr, method = "circle")
#scale = T, matriz de correlaciones #scale = F, matriz de covarianzas
aqui vamos a correr el ejercicio donde podemos observar cuales son
bh.acp <- prcomp(bh[,-14], scale = T)#calculo de analisis de con cuantas variables que % del DF puedo explicar (cumulative Proportion )
summary(bh.acp)
## Importance of components:
## PC1 PC2 PC3 PC4 PC5 PC6 PC7
## Standard deviation 2.4752 1.1972 1.11473 0.92605 0.91368 0.81081 0.73168
## Proportion of Variance 0.4713 0.1103 0.09559 0.06597 0.06422 0.05057 0.04118
## Cumulative Proportion 0.4713 0.5816 0.67713 0.74310 0.80732 0.85789 0.89907
## PC8 PC9 PC10 PC11 PC12 PC13
## Standard deviation 0.62936 0.5263 0.46930 0.43129 0.41146 0.25201
## Proportion of Variance 0.03047 0.0213 0.01694 0.01431 0.01302 0.00489
## Cumulative Proportion 0.92954 0.9508 0.96778 0.98209 0.99511 1.00000
Grafiquemoslo lo que vamos a observar son las componentes que explican el DF
plot(bh.acp)
plot(bh.acp, type = "lines")
Grafiquemos con color estas son las columnas que tenemos que utilizar
biplot(bh.acp, col = c("gray", "red"))
head(bh.acp$x,5)
La matriz de rotacion Cual es la que explica mejor los datos
#bh.acp$rotation
Desviacion estandar conclusion ( las primeras 7 son suficientes para entender los datos ) alijerar ( disminuir el tamano del df)
bh.acp$sdev
## [1] 2.4752472 1.1971947 1.1147272 0.9260535 0.9136826 0.8108065 0.7316803
## [8] 0.6293626 0.5262541 0.4692950 0.4312938 0.4114644 0.2520104
#Series temporales y su utilidad Cargamos los datos
AAPL = read.csv("../../r-course-master/data/tema6/AAPL.csv", stringsAsFactors = F)
AMZN = read.csv("../../r-course-master/data/tema6/AMZN.csv", stringsAsFactors = F)
FB = read.csv("../../r-course-master/data/tema6/FB.csv", stringsAsFactors = F)
GOOG = read.csv("../../r-course-master/data/tema6/GOOG.csv", stringsAsFactors = F)
str(AAPL)
## 'data.frame': 2519 obs. of 7 variables:
## $ Date : chr "2007-12-31" "2008-01-02" "2008-01-03" "2008-01-04" ...
## $ Open : num 28.5 28.5 27.9 27.4 25.9 ...
## $ High : num 28.6 28.6 28.2 27.6 26.2 ...
## $ Low : num 28.2 27.5 27.5 25.6 24.3 ...
## $ Close : num 28.3 27.8 27.8 25.7 25.4 ...
## $ Adj.Close: num 25.4 25 25 23.1 22.7 ...
## $ Volume : int 134833300 269794700 210516600 363958000 518048300 380954000 453470500 370743800 308071400 275112600 ...
Filtramos el dia que no nos sirve
AAPL=AAPL[AAPL$Date>="2008-01-01",]
AMZN=AMZN[AMZN$Date>="2008-01-01",]
GOOG=GOOG[GOOG$Date>="2008-01-01",]
Hacemos el casting a fecha de las mismas…
AAPL$Date = as.Date(AAPL$Date)
AMZN$Date = as.Date(AMZN$Date)
FB$Date = as.Date(FB$Date)
GOOG$Date = as.Date(GOOG$Date)
Grafiquemos
library(ggplot2)
ggplot(AAPL, aes(Date#eje X
, Close#eje Y
)) +
geom_line(aes(color="Apple")) +
geom_line(data=AMZN, aes(color = "Amazon"))+
geom_line(data=FB, aes(color="Facebook"))+
geom_line(data=GOOG, aes(color="Google"))+
labs(color="Legend")+
scale_color_manual("",
breaks = c("Apple", "Amazon", "Facebook", "Google" ),
values = c("green", "yellow", "blue", "red"))+
ggtitle("Comparaciones de cierre de stocks")+
theme(plot.title = element_text(lineheight = 0.7, face = "bold"))
# cargar datos en tiempo real
#install.packages("quantmod")
library(quantmod)
## Loading required package: xts
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
##
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
##
## first, last
## Loading required package: TTR
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
##
## Attaching package: 'quantmod'
## The following object is masked from 'package:Hmisc':
##
## Lag
se conecta y es un objeto de tipo xts
getSymbols("AAPL")
## 'getSymbols' currently uses auto.assign=TRUE by default, but will
## use auto.assign=FALSE in 0.5-0. You will still be able to use
## 'loadSymbols' to automatically load data. getOption("getSymbols.env")
## and getOption("getSymbols.auto.assign") will still be checked for
## alternate defaults.
##
## This message is shown once per session and may be disabled by setting
## options("getSymbols.warning4.0"=FALSE). See ?getSymbols for details.
## [1] "AAPL"
Grafica volumen en millones
barChart(AAPL)
chartSeries(AAPL, TA = "NULL")#tecnival indicatior
candleChart(AAPL, up.col = "black",
dn.col="red", theme = "white")
Aqui muestra los porcentajes de cada uno de los valores ( variaciones en la media)
chartSeries(AAPL[,4],TA = "addMACD()")
Obtengamos la de Netflix
getSymbols("BTC")
## [1] "BTC"
barChart(BTC)
chartSeries(BTC, TA = "NULL")
chartSeries(BTC[,4],TA = "addMACD()")
EPOCH : 1 de Enero de 1970
HOY
Sys.Date()
## [1] "2022-04-03"
ano a dos digitos
as.Date("1/1/80", format="%m/%d/%y")
## [1] "1980-01-01"
ano cuatro digitos
as.Date("1/1/1980", format="%m/%d/%Y")
## [1] "1980-01-01"
Tipo de formato de fecha yyyy-mm-dd o yyyy/mm/dd
as.Date("2018/01/06")
## [1] "2018-01-06"
nac <- as.Date("88/05/19")
fecha a -> numero
as.numeric(as.Date("1988/05/19"))#cuantos dias han pasado
## [1] 6713
as.numeric(Sys.Date())
## [1] 19085
#Nombre de los meses
as.Date("Ene 6, 2018", format="%b %d, %Y")#debes tener cuidado con ls nombres
## [1] NA
as.Date("Enero 6, 18", format="%B %d, %y")
## [1] "2018-01-06"
Fechas desde dias de EPOCH
dt <- 2018 #2018 dias
class(dt) <- "Date"#cambias de numero a fecha
dt#imprimes dt
## [1] "1975-07-12"
ahora agamoslo alreves
dt <- -2018
class(dt) <- "Date"
dt
## [1] "1964-06-23"
Fechas desde dias de un punto dado
dt <- as.Date(2018, origin =
as.Date("1988-05-19"))#sumas dias desde la fecha dada
as.Date(-2018, origin = as.Date("1988-05-19"))#restas desde un numero
## [1] "1982-11-09"
Componentes de las fechas
dt
## [1] "1993-11-27"
anoo en 4 digitos
format(dt, "%Y")#dame solo el ano
## [1] "1993"
ano como numero en lugar de String
as.numeric(format(dt, "%Y"))
## [1] 1993
ano en 2 digitos
format(dt, "%y")
## [1] "93"
ano como numero en lugar de String
as.numeric(format(dt, "%y"))
## [1] 93
Mes como String
format(dt, "%b")#mes cortado
## [1] "nov."
format(dt, "%B")# mes completo
## [1] "noviembre"
months(dt)# mes completo
## [1] "noviembre"
weekdays(dt)#dia de la semana
## [1] "sábado"
quarters(dt)#trimestre
## [1] "Q4"
julian(dt)#Calendario juliano (dias que han pasado )
## [1] 8731
## attr(,"origin")
## [1] "1970-01-01"
julian(dt, origin = as.Date("1980/06/25"))##calendario juliano
## [1] 4903
## attr(,"origin")
## [1] "1980-06-25"
dt <- as.Date("1/1/2001", format = "%d/%m/%Y")
dt2 <- as.Date("2001/01/02")
dt2-dt#( lo arroja como string) muestra la diferencia de fechas en dias
## Time difference of 1 days
dt-dt2# muestra la diferencia de fechas en dias( lo arroja como string)
## Time difference of -1 days
as.numeric(dt-dt2)
## [1] -1
Comparar fechas
dt<dt2
## [1] TRUE
dt==dt2
## [1] FALSE
dt2<dt
## [1] FALSE
secuencia de fechas
seq(dt, dt+365, "month")# va contando por mes
## [1] "2001-01-01" "2001-02-01" "2001-03-01" "2001-04-01" "2001-05-01"
## [6] "2001-06-01" "2001-07-01" "2001-08-01" "2001-09-01" "2001-10-01"
## [11] "2001-11-01" "2001-12-01" "2002-01-01"
seq(dt, as.Date("2001/01/10"), "day")# cuenta por dias
## [1] "2001-01-01" "2001-01-02" "2001-01-03" "2001-01-04" "2001-01-05"
## [6] "2001-01-06" "2001-01-07" "2001-01-08" "2001-01-09" "2001-01-10"
Biestral
seq(dt, dt+365, "2 months")
## [1] "2001-01-01" "2001-03-01" "2001-05-01" "2001-07-01" "2001-09-01"
## [6] "2001-11-01" "2002-01-01"
Cuatrimestral
seq(from = dt, by = "4 months", length.out = 6)[3]#logitud total de 6 meses# el trecer semestre
## [1] "2001-09-01"
secuencias por semana
seq(from = dt, by = "3 weeks", length.out = 6)
## [1] "2001-01-01" "2001-01-22" "2001-02-12" "2001-03-05" "2001-03-26"
## [6] "2001-04-16"
wmt <- read.csv("../../r-course-master/data/tema6/WMT.csv", stringsAsFactors = F)
Grafiquemos
plot(wmt$Adj.Close, type = "l")
calcula las diferencias del uno al dos diff(difreencia)y lo graficamos
d <- diff(wmt$Adj.Close, lag = 2)
plot(d, type="l")
Creemos un histograma
hist(d, prob=T,
ylim = c(0,0.6),#Altura maxima en el histograma
breaks = 30,
main = "Walmart Stocks", col = "green")
lines(density(d), lwd=3)
carguemos una variación de los datos
wmt.m <- read.csv("../../r-course-master/data/tema6/WMT-monthly.csv", stringsAsFactors = F)
hacemos la fila 2 la nueva fila 1
wmt.m <- wmt.m[2:nrow(wmt.m),]
wmt.m$Date <- as.Date(wmt.m$Date)
Creemos una serie temporal
wmt.m.ts <- ts(wmt.m$Adj.Close)
Veamos las difreencias
d <- diff(as.numeric(wmt.m.ts))
plot(d, type="l")
wmt.m.return <- d / lag(as.numeric(wmt.m.ts),#calcula en intrevalos de 2 en 2 etc
k = -1)# con respecto al periodo anterior
## Warning in d/lag(as.numeric(wmt.m.ts), k = -1): longitud de objeto mayor no es
## múltiplo de la longitud de uno menor
Pintemos el hitograma de este analisis
#hist(wmt.m.return, prob = T, col = "green",ylim=c(0,8))
#lines(density(wmt.m.return), lwd=3)
s <- read.csv("../../r-course-master/data/tema6/ts-example.csv")
head(s)[1:3,]
## [1] 51 56 37
s.ts <- ts(s)#hacemos una serie temporal
class(s.ts)#vemos la case el objeto que acabamos de definir
## [1] "ts"
plot(s.ts)#graficamos este objeto que es una serie temporal
Pedimos que inicie de los diferentes puntos de partida
s.ts.a <- ts(s, start = 2000)# esto es anualizado
plot(s.ts.a)
Pedimos que la serie temporal se ejecute de manera mensual
s.ts.m <- ts(s, start = c(2001,1),#En este caso
frequency = 12)#12 muestras anuales (12 meses en el ano)
plot(s.ts.m)
Pedimos que la serie temporal se ejecute de manera trimestestral
s.ts.q <- ts(s, start = 2001, frequency = 4)
plot(s.ts.q)
Asi se analiza el objeto de tipo mensual
start(s.ts.m)# cuando empieza
## [1] 2001 1
end(s.ts.m)#cuando termina
## [1] 2009 4
frequency(s.ts.m)#frecuencia
## [1] 12
Asi se analiza el objeto de tipo trimestral
start(s.ts.q)
## [1] 2001 1
end(s.ts.q)
## [1] 2025 4
frequency(s.ts.q)
## [1] 4
#cuando se tienene diferentes columnas
prices <- read.csv("../../r-course-master/data/tema6/prices.csv")
head(prices)[1:5,]
## white_flour unleaded_gas
## 1 0.203 1.131
## 2 0.205 1.207
## 3 0.211 1.252
## 4 0.206 1.264
## 5 0.207 1.266
Signamos una serie temporal
prices.ts <- ts(prices, start = c(1980,1), frequency = 12)
plot(prices.ts)
Hacer un unico grafico con las 2 lineas
plot(prices.ts, plot.type = "single", col = 1:2)
legend("topleft"#donde lo vas a poner
, colnames(prices.ts), col = 1:2, lty = 1)
https://www.bls.gov/ # Donde buscar datos en Mexico https://en.www.inegi.org.mx/
Nota: cuando se observa una grafica como la antrior , se podria inferir que es de tipo multiplicativa
El numero anterior multiplicado por otro numero
Recordemos la propiedad de los logaritmos log(a*b) = log (a) + log(b) #SLT(Seasonal Decomposition of Time Series by Loess) metodo de descomposicion por metodo slt Estacionalidad
flour.l <- log(prices.ts[,1])#se aplica el logaritmo a la columna 1 ( la harina )
flour.stl<- stl(flour.l,#datos con el logaritmo
s.window = "period")#como se tomo el periodo original
Gafriquemoslo 1ra gafica :la grafica original 2da: periodicidad 3ra;La tendencia general con los datos aplicados 4ta:el ruido que presentan las fluctuaciones
plot(flour.stl)#la de arriba es la mismo
flour.stl
## Call:
## stl(x = flour.l, s.window = "period")
##
## Components
## seasonal trend remainder
## Jan 1980 0.0019097886 -1.5955813 -8.777615e-04
## Feb 1980 0.0012341216 -1.5896830 3.703570e-03
## Mar 1980 0.0006245546 -1.5837847 2.726295e-02
## Apr 1980 -0.0125038908 -1.5775729 1.019768e-02
## May 1980 0.0136392482 -1.5713611 -1.731459e-02
## Jun 1980 0.0209864093 -1.5649811 -1.665309e-02
## Jul 1980 0.0283284639 -1.5586010 -1.150674e-02
## Aug 1980 0.0318618948 -1.5523594 -1.661979e-02
## Sep 1980 0.0151345828 -1.5461177 -1.079612e-02
## Oct 1980 -0.0107891741 -1.5393430 -1.036836e-03
## Nov 1980 -0.0424312547 -1.5325683 1.910237e-02
## Dec 1980 -0.0479947475 -1.5255146 1.761217e-02
## Jan 1981 0.0019097886 -1.5184609 -1.130684e-02
## Feb 1981 0.0012341216 -1.5132263 6.914299e-03
## Mar 1981 0.0006245546 -1.5079918 1.125798e-02
## Apr 1981 -0.0125038908 -1.5040587 2.490767e-02
## May 1981 0.0136392482 -1.5001256 3.681048e-03
## Jun 1981 0.0209864093 -1.4973157 -2.080388e-03
## Jul 1981 0.0283284639 -1.4945058 -1.223233e-02
## Aug 1981 0.0318618948 -1.4931905 -8.347395e-03
## Sep 1981 0.0151345828 -1.4918752 -1.491430e-02
## Oct 1981 -0.0107891741 -1.4918316 1.540053e-02
## Nov 1981 -0.0424312547 -1.4917881 2.462679e-02
## Dec 1981 -0.0479947475 -1.4918078 1.654234e-02
## Jan 1982 0.0019097886 -1.4918275 -6.191515e-03
## Feb 1982 0.0012341216 -1.4926852 4.230768e-03
## Mar 1982 0.0006245546 -1.4935428 -7.665224e-03
## Apr 1982 -0.0125038908 -1.4951881 -6.435745e-03
## May 1982 0.0136392482 -1.4968334 4.784457e-03
## Jun 1982 0.0209864093 -1.4987342 -5.057449e-03
## Jul 1982 0.0283284639 -1.5006351 1.128872e-02
## Aug 1982 0.0318618948 -1.5034516 -1.121551e-02
## Sep 1982 0.0151345828 -1.5062682 -9.449887e-03
## Oct 1982 -0.0107891741 -1.5099866 1.118324e-02
## Nov 1982 -0.0424312547 -1.5137051 2.365946e-02
## Dec 1982 -0.0479947475 -1.5168532 3.237112e-02
## Jan 1983 0.0019097886 -1.5200014 -9.766308e-03
## Feb 1983 0.0012341216 -1.5218917 -2.112168e-02
## Mar 1983 0.0006245546 -1.5237820 -3.273970e-02
## Apr 1983 -0.0125038908 -1.5243686 -9.590591e-03
## May 1983 0.0136392482 -1.5249553 -2.116086e-02
## Jun 1983 0.0209864093 -1.5246495 3.079598e-03
## Jul 1983 0.0283284639 -1.5243438 -4.568200e-03
## Aug 1983 0.0318618948 -1.5233090 8.641852e-03
## Sep 1983 0.0151345828 -1.5222742 6.556156e-03
## Oct 1983 -0.0107891741 -1.5221062 1.421184e-02
## Nov 1983 -0.0424312547 -1.5219382 3.651151e-02
## Dec 1983 -0.0479947475 -1.5237496 1.584724e-02
## Jan 1984 0.0019097886 -1.5255611 -2.281181e-02
## Feb 1984 0.0012341216 -1.5293462 -4.364775e-03
## Mar 1984 0.0006245546 -1.5331313 2.991762e-05
## Apr 1984 -0.0125038908 -1.5369253 1.231198e-02
## May 1984 0.0136392482 -1.5407193 -1.003717e-02
## Jun 1984 0.0209864093 -1.5430927 -5.751634e-03
## Jul 1984 0.0283284639 -1.5454661 -1.545945e-03
## Aug 1984 0.0318618948 -1.5465776 -2.240158e-02
## Sep 1984 0.0151345828 -1.5476891 -1.861453e-02
## Oct 1984 -0.0107891741 -1.5483655 3.257522e-03
## Nov 1984 -0.0424312547 -1.5490419 2.125598e-02
## Dec 1984 -0.0479947475 -1.5491985 7.557915e-03
## Jan 1985 0.0019097886 -1.5493550 -3.723813e-03
## Feb 1985 0.0012341216 -1.5497681 2.070907e-03
## Mar 1985 0.0006245546 -1.5501813 -1.612255e-03
## Apr 1985 -0.0125038908 -1.5507902 7.396947e-03
## May 1985 0.0136392482 -1.5513991 6.426010e-04
## Jun 1985 0.0209864093 -1.5523379 -1.125388e-03
## Jul 1985 0.0283284639 -1.5532767 -7.528650e-03
## Aug 1985 0.0318618948 -1.5545778 -9.760983e-03
## Sep 1985 0.0151345828 -1.5558789 -1.042470e-02
## Oct 1985 -0.0107891741 -1.5574127 1.230469e-02
## Nov 1985 -0.0424312547 -1.5589464 2.634122e-02
## Dec 1985 -0.0479947475 -1.5600807 8.587829e-03
## Jan 1986 0.0019097886 -1.5612149 -1.573140e-02
## Feb 1986 0.0012341216 -1.5623179 -4.337218e-03
## Mar 1986 0.0006245546 -1.5634210 -7.420770e-03
## Apr 1986 -0.0125038908 -1.5647632 -2.612059e-03
## May 1986 0.0136392482 -1.5661053 -3.431058e-03
## Jun 1986 0.0209864093 -1.5674035 4.637811e-03
## Jul 1986 0.0283284639 -1.5687016 -1.406095e-03
## Aug 1986 0.0318618948 -1.5698116 8.324287e-04
## Sep 1986 0.0151345828 -1.5709215 -1.102126e-04
## Oct 1986 -0.0107891741 -1.5725248 1.309679e-02
## Nov 1986 -0.0424312547 -1.5741281 7.121460e-03
## Dec 1986 -0.0479947475 -1.5758375 4.344016e-03
## Jan 1987 0.0019097886 -1.5775469 -2.385045e-02
## Feb 1987 0.0012341216 -1.5791943 2.206304e-02
## Mar 1987 0.0006245546 -1.5808417 -1.927045e-02
## Apr 1987 -0.0125038908 -1.5819146 -5.069120e-03
## May 1987 0.0136392482 -1.5829875 -8.689958e-04
## Jun 1987 0.0209864093 -1.5835838 -7.619848e-03
## Jul 1987 0.0283284639 -1.5841801 9.388492e-03
## Aug 1987 0.0318618948 -1.5851830 -2.576015e-03
## Sep 1987 0.0151345828 -1.5861860 -3.985087e-03
## Oct 1987 -0.0107891741 -1.5872167 3.456532e-03
## Nov 1987 -0.0424312547 -1.5882473 2.124068e-02
## Dec 1987 -0.0479947475 -1.5878022 1.630872e-02
## Jan 1988 0.0019097886 -1.5873571 -1.404026e-02
## Feb 1988 0.0012341216 -1.5829710 -3.271353e-02
## Mar 1988 0.0006245546 -1.5785850 -2.152716e-02
## Apr 1988 -0.0125038908 -1.5697492 -3.219736e-02
## May 1988 0.0136392482 -1.5609134 -2.294301e-02
## Jun 1988 0.0209864093 -1.5492956 -3.233852e-02
## Jul 1988 0.0283284639 -1.5376778 -2.776789e-02
## Aug 1988 0.0318618948 -1.5243953 9.728149e-03
## Sep 1988 0.0151345828 -1.5111128 3.926137e-02
## Oct 1988 -0.0107891741 -1.4976842 4.313583e-02
## Nov 1988 -0.0424312547 -1.4842557 1.255918e-02
## Dec 1988 -0.0479947475 -1.4722600 1.967127e-02
## Jan 1989 0.0019097886 -1.4602644 -2.005505e-02
## Feb 1989 0.0012341216 -1.4504088 -7.542167e-03
## Mar 1989 0.0006245546 -1.4405532 -1.250555e-02
## Apr 1989 -0.0125038908 -1.4314891 8.508421e-03
## May 1989 0.0136392482 -1.4224251 -1.417249e-02
## Jun 1989 0.0209864093 -1.4134516 -9.958593e-03
## Jul 1989 0.0283284639 -1.4044780 5.728539e-03
## Aug 1989 0.0318618948 -1.3972011 1.054352e-02
## Sep 1989 0.0151345828 -1.3899242 1.221179e-02
## Oct 1989 -0.0107891741 -1.3850216 2.931901e-02
## Nov 1989 -0.0424312547 -1.3801189 2.822364e-02
## Dec 1989 -0.0479947475 -1.3775733 1.498102e-02
## Jan 1990 0.0019097886 -1.3750277 -1.247843e-03
## Feb 1990 0.0012341216 -1.3757281 -1.580838e-02
## Mar 1990 0.0006245546 -1.3764285 -2.522240e-03
## Apr 1990 -0.0125038908 -1.3793494 9.550985e-03
## May 1990 0.0136392482 -1.3822704 -1.789899e-03
## Jun 1990 0.0209864093 -1.3857398 1.382621e-02
## Jul 1990 0.0283284639 -1.3892093 1.380721e-02
## Aug 1990 0.0318618948 -1.3935675 -4.786113e-03
## Sep 1990 0.0151345828 -1.3979257 -7.511255e-03
## Oct 1990 -0.0107891741 -1.4038051 4.007198e-03
## Nov 1990 -0.0424312547 -1.4096844 3.945934e-03
## Dec 1990 -0.0479947475 -1.4163039 2.037515e-02
## Jan 1991 0.0019097886 -1.4229233 1.042647e-02
## Feb 1991 0.0012341216 -1.4294036 -2.000028e-02
## Mar 1991 0.0006245546 -1.4358839 -1.291042e-02
## Apr 1991 -0.0125038908 -1.4417382 1.454699e-02
## May 1991 0.0136392482 -1.4475926 -1.421643e-02
## Jun 1991 0.0209864093 -1.4511142 -9.567368e-03
## Jul 1991 0.0283284639 -1.4546358 -4.984412e-03
## Aug 1991 0.0318618948 -1.4545196 -1.282687e-02
## Sep 1991 0.0151345828 -1.4544035 -2.174901e-02
## Oct 1991 -0.0107891741 -1.4519779 -6.908881e-03
## Nov 1991 -0.0424312547 -1.4495524 -3.127661e-02
## Dec 1991 -0.0479947475 -1.4455924 -6.996366e-03
## Jan 1992 0.0019097886 -1.4416324 1.676430e-02
## Feb 1992 0.0012341216 -1.4363746 2.455342e-02
## Mar 1992 0.0006245546 -1.4311168 -7.995205e-04
## Apr 1992 -0.0125038908 -1.4261899 3.209227e-03
## May 1992 0.0136392482 -1.4212631 1.126805e-03
## Jun 1992 0.0209864093 -1.4184065 -1.316697e-02
## Jul 1992 0.0283284639 -1.4155499 8.895210e-03
## Aug 1992 0.0318618948 -1.4152353 2.079560e-02
## Sep 1992 0.0151345828 -1.4149208 9.483833e-03
## Oct 1992 -0.0107891741 -1.4165389 4.369692e-03
## Nov 1992 -0.0424312547 -1.4181569 8.154019e-03
## Dec 1992 -0.0479947475 -1.4218655 1.314337e-02
## Jan 1993 0.0019097886 -1.4255740 4.846635e-03
## Feb 1993 0.0012341216 -1.4309384 1.088676e-02
## Mar 1993 0.0006245546 -1.4363029 1.937400e-04
## Apr 1993 -0.0125038908 -1.4413576 -1.581447e-02
## May 1993 0.0136392482 -1.4464123 1.481339e-03
## Jun 1993 0.0209864093 -1.4502776 -6.193381e-03
## Jul 1993 0.0283284639 -1.4541430 -1.388065e-02
## Aug 1993 0.0318618948 -1.4572404 -1.010605e-02
## Sep 1993 0.0151345828 -1.4603379 -1.581455e-02
## Oct 1993 -0.0107891741 -1.4627443 -4.876224e-03
## Nov 1993 -0.0424312547 -1.4651506 2.477655e-02
## Dec 1993 -0.0479947475 -1.4665033 9.420168e-03
## Jan 1994 0.0019097886 -1.4678561 9.229461e-03
## Feb 1994 0.0012341216 -1.4680999 -2.810206e-03
## Mar 1994 0.0006245546 -1.4683437 -1.950114e-02
## Apr 1994 -0.0125038908 -1.4679198 -6.796566e-03
## May 1994 0.0136392482 -1.4674960 -2.017657e-02
## Jun 1994 0.0209864093 -1.4658702 9.602820e-04
## Jul 1994 0.0283284639 -1.4642444 -8.007558e-03
## Aug 1994 0.0318618948 -1.4604466 -6.899895e-03
## Sep 1994 0.0151345828 -1.4566488 1.819110e-03
## Oct 1994 -0.0107891741 -1.4519479 1.719120e-03
## Nov 1994 -0.0424312547 -1.4472469 -1.976747e-03
## Dec 1994 -0.0479947475 -1.4428576 -8.024839e-04
## Jan 1995 0.0019097886 -1.4384684 1.074022e-03
## Feb 1995 0.0012341216 -1.4334547 1.340303e-02
## Mar 1995 0.0006245546 -1.4284410 8.998887e-03
## Apr 1995 -0.0125038908 -1.4222552 -9.164375e-03
## May 1995 0.0136392482 -1.4160694 -8.156881e-03
## Jun 1995 0.0209864093 -1.4090573 -2.251617e-02
## Jul 1995 0.0283284639 -1.4020452 -2.060983e-02
## Aug 1995 0.0318618948 -1.3936015 -4.752136e-03
## Sep 1995 0.0151345828 -1.3851578 7.445404e-03
## Oct 1995 -0.0107891741 -1.3740860 1.445414e-02
## Nov 1995 -0.0424312547 -1.3630141 -9.248440e-03
## Dec 1995 -0.0479947475 -1.3486000 -1.809907e-02
## Jan 1996 0.0019097886 -1.3341859 -7.134665e-03
## Feb 1996 0.0012341216 -1.3180288 -2.261612e-02
## Mar 1996 0.0006245546 -1.3018717 6.619934e-03
## Apr 1996 -0.0125038908 -1.2858805 -2.587460e-02
## May 1996 0.0136392482 -1.2698893 -1.315055e-02
## Jun 1996 0.0209864093 -1.2547384 1.972881e-02
## Jul 1996 0.0283284639 -1.2395874 3.360346e-02
## Aug 1996 0.0318618948 -1.2268670 3.664278e-02
## Sep 1996 0.0151345828 -1.2141465 2.135643e-02
## Oct 1996 -0.0107891741 -1.2054103 -1.138319e-02
## Nov 1996 -0.0424312547 -1.1966741 1.832542e-02
## Dec 1996 -0.0479947475 -1.1929035 9.896800e-03
## Jan 1997 0.0019097886 -1.1891330 1.280918e-02
## Feb 1997 0.0012341216 -1.1891736 1.028394e-02
## Mar 1997 0.0006245546 -1.1892141 1.146085e-03
## Apr 1997 -0.0125038908 -1.1911072 1.288347e-02
## May 1997 0.0136392482 -1.1930002 8.177941e-03
## Jun 1997 0.0209864093 -1.1961315 3.962059e-03
## Jul 1997 0.0283284639 -1.1992627 -3.479736e-03
## Aug 1997 0.0318618948 -1.2021109 -1.065852e-02
## Sep 1997 0.0151345828 -1.2049591 2.381005e-03
## Oct 1997 -0.0107891741 -1.2064514 -6.934898e-03
## Nov 1997 -0.0424312547 -1.2079438 -1.193334e-02
## Dec 1997 -0.0479947475 -1.2083379 -2.021081e-02
## Jan 1998 0.0019097886 -1.2087321 -4.894096e-04
## Feb 1998 0.0012341216 -1.2081438 -7.113442e-03
## Mar 1998 0.0006245546 -1.2075556 9.602739e-03
## Apr 1998 -0.0125038908 -1.2064784 8.320523e-03
## May 1998 0.0136392482 -1.2054013 1.410655e-02
## Jun 1998 0.0209864093 -1.2051366 -3.293285e-03
## Jul 1998 0.0283284639 -1.2048720 -4.364036e-03
## Aug 1998 0.0318618948 -1.2066460 3.601136e-03
## Sep 1998 0.0151345828 -1.2084201 5.841979e-03
## Oct 1998 -0.0107891741 -1.2109681 2.111231e-02
## Nov 1998 -0.0424312547 -1.2135162 7.674418e-03
## Dec 1998 -0.0479947475 -1.2149780 -1.357075e-02
## Jan 1999 0.0019097886 -1.2164398 5.068362e-04
## Feb 1999 0.0012341216 -1.2168130 -1.200376e-02
## Mar 1999 0.0006245546 -1.2171863 -2.476684e-02
## Apr 1999 -0.0125038908 -1.2184404 -3.136412e-02
## May 1999 0.0136392482 -1.2196944 2.188501e-02
## Jun 1999 0.0209864093 -1.2224778 7.468965e-03
## Jul 1999 0.0283284639 -1.2252613 1.927730e-02
## Aug 1999 0.0318618948 -1.2291771 2.935283e-02
## Sep 1999 0.0151345828 -1.2330929 4.677537e-02
## Oct 1999 -0.0107891741 -1.2362251 2.219462e-03
## Nov 1999 -0.0424312547 -1.2393572 -2.016472e-02
## Dec 1999 -0.0479947475 -1.2412633 -3.124858e-02
## Jan 2000 0.0019097886 -1.2431694 -1.050390e-02
## Feb 2000 0.0012341216 -1.2430948 -7.864597e-02
## Mar 2000 0.0006245546 -1.2430202 -1.287046e-02
## Apr 2000 -0.0125038908 -1.2410197 -8.784795e-03
## May 2000 0.0136392482 -1.2390192 2.805169e-02
## Jun 2000 0.0209864093 -1.2349432 2.651326e-02
## Jul 2000 0.0283284639 -1.2308671 1.509518e-02
## Aug 2000 0.0318618948 -1.2259309 3.341431e-03
## Sep 2000 0.0151345828 -1.2209947 1.183760e-02
## Oct 2000 -0.0107891741 -1.2180190 4.463800e-02
## Nov 2000 -0.0424312547 -1.2150433 -8.193618e-02
## Dec 2000 -0.0479947475 -1.2131974 -2.979199e-02
## Jan 2001 0.0019097886 -1.2113515 1.871418e-02
## Feb 2001 0.0012341216 -1.2090107 2.686902e-02
## Mar 2001 0.0006245546 -1.2066698 4.129315e-02
## Apr 2001 -0.0125038908 -1.2040040 -7.084655e-02
## May 2001 0.0136392482 -1.2013382 1.651593e-02
## Jun 2001 0.0209864093 -1.1984668 1.592829e-02
## Jul 2001 0.0283284639 -1.1955954 1.208431e-02
## Aug 2001 0.0318618948 -1.1927666 1.520078e-02
## Sep 2001 0.0151345828 -1.1899377 -4.259269e-02
## Oct 2001 -0.0107891741 -1.1861201 2.249531e-02
## Nov 2001 -0.0424312547 -1.1823026 -2.702965e-02
## Dec 2001 -0.0479947475 -1.1787578 -3.909567e-02
## Jan 2002 0.0019097886 -1.1752130 3.073906e-02
## Feb 2002 0.0012341216 -1.1723424 2.540441e-02
## Mar 2002 0.0006245546 -1.1694718 -2.335707e-03
## Apr 2002 -0.0125038908 -1.1683518 -5.181128e-05
## May 2002 0.0136392482 -1.1672318 2.348963e-02
## Jun 2002 0.0209864093 -1.1679032 2.298669e-02
## Jul 2002 0.0283284639 -1.1685746 8.118102e-04
## Aug 2002 0.0318618948 -1.1698461 4.780512e-03
## Sep 2002 0.0151345828 -1.1711177 2.277941e-02
## Oct 2002 -0.0107891741 -1.1707210 -5.981837e-02
## Nov 2002 -0.0424312547 -1.1703244 -2.167639e-02
## Dec 2002 -0.0479947475 -1.1685714 -1.443531e-02
## Jan 2003 0.0019097886 -1.1668185 1.289562e-02
## Feb 2003 0.0012341216 -1.1646478 -4.389803e-02
## Mar 2003 0.0006245546 -1.1624771 1.928838e-02
## Apr 2003 -0.0125038908 -1.1621766 2.897655e-02
## May 2003 0.0136392482 -1.1618760 3.044164e-02
## Jun 2003 0.0209864093 -1.1637608 2.497932e-02
## Jul 2003 0.0283284639 -1.1656457 2.257554e-02
## Aug 2003 0.0318618948 -1.1698918 2.633236e-02
## Sep 2003 0.0151345828 -1.1741379 1.014981e-02
## Oct 2003 -0.0107891741 -1.1807632 -5.324243e-02
## Nov 2003 -0.0424312547 -1.1873885 -2.544635e-02
## Dec 2003 -0.0479947475 -1.1924608 -7.817485e-03
## Jan 2004 0.0019097886 -1.1975332 1.471585e-02
## Feb 2004 0.0012341216 -1.1986549 9.255880e-05
## Mar 2004 0.0006245546 -1.1997767 -4.820645e-03
## Apr 2004 -0.0125038908 -1.1986082 -5.119633e-02
## May 2004 0.0136392482 -1.1974396 -3.022279e-02
## Jun 2004 0.0209864093 -1.1948853 9.146821e-03
## Jul 2004 0.0283284639 -1.1923310 3.699082e-02
## Aug 2004 0.0318618948 -1.1867073 2.783366e-02
## Sep 2004 0.0151345828 -1.1810836 -1.495852e-02
## Oct 2004 -0.0107891741 -1.1733704 -2.315215e-02
## Nov 2004 -0.0424312547 -1.1656572 -2.634359e-02
## Dec 2004 -0.0479947475 -1.1587244 -4.854690e-02
## Jan 2005 0.0019097886 -1.1517917 2.595184e-02
## Feb 2005 0.0012341216 -1.1458186 2.372662e-02
## Mar 2005 0.0006245546 -1.1398456 1.836310e-02
## Apr 2005 -0.0125038908 -1.1353997 1.469985e-02
## May 2005 0.0136392482 -1.1309538 5.617049e-03
## Jun 2005 0.0209864093 -1.1292706 2.061185e-02
## Jul 2005 0.0283284639 -1.1275874 2.044927e-02
## Aug 2005 0.0318618948 -1.1278540 2.011926e-02
## Sep 2005 0.0151345828 -1.1281205 1.288392e-03
## Oct 2005 -0.0107891741 -1.1285998 -2.857337e-02
## Nov 2005 -0.0424312547 -1.1290791 -3.915140e-02
## Dec 2005 -0.0479947475 -1.1290028 -1.702496e-02
## Jan 2006 0.0019097886 -1.1289264 1.227494e-02
## Feb 2006 0.0012341216 -1.1271577 5.065679e-03
## Mar 2006 0.0006245546 -1.1253890 3.906549e-03
## Apr 2006 -0.0125038908 -1.1220686 -4.861744e-03
## May 2006 0.0136392482 -1.1187483 -5.278563e-04
## Jun 2006 0.0209864093 -1.1145881 2.957535e-03
## Jul 2006 0.0283284639 -1.1104278 3.441958e-04
## Aug 2006 0.0318618948 -1.1046366 -3.098127e-03
## Sep 2006 0.0151345828 -1.0988453 7.837923e-03
## Oct 2006 -0.0107891741 -1.0919928 -3.353223e-02
## Nov 2006 -0.0424312547 -1.0851402 -2.128205e-02
## Dec 2006 -0.0479947475 -1.0796463 -1.806288e-02
## Jan 2007 0.0019097886 -1.0741523 1.092605e-02
## Feb 2007 0.0012341216 -1.0691792 3.512057e-02
## Mar 2007 0.0006245546 -1.0642061 3.356207e-02
## Apr 2007 -0.0125038908 -1.0557588 2.980432e-02
## May 2007 0.0136392482 -1.0473115 -1.329684e-02
## Jun 2007 0.0209864093 -1.0332113 -3.759724e-02
## Jul 2007 0.0283284639 -1.0191111 -5.050456e-02
## Aug 2007 0.0318618948 -0.9975344 -6.996499e-02
## Sep 2007 0.0151345828 -0.9759577 -6.082818e-02
## Oct 2007 -0.0107891741 -0.9446527 -8.019561e-02
## Nov 2007 -0.0424312547 -0.9133478 9.029079e-03
## Dec 2007 -0.0479947475 -0.8758432 2.534649e-03
## Jan 2008 0.0019097886 -0.8383386 -2.869365e-02
## Feb 2008 0.0012341216 -0.8022114 1.351945e-02
## Mar 2008 0.0006245546 -0.7660843 5.006693e-02
## Apr 2008 -0.0125038908 -0.7373481 9.207193e-02
## May 2008 0.0136392482 -0.7086119 6.761319e-02
## Jun 2008 0.0209864093 -0.6901676 3.241430e-02
## Jul 2008 0.0283284639 -0.6717232 3.458873e-02
## Aug 2008 0.0318618948 -0.6641972 1.429562e-02
## Sep 2008 0.0151345828 -0.6566712 1.042486e-02
## Oct 2008 -0.0107891741 -0.6578350 1.661897e-02
## Nov 2008 -0.0424312547 -0.6589988 -3.789664e-03
## Dec 2008 -0.0479947475 -0.6627949 2.561066e-02
## Jan 2009 0.0019097886 -0.6665910 4.968801e-03
## Feb 2009 0.0012341216 -0.6704676 -6.073739e-03
## Mar 2009 0.0006245546 -0.6743443 -1.344537e-02
## Apr 2009 -0.0125038908 -0.6787876 -3.231492e-02
## May 2009 0.0136392482 -0.6832309 6.003240e-03
## Jun 2009 0.0209864093 -0.6877563 5.121374e-03
## Jul 2009 0.0283284639 -0.6922817 8.101867e-03
## Aug 2009 0.0318618948 -0.6960198 4.445452e-03
## Sep 2009 0.0151345828 -0.6997578 1.127864e-02
## Oct 2009 -0.0107891741 -0.7036330 2.127500e-02
## Nov 2009 -0.0424312547 -0.7075082 -3.094661e-02
## Dec 2009 -0.0479947475 -0.7125964 -7.279599e-03
## Jan 2010 0.0019097886 -0.7176845 4.463593e-03
## Feb 2010 0.0012341216 -0.7226329 2.021941e-02
## Mar 2010 0.0006245546 -0.7275812 -9.098006e-03
## Apr 2010 -0.0125038908 -0.7317055 -4.450452e-03
## May 2010 0.0136392482 -0.7358299 -1.415772e-03
## Jun 2010 0.0209864093 -0.7388198 -7.837029e-03
## Jul 2010 0.0283284639 -0.7418096 -1.218920e-02
## Aug 2010 0.0318618948 -0.7418462 -5.408487e-03
## Sep 2010 0.0151345828 -0.7418828 -9.904531e-04
## Oct 2010 -0.0107891741 -0.7375253 -2.461833e-03
## Nov 2010 -0.0424312547 -0.7331678 -3.183726e-02
## Dec 2010 -0.0479947475 -0.7258052 -4.491046e-02
## Jan 2011 0.0019097886 -0.7184426 -2.370600e-02
## Feb 2011 0.0012341216 -0.7087158 2.261903e-03
## Mar 2011 0.0006245546 -0.6989890 2.109061e-02
## Apr 2011 -0.0125038908 -0.6873280 6.684740e-03
## May 2011 0.0136392482 -0.6756671 1.002258e-02
## Jun 2011 0.0209864093 -0.6650994 5.453957e-03
## Jul 2011 0.0283284639 -0.6545317 -3.030659e-03
## Aug 2011 0.0318618948 -0.6484687 -5.150421e-03
## Sep 2011 0.0151345828 -0.6424057 2.943407e-02
## Oct 2011 -0.0107891741 -0.6407908 3.909065e-02
## Nov 2011 -0.0424312547 -0.6391759 2.189471e-02
## Dec 2011 -0.0479947475 -0.6408412 1.549143e-02
## Jan 2012 0.0019097886 -0.6425066 1.937825e-03
## Feb 2012 0.0012341216 -0.6461765 6.283416e-03
## Mar 2012 0.0006245546 -0.6498465 -6.629494e-03
## Apr 2012 -0.0125038908 -0.6537685 2.683978e-03
## May 2012 0.0136392482 -0.6576905 -2.342821e-02
## Jun 2012 0.0209864093 -0.6597560 -1.708182e-02
## Jul 2012 0.0283284639 -0.6618215 -2.815548e-02
## Aug 2012 0.0318618948 -0.6623380 -2.517174e-03
## Sep 2012 0.0151345828 -0.6628545 9.060886e-03
## Oct 2012 -0.0107891741 -0.6618825 -2.635565e-03
## Nov 2012 -0.0424312547 -0.6609106 4.176585e-03
## Dec 2012 -0.0479947475 -0.6593134 1.416092e-02
## Jan 2013 0.0019097886 -0.6577161 9.542740e-03
## Feb 2013 0.0012341216 -0.6570613 9.563618e-03
## Mar 2013 0.0006245546 -0.6564065 -3.936719e-02
## Apr 2013 -0.0125038908 -0.6557676 1.818382e-02
## May 2013 0.0136392482 -0.6551287 6.611173e-03
## Jun 2013 0.0209864093 -0.6526385 2.418186e-03
## Jul 2013 0.0283284639 -0.6501482 -1.305853e-02
## Aug 2013 0.0318618948 -0.6455608 -2.306791e-02
## Sep 2013 0.0151345828 -0.6409735 -2.424881e-02
## Oct 2013 -0.0107891741 -0.6365156 -1.434377e-02
## Nov 2013 -0.0424312547 -0.6320577 1.477652e-02
## Dec 2013 -0.0479947475 -0.6300190 1.053435e-02
## Jan 2014 0.0019097886 -0.6279804 1.542466e-02
## Feb 2014 0.0012341216 -0.6285842 3.856286e-02
## Mar 2014 0.0006245546 -0.6291879 3.254287e-02
## Apr 2014 -0.0125038908 -0.6325910 4.178844e-02
## May 2014 0.0136392482 -0.6359942 -8.756870e-03
## Jun 2014 0.0209864093 -0.6386767 -1.342149e-02
## Jul 2014 0.0283284639 -0.6413593 -2.752394e-02
## Aug 2014 0.0318618948 -0.6445851 -2.027003e-02
## Sep 2014 0.0151345828 -0.6478110 -3.480303e-02
## Oct 2014 -0.0107891741 -0.6513302 -2.902978e-02
## Nov 2014 -0.0424312547 -0.6548494 3.369232e-02
## Dec 2014 -0.0479947475 -0.6582799 3.488891e-02
hagamos ele ejmplo para el gas
gas.l <- log(prices.ts[,2])
gas.stl <- stl(gas.l, s.window = "period")
plot(gas.stl)
#decompose #Classical Seasonal Decomposition by Moving Averages( moviendo medias ) metodo de descomposicion por metodo decompsre
flour.dec <- decompose(flour.l)# de la harina
plot(flour.dec)#grafica
Grafiquemos el gas
gas.dec <- decompose(gas.l)
plot(gas.dec)
Ahora si ya sabemos que existe una estacionalidad , cosas que se repiten de manera continua , podemos eliminarlos , ya que se analizo por factores
Del precio Original resta el valor estacional (valor que se repite periodicamente )“Elimina el ruido”
gas.season.adjusted <- prices.ts[,2] - (gas.dec$seasonal)
plot(gas.season.adjusted)
Esto es lo que estaremos haciendo ( con el ejemplo de la gas)
n <- 12
gas.f.1 <- stats::filter(prices.ts[,2], filter = rep(1/n, n), sides = 2)
gas.f.2 <- stats::filter(prices.ts[,2], filter = rep(1/n,n), sides = 1)
plot(prices.ts[,2])
lines(gas.f.1, col = "blue", lwd = 3)
lines(gas.f.2, col = "red", lwd = 3)
Visualizacion temprana de los datos
s <- read.csv("../../r-course-master/data/tema6/ts-example.csv")
plot(s$sales, type = "l")
generamos la muestea semanal
n <- 7# 7 dias de la semana
weights <- rep(1/n, n)
weights
## [1] 0.1428571 0.1428571 0.1428571 0.1428571 0.1428571 0.1428571 0.1428571
creemos lo objetos que van a a promediar
s.fil.1 <- stats::filter(s$sales, filter = weights, sides = 2)
s.fil.2 <- stats::filter(s$sales, filter = weights, sides = 1)
grafiquemoslo
plot(s$sales, type = "l")
lines(s.fil.1, col = "blue", lwd = 3)
lines(s.fil.2, col = "red", lwd = 3)
#suavisando y prediciendo con el metodo Hot-Winters Caunto voy a vender
inf <- read.csv("../../r-course-master/data/tema6/INFY-monthly.csv")
inf.ts <- ts(inf$Adj.Close,#la columana que queremos analizar
start=c(1999,3),#En que fecha iniciamos
frequency = 12)#mensual
Grafiquemos
plot(inf.ts)
Suavicemos los valores (holtwinters) metodo exponencial y combolucional
inf.hw <- HoltWinters(inf.ts)
Grafiquemos
plot(inf.hw, col = "blue", col.predicted = "red")
Suma de los cuadrados de los errores
inf.hw$SSE
## [1] 347.1345
Patrametro alfa y beta
inf.hw$alpha
## alpha
## 0.5519187
inf.hw$beta
## beta
## 0.01042698
inf.hw$gamma
## gamma
## 1
head(inf.hw$fitted)
## xhat level trend season
## [1,] 6.371099 5.038675 0.2702327 1.06219146
## [2,] 8.459056 6.876835 0.2865814 1.29563975
## [3,] 6.911948 7.842393 0.2936611 -1.22410629
## [4,] 8.684473 8.364917 0.2960474 0.02350837
## [5,] 6.968464 8.538907 0.2947748 -1.86521779
## [6,] 8.455786 8.490957 0.2912012 -0.32637179
Predigamos en base al modelo que genero forecast
#install.packages("forecast")
library(forecast)#prediccion
## Registered S3 method overwritten by 'forecast':
## method from
## predict.default statip
##
## Attaching package: 'forecast'
## The following object is masked from 'package:modeest':
##
## naive
Nota importante : para que arroje un resultado mas acetado es importante obtener el objeto sin ruido (con la funcion holtwinters)
infy.fore <- forecast(inf.hw,#datos ( modelo)
h=24)#calcula los siguientes 2 meses
Grafica como se veran los valores La forma azul es la predicha la zona gris es :los valores dentro del intervalo de confianza al 80% la zona gris claro : es el intervalo de confianza al 95%
plot(infy.fore)
Aqui se puede ver si esta en el intervalo de confianza de la parte superior de la linea
infy.fore$lower
## 80% 95%
## Jan 2017 13.820929 12.936811
## Feb 2017 13.442656 12.430351
## Mar 2017 13.872663 12.744433
## Apr 2017 12.028455 10.793086
## May 2017 11.468344 10.132484
## Jun 2017 10.255859 8.824740
## Jul 2017 10.437364 8.915217
## Aug 2017 10.819623 9.209944
## Sep 2017 11.239823 9.545552
## Oct 2017 11.626875 9.850518
## Nov 2017 11.442917 9.586633
## Dec 2017 11.645096 9.710761
## Jan 2018 12.310981 10.158075
## Feb 2018 12.042318 9.819248
## Mar 2018 12.560493 10.268172
## Apr 2018 10.789409 8.428657
## May 2018 10.291257 7.862816
## Jun 2018 9.132117 6.636656
## Jul 2018 9.360123 6.798248
## Aug 2018 9.783316 7.155581
## Sep 2018 10.239846 7.546750
## Oct 2018 10.659357 7.901357
## Nov 2018 10.504566 7.682078
## Dec 2018 10.733080 7.846482
infy.fore$upper
## 80% 95%
## Jan 2017 17.16121 18.04533
## Feb 2017 17.26724 18.27954
## Mar 2017 18.13522 19.26345
## Apr 2017 16.69579 17.93116
## May 2017 16.51534 17.85120
## Jun 2017 15.66275 17.09387
## Jul 2017 16.18817 17.71032
## Aug 2017 16.90113 18.51081
## Sep 2017 17.64093 19.33520
## Oct 2017 18.33811 20.11447
## Nov 2017 18.45613 20.31241
## Dec 2017 18.95319 20.88752
## Jan 2018 20.44485 22.59776
## Feb 2018 20.44127 22.66434
## Mar 2018 21.22109 23.51341
## Apr 2018 19.70854 22.06929
## May 2018 19.46613 21.89457
## Jun 2018 18.56019 21.05566
## Jul 2018 19.03911 21.60099
## Aug 2018 19.71114 22.33887
## Sep 2018 20.41460 23.10770
## Oct 2018 21.07933 23.83733
## Nov 2018 21.16818 23.99067
## Dec 2018 21.63890 24.52550
#modelo autorregresivo integrado de media móvil (auto.arima)
inf <- read.csv("../../r-course-master/data/tema6/INFY-monthly.csv")
creamos la serie temporal
inf.ts <- ts(inf$Adj.Close, start = c(1999,3), frequency = 12)
Aplicamos el algoritmo
inf.arima <- auto.arima(inf.ts)
Veamos sus caracteristicas
summary(inf.arima)
## Series: inf.ts
## ARIMA(0,1,1)(2,0,0)[12]
##
## Coefficients:
## ma1 sar1 sar2
## -0.1598 0.0505 -0.0533
## s.e. 0.0607 0.0799 0.0844
##
## sigma^2 = 0.982: log likelihood = -298.84
## AIC=605.69 AICc=605.88 BIC=619.13
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE
## Training set 0.07413207 0.9816299 0.7329892 0.4829683 9.84262 0.3027089
## ACF1
## Training set -0.02620284
Predigamos el futuro con Arima
inf.fore <- forecast(inf.arima, h = 12)
plot(inf.fore, col = "red",#cambia el color de la grafica
fcol = "blue")#cambia el color de la prediccion
recordemos lo aprendido las series temporales : -divide la informacion estacional de las tendencias y el ruido adicional de la muestra -nos permite obtener una tendencia del mercado a corto y medio plazo -puede descomponerse con el metodo de promedios movilers siempre y cuando sea aditiva
si se sospecha que una serie temporal es multiplicativa( logaritmo) : -debemos aplicar la funcion logaritmo para convertirla en aditiva -Cada valor procede del anterior por factor multiplicativo temporal no puede descomponerse directamente usando la descomposicion clasica o de loess
Al crear una serie temporal : -Se tiene que subministrar en algun momento el inicio y la frecuencia del muestreo en el periodo
Filtrar una serie temporal da una nocion de :Tendencia , estacionalidad ,ruido
Descomponer una serie temporal aditiva nos da una idea de:Tendencia , estacionalidad ,ruido
El metodo de Hot-Winters -Suavisa la curva usando un nucleo de convolucion exponencial -Usa los valores suvisadod para extraer informacion de estacionalidad y tendencia -Puede usarse como modelo para predecir valores a posteriori
#visiualizacion ggplot2
#Scatter Plots(graficos de dispercion )
#install.packages("ggplot2")
library(ggplot2)
auto <- read.csv("../../r-course-master/data/tema7/auto-mpg.csv", stringsAsFactors = F)
library(ggplot2)
se cambian de nuemro a factores
auto$cylinders <- factor(auto$cylinders,
labels = c("3C", "4C", "5C", "6C", "8C"))
auto[1:5,]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1 1 28 4C 140 90 2264 15.5 71
## 2 2 19 3C 70 97 2330 13.5 72
## 3 3 36 4C 107 75 2205 14.5 82
## 4 4 28 4C 97 92 2288 17.0 72
## 5 5 21 6C 199 90 2648 15.0 70
## car_name
## 1 chevrolet vega 2300
## 2 mazda rx2 coupe
## 3 honda accord
## 4 datsun 510 (sw)
## 5 amc gremlin
priemro graficamos
plot <- ggplot2::ggplot(auto,#DF
aes(weight, mpg))#X y Y
plot + geom_point()# y le decimos que lom represente con puntos
plot + ggplot2::geom_point(alpha = 1/2, #trasparencia
size = 3, #Tamano
aes(color = factor(cylinders)))#+ #que ponga etiquetas y los pinte
#geom_smooth(method = "lm", #geometria suave , con el metodo de lineas
# se = F, #Se muetres el intervalo de confianza
# col ="blue")+#color
#ggplot2::facet_grid(cylinders~.) +
# theme_bw(base_family = "Arial", #Tipo de letra
# base_size = 10) #tamano de la letra
#+ labs(x = "Peso") + labs (y = "Millas por Galeón")
#+ labs(title = "Consumo vs Peso") # titulo de la grafica
Hagamos otro grafico con otro tipo de instrucciones
qplot(x=weight,
y = mpg,
data = auto,
geom=c("point", "smooth"), method = "lm", se=F,
formula = y~x, color = cylinders,
main = "Regresión de MPG sobre el Peso")
## Warning: Ignoring unknown parameters: method, se, formula
# Graficos de lineas #Line Charts
library(ggplot2)
mtcars <- read.csv("../../r-course-master/data/tema7/mtcars.csv", stringsAsFactors = F)
plot <- ggplot(mtcars, aes(wt, mpg))
plot + geom_line()#linea geometrica
plot + geom_line(linetype = "dashed", color = "blue")# que este punteada
plot + geom_line(aes(color = as.factor(carb)))#una etiqueta agrupada por la categoria carb (numero de cambios )
#Grafica de Barras
#Bar Graphs
library(ggplot2)
bike <- read.csv("../../r-course-master/data/tema7/daily-bike-rentals.csv")
Convertimos a factores las estaciones del ano
#estaciones del ano
bike$season <- factor(bike$season,
levels = c(1,2,3,4),
labels = c("Invierno", "Primavera", "Verano", "Otoño"))
#Dia trabajado o dia libre
bike$workingday <- factor(bike$workingday,
levels = c(0,1),
labels = c("Día libre", "Día de trabajo"))
#dia nublado o dia libre
bike$weathersit <- factor(bike$weathersit,
levels = c(1,2,3),
labels = c("Buen tiempo", "Día nublado", "Mal tiempo"))
Creamos un Df donde se grupe por algunos valores
es como hacer una tabla dinamica en excel
library(dplyr)
bike.sum = bike %>%
dplyr::group_by(season, workingday) %>%
dplyr::summarize(reantal = sum(cnt))
## `summarise()` has grouped output by 'season'. You can override using the
## `.groups` argument.
bike.sum
## # A tibble: 8 x 3
## # Groups: season [4]
## season workingday reantal
## <fct> <fct> <int>
## 1 Invierno Día libre 137683
## 2 Invierno Día de trabajo 333665
## 3 Primavera Día libre 287976
## 4 Primavera Día de trabajo 630613
## 5 Verano Día libre 312056
## 6 Verano Día de trabajo 749073
## 7 Otoño Día libre 262554
## 8 Otoño Día de trabajo 579059
Grafiquemos esa tabla dimanica
ggplot(bike.sum, #del Df resien creado
aes(x = season, y = reantal, #cuales son los ejes de X y Y
fill = workingday, # etiquetas
label = scales::comma(reantal))) +#
geom_bar(show.legend = T,
stat = "identity",
fill="lightblue", #color de las barras
colour = "black") + #color de las lineas de las barras
labs(title = "Alquileres de bicicletas por estación y día") +
scale_y_continuous(labels = scales::comma) +
geom_text(size = 3,#tamano de letra de la etiqueta de datos
position = position_stack(vjust = 0.5))#posicion de las etiquetas de datos
# Grafico de dsitribuciones
library(ggplot2)
geiser <- read.csv("../../r-course-master/data/tema7/geiser.csv")
# alrura y erupciones de este geiser
Empecemos a graficar ( el tiempo de espera entre erupciones )
plot <- ggplot(geiser, aes(x=waiting))
plot + geom_histogram()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
sumemos cosas
plot + geom_histogram(binwidth = 5, #anchura de la divicion
fill="white", #relleno
colour = "black")#linea de negro
Otra grafica Final
ggplot(geiser, aes(x=waiting,
y = ..density..))+#asi es la densidad
geom_histogram(fill="cornsilk",
color = "grey60",#color
size=.2)+# tamano
geom_density() + xlim(35, 105) # linea de distibucion
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 1 rows containing missing values (geom_bar).
Grafiquemos la erupciones
ggplot(geiser, aes(x=eruptions, y = ..density..))+
geom_histogram(fill="cornsilk", color = "grey60", size=.2)+
geom_density() + xlim(0,7)#asi se redimenciona el eje x
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 2 rows containing missing values (geom_bar).
#install.packages("ggplot2")
library(ggplot2)
#Mosaic Plot
library(stats)
mtcars <- read.csv("../../r-course-master/data/tema7/mtcars.csv")
mosaicplot(~ gear + carb, # se muestra que variables queremos comparara
data = mtcars, #datos de donde se toman
color=2:7,#rango de colore
las = 1)# orientacion de los textos superiores
#atambien se puede usar color=T( lo hara en tonalidad de grises )
#Tree Maps
#install.packages("htmltools")
#install.packages("treemap")
library(treemap)
library(htmltools)
##
## Attaching package: 'htmltools'
## The following object is masked from 'package:mclust':
##
## em
branch <- c(rep("branch-1",4), rep("branch-2",2), rep("branch-3",3))#ramas
subbranch <- paste("subbranch",c(1,2,3,4,1,2,1,2,3), sep = "-")#subramas
values = c(15,4,22,13,11,8,6,1,25)#valores de las ramas
data <- data.frame(branch, subbranch, values)#hacemos el DF
treemap::treemap(data,# datos
index = c("branch","subbranch"),#columnas X y Y
vSize = "values",#Tamano de los cubos
type = "index")#Indicar que son valores numericos
Analisis de informacion de Redes Sociales
posts <- read.csv("../../r-course-master/data/tema7/post-data.csv")
Veamos como se distribuye
treemap::treemap(posts,
index = c("category", "comments"),
vSize = "views", type = "index")
#Correlation Matrix
library(ggplot2)
library(corrplot)
mtcars <- read.csv("../../r-course-master/data/tema7/mtcars.csv")
Eliminamos la columna X
mtcars$X = NULL#eliminmos la columna X
Hacemos la coorrelacion
mtcars.cor <- cor(mtcars, method = "pearson")
Datos de correlacion de los datos en tabla
round(mtcars.cor, #datos
digits = 2)#digitos
## mpg cyl disp hp drat wt qsec vs am gear carb
## mpg 1.00 -0.85 -0.85 -0.78 0.68 -0.87 0.42 0.66 0.60 0.48 -0.55
## cyl -0.85 1.00 0.90 0.83 -0.70 0.78 -0.59 -0.81 -0.52 -0.49 0.53
## disp -0.85 0.90 1.00 0.79 -0.71 0.89 -0.43 -0.71 -0.59 -0.56 0.39
## hp -0.78 0.83 0.79 1.00 -0.45 0.66 -0.71 -0.72 -0.24 -0.13 0.75
## drat 0.68 -0.70 -0.71 -0.45 1.00 -0.71 0.09 0.44 0.71 0.70 -0.09
## wt -0.87 0.78 0.89 0.66 -0.71 1.00 -0.17 -0.55 -0.69 -0.58 0.43
## qsec 0.42 -0.59 -0.43 -0.71 0.09 -0.17 1.00 0.74 -0.23 -0.21 -0.66
## vs 0.66 -0.81 -0.71 -0.72 0.44 -0.55 0.74 1.00 0.17 0.21 -0.57
## am 0.60 -0.52 -0.59 -0.24 0.71 -0.69 -0.23 0.17 1.00 0.79 0.06
## gear 0.48 -0.49 -0.56 -0.13 0.70 -0.58 -0.21 0.21 0.79 1.00 0.27
## carb -0.55 0.53 0.39 0.75 -0.09 0.43 -0.66 -0.57 0.06 0.27 1.00
Grafiqueoslo
corrplot(mtcars.cor)#mapa de correlacion
corrplot(mtcars.cor,
method = "shade",#Sombras cuadradas
shade.col = NA,#si aplica alguna sombra dentro
tl.col = "black",# Color negro
tl.srt = 45)#etiqueta rotada a 45 grados
Paleta de colores
col <- colorRampPalette(c("#BB4444", "#EE9988", "#FFFFFF",
"#77AADD", "#4477AA"))
Grafica
corrplot(mtcars.cor,
method = "pie", # elipse, pie, circle , square, se pueden usar estas formas
tl.col = "black",#color de las etiquetas
tl.srt = 45, #rotete
col = col(200), #la funcion anterior( escalado a 200 valores)
addCoef.col = "black",#anade dentro de los cuadrados las etiquetas de los valores
order = "FPC", #AOE:odenarlos segun el valor de correlaciones tambien se puede usar fpc
type = "upper",#lower es la parte inferior , upper muestra la de arriba
diag = F,#quita la diagonal de en medio
addshade = "all")
library(reshape2)
##
## Attaching package: 'reshape2'
## The following objects are masked from 'package:reshape':
##
## colsplit, melt, recast
## The following object is masked from 'package:tidyr':
##
## smiths
mtcars.melted <- melt(mtcars.cor)#Fundir los datos( combiente de matriz a un DF)
head(mtcars.cor)
## mpg cyl disp hp drat wt
## mpg 1.0000000 -0.8521620 -0.8475514 -0.7761684 0.6811719 -0.8676594
## cyl -0.8521620 1.0000000 0.9020329 0.8324475 -0.6999381 0.7824958
## disp -0.8475514 0.9020329 1.0000000 0.7909486 -0.7102139 0.8879799
## hp -0.7761684 0.8324475 0.7909486 1.0000000 -0.4487591 0.6587479
## drat 0.6811719 -0.6999381 -0.7102139 -0.4487591 1.0000000 -0.7124406
## wt -0.8676594 0.7824958 0.8879799 0.6587479 -0.7124406 1.0000000
## qsec vs am gear carb
## mpg 0.41868403 0.6640389 0.5998324 0.4802848 -0.5509251
## cyl -0.59124207 -0.8108118 -0.5226070 -0.4926866 0.5269883
## disp -0.43369788 -0.7104159 -0.5912270 -0.5555692 0.3949769
## hp -0.70822339 -0.7230967 -0.2432043 -0.1257043 0.7498125
## drat 0.09120476 0.4402785 0.7127111 0.6996101 -0.0907898
## wt -0.17471588 -0.5549157 -0.6924953 -0.5832870 0.4276059
head(mtcars.melted)
## Var1 Var2 value
## 1 mpg mpg 1.0000000
## 2 cyl mpg -0.8521620
## 3 disp mpg -0.8475514
## 4 hp mpg -0.7761684
## 5 drat mpg 0.6811719
## 6 wt mpg -0.8676594
Grafiquemoslo
ggplot(data = mtcars.melted,
aes(x=Var1, y=Var2,fill=value))+
geom_tile()+
coord_fixed()
Obtener triangulo inferiro
get_upper_triangle <- function(cormat){
cormat[upper.tri(cormat)] <- NA
return(cormat)
}
Tomamos el tringulo inferior
get_lower_triangle <- function(cormat){
cormat[lower.tri(cormat)] <- NA
return(cormat)
}
reordenar
reorder_cormat <- function(cormat){
dd <- as.dist((1-cormat)/2)#siempre sean positivas
hc <- hclust(dd)#
cormat <- cormat[hc$order, hc$order]#
}
Veamos como funcionan las funciones
cormat <- reorder_cormat(mtcars.cor)#permite reoerdenar
cormat.ut <- get_upper_triangle(cormat)#quedarte con la parte superiro
cormat.ut.melted <- melt(cormat.ut,
na.rm = T)# elimina NA's
ggplot(cormat.ut.melted, aes(Var2, Var1, fill = value)) +
geom_tile(color = "white")+
# escala de valores del mas bajo al mas alto
scale_fill_gradient2(low = "blue", high = "red",
mid = "white",
midpoint = 0,#punto medio
limit = c(-1,1),#limites
space = "Lab",
name="Pearson\nCorrelation")+
#Limpia y pone mas presentable el dato
theme_minimal()+
#como se ve las etiquetas
theme(axis.text.x = element_text(angle = 45, vjust=1,
size = 12, hjust=1))+
coord_fixed()# correlaciones arregladas (se justa exactamente )
#Redes( grafos )
library(igraph)
##
## Attaching package: 'igraph'
## The following object is masked from 'package:gtools':
##
## permute
## The following object is masked from 'package:FNN':
##
## knn
## The following object is masked from 'package:class':
##
## knn
## The following object is masked from 'package:raster':
##
## union
## The following objects are masked from 'package:dplyr':
##
## as_data_frame, groups, union
## The following objects are masked from 'package:purrr':
##
## compose, simplify
## The following object is masked from 'package:tidyr':
##
## crossing
## The following object is masked from 'package:tibble':
##
## as_data_frame
## The following objects are masked from 'package:stats':
##
## decompose, spectrum
## The following object is masked from 'package:base':
##
## union
g.dir <- graph(edges = c(1,2, 2,3, 2,4, 1,4, 5,5, 3,6, 5,6), n=6)
g.n_dir <- graph(edges = c(1,2, 2,3, 2,4, 1,4,
5,5, 3,6, 5,6), n=6, directed = F)
Grafiquemoslo
plot(g.dir)
plot(g.n_dir)
Gaficos con aristas
g_isolated <- graph(edges = c("Juan", "María",
"María", "Ana",
"Ana", "Juan",
"José", "María",
"Pedro", "José",
"Joel", "Pedro"),
isolates = c( "Carmen", "Antonio",
"Mario", "Vicente"))#Agentes aislados
Grafiquemoslo
par(mfrow = c(1,1))
plot(g_isolated, edge.arrow.size = 1,#tamano de flecha
vertex.color="gold",#color del vertice
vertex.size = 15,#
vertex.frame.color = "gray", #color del la flecha
vertex.label.color = "black",#color de los nombres
vertex.label.cex = 0.8,#Factor de escala
vertex.label.dist = 3,#distrancia entre vertices
edge.curved=0.2)# curvee las flechas
#labels and legends ( Leyendas y titulos )
ggtitle(titulo) xlab(eje x) ylab(eje y) labs(….)
library(ggplot2)
tooth <- read.csv("../../r-course-master/data/tema7/ToothGrowth.csv")
tooth[1:5,]
## X len supp dose
## 1 1 4.2 VC 0.5
## 2 2 11.5 VC 0.5
## 3 3 7.3 VC 0.5
## 4 4 5.8 VC 0.5
## 5 5 6.4 VC 0.5
#box plot
ggplot(tooth, aes(x=dose, y=len, fill = as.factor(dose)))+
geom_boxplot() +
ggtitle("Crecimiento dental en función de una dosis de vitamina C
(mg/día) ")+
xlab("Dosis de vitamina C (mg/día)") +
ylab("Crecimiento dental (en mm)") +
labs(fill = "Dosis en mg/día") +#se alinea
theme(legend.position = "bottom") +#determian la posicion
guides(fill = F)#gias ( donde eliminamos las leyendas )
Cambiamos la apariencia
ggplot(tooth, aes(x=dose, y = len))+
geom_boxplot()+
theme_bw()+
#theme_dark()+#Tema obsucro
#theme_classic()+# tema clasico( defoult )
#theme_grey()+#tema gris
#theme(plot.background = element_rect(fill="darkblue"))# el fondo #apariencia de los ejes
theme(axis.text.x = element_text(face = "bold",
family = "Times",
size = 14,# tamano
angle = 45,# angulo
color = "#995566"),# color
axis.text.y = element_text(face = "italic",#tipo
family = "Courier",# tipo de letra
size = 16,#tamano
angle = 30, #angulo
color = "#449955")#color de las letras
)+
theme(panel.border = element_blank())+ # borde en el panel
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank())
## Warning: Continuous x aesthetic -- did you forget aes(group=...)?
## Warning in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)): font family not
## found in Windows font database
## Warning in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)): font family not
## found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font
## family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## font family not found in Windows font database
#Graficas Miltivaribles
library(ggplot2)
#install.packages("GGally")
library(GGally)
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
bike <- read.csv("../../r-course-master/data/tema7/daily-bike-rentals.csv")
Cabiamos los valores
bike$season = factor(bike$season,
levels = c(1,2,3,4),
labels = c("Invierno", "Primavera", "Verano", "Otonoo"))
Combertimo en factores
bike$weathersit <- factor(bike$weathersit,
levels = c(1,2,3),
labels = c("Despejado", "Nublado", "Lluvia"))
bike$weekday <- factor(bike$weekday,
levels = 0:6,
labels = c("D", "L", "M", "X", "J", "V", "S"))
Hacemos el histograma
hist(bike$windspeed)
La funcion cut Divide el df en 3 segmentos
bike$windspeed.fac <- cut(bike$windspeed,
breaks = 3,#3 difereentes diviciones
labels = c("Poco", "Medio", "Elevado"))
Grafiquemoo con GGplot
ggplot(bike, aes(x=temp, y = cnt))+
geom_point(size=3,# tamano del punto
aes(color=windspeed.fac))+
theme(legend.position = "bottom")+# en donde quieres la leyenda
geom_smooth(method="lm", se=F# intervalo de confianza
, col="red") +# regrsion lineal
facet_grid(weekday ~ season)# formato parrila de dia en funcion se estaciones
## `geom_smooth()` using formula 'y ~ x'
otro ejemplo
auto <- read.csv("../../r-course-master/data/tema7/auto-mpg.csv", stringsAsFactors = F)
#Convertimos en factores
auto$cylinders <- factor(auto$cylinders,
labels = c("3C", "4C", "5C", "6C", "8C"))
#Multi grafico donde hace todas la combinaciones posibles
ggpairs(auto[,2:5])
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggpairs(auto[,2:5],
aes(colour=cylinders, alpha=0.4),
title = "Analisis multivariante de carros",
upper=list(continuos="density"),
lower=list(combo="denstrip")+
theme(plot.title=element_text(hjust=0.5)))
Las correlaciones como densidades (se recomienda analisis exploratorio inicial )
ggpairs(auto[,2:7],
aes(colour = cylinders,
alpha = 0.4),
title = "Analisis multivariante de coches",
upper = list(continuous = "density"),
lower = list(combo = "denstrip"))+
theme(plot.title = element_text(hjust = 0.5))
#Graficos en 3D
#install.packages("plot3D")
library(plot3D)
mtcars <- read.csv("../../r-course-master/data/tema7/mtcars.csv")
comberimos las columna 1 a que sea su identificador
rownames(mtcars) = mtcars$X
mtcars$X = NULL# hecho esto lo eliminamos
Grafiquemos en 3D
scatter3D(x=mtcars$disp,
y=mtcars$wt,
z=mtcars$mpg,
clab = c("Millas/Galeon"),
pch=19,#forma de os puntos
cex = 0.5,#
theta = 18, #Rotacion del eje vertical azimutal
phi=20, #rotacione sobre el angulo Horizontal colatitud
main="Coches de los 70'",
xlab = "Desplazamiento (cu.in.)",
ylab = "Peso (x1000lb)",
zlab = "Millas por galeón",
bty = "g")# tipo de caja
text3D(x=mtcars$disp,
y=mtcars$wt,
z=mtcars$mpg,
labels = rownames(mtcars),
add = T, #Superponer a los puntos
colkey = F,#
cex = 0.5)# tamano de texto
#Histograma tridiencional
data(VADeaths)#muertes por cada mil habitantes de virginia del ano 1940
hist3D(z = VADeaths,
scale = F,#que no escale los valores
expand = 0.01,#se ajuste mejor los valores
bty = "g",#Para las paredes
theta = -40,
phi = 30,#bajar la visualizacion
col = "#1188CC", #color
border = "black",#color del borde
shade = 0.15, #sombra
ltheta =80,#iliminacion
space = 0.3,
ticktype = "detailed")
#Grafica de alturas
scatter3D(x = mtcars$disp,
y = mtcars$wt,
z = mtcars$mpg,
type = "h")
#Como hacemos una grafica una imagen como vector caulqueira de estas 3 opciones se puede usar ( pdf,postscripst,png)
#pdf(file="multivariant.pdf")
#postscript(file="multivariant.ps")
png(file="multivariant.png",
width = 3000,# ancho
height = 3000, # Largo
res = 72)#resolución
GGally::ggpairs(auto[,2:5])
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
dev.off()# y debemos cerar el comando decidido
## png
## 2
#sistema de recomedaciones Regularmemte funciona por usuarios o Items
#install.packages("recommenderlab")
library(recommenderlab)
## Loading required package: Matrix
##
## Attaching package: 'Matrix'
## The following object is masked from 'package:reshape':
##
## expand
## The following objects are masked from 'package:tidyr':
##
## expand, pack, unpack
## Loading required package: arules
##
## Attaching package: 'arules'
## The following object is masked from 'package:dplyr':
##
## recode
## The following objects are masked from 'package:base':
##
## abbreviate, write
## Loading required package: proxy
##
## Attaching package: 'proxy'
## The following object is masked from 'package:Matrix':
##
## as.matrix
## The following object is masked from 'package:raster':
##
## as.matrix
## The following objects are masked from 'package:stats':
##
## as.dist, dist
## The following object is masked from 'package:base':
##
## as.matrix
## Loading required package: registry
## Registered S3 methods overwritten by 'registry':
## method from
## print.registry_field proxy
## print.registry_entry proxy
##
## Attaching package: 'recommenderlab'
## The following objects are masked from 'package:igraph':
##
## normalize, similarity
## The following objects are masked from 'package:caret':
##
## MAE, RMSE
## The following object is masked from 'package:raster':
##
## getData
data(MovieLense)#cargamos los datos
head(MovieLense)#mostramos los necesarios
## 6 x 1664 rating matrix of class 'realRatingMatrix' with 789 ratings.
peliculas mas valoradas por los usuarios
rating_movies <- MovieLense[rowCounts(MovieLense)>50,#filas ( usuario que valida la pelicula mas de 50 veces )
colCounts(MovieLense)>100]#columnas (mas de 100 visualizaciones de peliculas )
#rating_movies@data[1,1]
# rating_movies@data[1,]#primer usuario cuales peliculas valoro y con que calificacion por nombre
# rating_movies@data[,1]#todas las peliculas con todas las valoraciones
head(rownames(rating_movies))# identificadores, los numeros
## [1] "1" "2" "3" "5" "6" "7"
head(colnames(rating_movies))#Peliculas evaluadas mas de 50 veces y que se vio mas de 100 veces
## [1] "Toy Story (1995)" "GoldenEye (1995)"
## [3] "Get Shorty (1995)" "Twelve Monkeys (1995)"
## [5] "Babe (1995)" "Dead Man Walking (1995)"
t.id <- sample(x = c(T,F),# verdaderos y falsos
size = nrow(rating_movies),# tamano de de filas = tamano de rating movies
replace = T,
prob = c(0.8,#80% de valores verdaderos
0.2))#20% valores falsos
data_train <- rating_movies[t.id,]# datos de entrenamiento
data_test <- rating_movies[!t.id,]# datos de test que es el 20%
Indice que mide que tanto se parecen esos items Medidas de similitud
ibcf <- Recommender(data = data_train,#entrenamos el modelo
method = "IBCF",
parameter = list(k = 30))
ibcf
## Recommender of type 'IBCF' for 'realRatingMatrix'
## learned using 438 users.
obtenemos el modelo
ibcf.mod <- getModel(ibcf)
#ibcf.mod#vemos el modelo( matris sparced)
Ahora vemos
View(ibcf.mod$sim)
n_rec <- 10# numero de recomendaciones que queremos
ibcf.pred <- predict(object = ibcf,#modelo del recomender
newdata = data_test,
n = n_rec)
ibcf.pred #creo 10 peliculas de recomendacion para 118 usuarios
## Recommendations as 'topNList' with n = 10 for 122 users.
ibcf.rec.matrix <- sapply(ibcf.pred@items,
function(x){
colnames(rating_movies)[x]#solo el nombre de las peliculas
}
)
ibcf.rec.matrix[,1:2]#solo muestrame para la persona numero 2
## 2 3
## [1,] "Taxi Driver (1976)" "Unforgiven (1992)"
## [2,] "Hoop Dreams (1994)" "Full Monty, The (1997)"
## [3,] "Pulp Fiction (1994)" "Emma (1996)"
## [4,] "Fugitive, The (1993)" "Rainmaker, The (1997)"
## [5,] "Blade Runner (1982)" "Bonnie and Clyde (1967)"
## [6,] "Snow White and the Seven Dwarfs (1937)" "My Left Foot (1989)"
## [7,] "Citizen Kane (1941)" "Arsenic and Old Lace (1944)"
## [8,] "Monty Python and the Holy Grail (1974)" "Ed Wood (1994)"
## [9,] "Princess Bride, The (1987)" "Deer Hunter, The (1978)"
## [10,] "Aliens (1986)" "Clockwork Orange, A (1971)"
Calcula las similitudes entre usuarios, como un usuario valorara basado en otros usuarios teniendo gustos similares
ubcf <- Recommender(data = data_train, method = "UBCF")
ubcf.mod <- getModel(ubcf)
ubcf.mod
## $description
## [1] "UBCF-Real data: contains full or sample of data set"
##
## $data
## 438 x 332 rating matrix of class 'realRatingMatrix' with 43118 ratings.
## Normalized using center on rows.
##
## $method
## [1] "cosine"
##
## $nn
## [1] 25
##
## $sample
## [1] FALSE
##
## $weighted
## [1] TRUE
##
## $normalize
## [1] "center"
##
## $min_matching_items
## [1] 0
##
## $min_predictive_items
## [1] 0
##
## $verbose
## [1] FALSE
ubcf.mod$data[,2]
## 438 x 1 rating matrix of class 'realRatingMatrix' with 109 ratings.
## Normalized using center on rows.
Predigamos
ubcf.pred <- predict(object = ubcf,
newdata = data_test,
n = n_rec)
ubcf.pred
## Recommendations as 'topNList' with n = 10 for 122 users.
hagamos la matriz de recomendacion
ubcf.rec.matrix <- sapply(ubcf.pred@items,
function(x){
colnames(rating_movies)[x]
}
)
ubcf.rec.matrix[,1:3]
## 2
## [1,] "Trainspotting (1996)"
## [2,] "Amistad (1997)"
## [3,] "Big Night (1996)"
## [4,] "Close Shave, A (1995)"
## [5,] "Jackie Brown (1997)"
## [6,] "Strictly Ballroom (1992)"
## [7,] "Cold Comfort Farm (1995)"
## [8,] "Blade Runner (1982)"
## [9,] "Crying Game, The (1992)"
## [10,] "Welcome to the Dollhouse (1995)"
## 3
## [1,] "Crying Game, The (1992)"
## [2,] "Close Shave, A (1995)"
## [3,] "Wrong Trousers, The (1993)"
## [4,] "Killing Fields, The (1984)"
## [5,] "Austin Powers: International Man of Mystery (1997)"
## [6,] "Kolya (1996)"
## [7,] "Ben-Hur (1959)"
## [8,] "Shine (1996)"
## [9,] "Harold and Maude (1971)"
## [10,] "North by Northwest (1959)"
## 6
## [1,] "Hoop Dreams (1994)"
## [2,] "Amistad (1997)"
## [3,] "Rear Window (1954)"
## [4,] "Singin' in the Rain (1952)"
## [5,] "Empire Strikes Back, The (1980)"
## [6,] "Clockwork Orange, A (1971)"
## [7,] "Chinatown (1974)"
## [8,] "Welcome to the Dollhouse (1995)"
## [9,] "Clerks (1994)"
## [10,] "Arsenic and Old Lace (1944)"
head(ubcf.pred@items)
## $`2`
## [1] 254 318 76 230 216 310 61 48 293 51
##
## $`3`
## [1] 293 230 92 278 160 155 276 279 238 258
##
## $`6`
## [1] 22 318 291 308 94 101 295 51 20 298
##
## $`7`
## [1] 127 81 44 188 318 173 216 217 230 76
##
## $`10`
## [1] 200 114 201 127 271 272 81 318 10 273
##
## $`11`
## [1] 136 244 248 121 89 256 272 127 173 253
colnames(rating_movies)[94]
## [1] "Empire Strikes Back, The (1980)"
#Representacion de la matriz de recomendaciones Existen muchos metodos , que se exportan para este tipo de recomendaciones aqui se observan algunos
recommender_models <- recommenderRegistry$get_entries(dataType = "realRatingMatrix")
names(recommender_models)
## [1] "HYBRID_realRatingMatrix" "ALS_realRatingMatrix"
## [3] "ALS_implicit_realRatingMatrix" "IBCF_realRatingMatrix"
## [5] "LIBMF_realRatingMatrix" "POPULAR_realRatingMatrix"
## [7] "RANDOM_realRatingMatrix" "RERECOMMEND_realRatingMatrix"
## [9] "SVD_realRatingMatrix" "SVDF_realRatingMatrix"
## [11] "UBCF_realRatingMatrix"
Como se distribuye esta informacion (5500 valoraciones) item =peliculas
image(MovieLense, main = "Mapa de calor de la matriz de valoraciones de peliculas")
Hagamos quintiles
min_n_movies <- quantile(rowCounts(MovieLense), 0.99)#cuantil que mas valoran las peliculas
min_n_movies#de este numero en adelante( mas de ese numero en valoraciones )
## 99%
## 440.96
min_n_users <- quantile(colCounts(MovieLense), 0.99)#cuantil con peliculas mas visto
min_n_users#de este numero en adelante ( ha valorado mas estas peliculas )
## 99%
## 371.07
grafiquemoslo
image(MovieLense[rowCounts(MovieLense)> min_n_movies,#usuarios que valoraron mas de 371
colCounts(MovieLense)>min_n_users])#valoradas 4040.96
Movamos los valores de los cuartiles Basado en las particiones para entrenar el modelo y sacamos los cuantiles
min_r_movies <- quantile(rowCounts(rating_movies), 0.98)
min_r_users <- quantile(colCounts(rating_movies), 0.98)
los graficamos
image(rating_movies[rowCounts(rating_movies)> min_r_movies,
colCounts(rating_movies)>min_r_users],
main = "Mapa de calor del top de peliculas y usuarios")
#Recomendaciones basadas en datos binarios
rating_movies_viewed <- binarize(rating_movies,#Datos iniciales
minRating = 1)#Valores positivos
image(rating_movies_viewed)#ver la imagen del objeto vinario
Creemos datos de entrenamiento para el sistema binario
t.id <- sample(x=c(T,F),
size = nrow(rating_movies_viewed),# tamano de todas las filas del dataframe
replace = T, #reemplazo
prob = c(0.8, 0.2))#proporciones 80% verdaderas , 20% falsas
b_data_train <- rating_movies_viewed[t.id,]#datos de ntrenamiento igual al 80%
b_data_test <- rating_movies_viewed[!t.id,]# datos de validacion igual al 20% retante
#Jaccard index: d(i,j) = (i y j) / (i o j) cohincidencias entre usuarios y vistas (i,j) No es igual que la media y valores tomados , no son continuos , son discretos los valores creamos el modelo que es un jacard
b_model <- Recommender(data = b_data_train,#datos de entrenamiento
method = "IBCF",#metodo
parameter = list(method = "Jaccard")#como metodo el indice de jacard
)
b_details <- getModel(b_model)#el objeto lo convertimos en el modelo
predeciremos en base a los t.id’s
b_pred <- predict(object = b_model,
newdata = b_data_test,
n = n_rec)
creamos la matriz de recoemendacion
b_rec_matrix <- sapply(b_pred@items, function(x){
colnames(rating_movies)[x]
})
veamos las recoemendaciones
b_rec_matrix[,1:3]
## 26
## [1,] "Empire Strikes Back, The (1980)"
## [2,] "Raiders of the Lost Ark (1981)"
## [3,] "Back to the Future (1985)"
## [4,] "Indiana Jones and the Last Crusade (1989)"
## [5,] "Terminator, The (1984)"
## [6,] "Silence of the Lambs, The (1991)"
## [7,] "Alien (1979)"
## [8,] "Pulp Fiction (1994)"
## [9,] "Forrest Gump (1994)"
## [10,] "Monty Python and the Holy Grail (1974)"
## 41
## [1,] "Empire Strikes Back, The (1980)"
## [2,] "Back to the Future (1985)"
## [3,] "Indiana Jones and the Last Crusade (1989)"
## [4,] "Fugitive, The (1993)"
## [5,] "Alien (1979)"
## [6,] "Independence Day (ID4) (1996)"
## [7,] "Jurassic Park (1993)"
## [8,] "Aliens (1986)"
## [9,] "Twelve Monkeys (1995)"
## [10,] "Blade Runner (1982)"
## 44
## [1,] "Indiana Jones and the Last Crusade (1989)"
## [2,] "Fugitive, The (1993)"
## [3,] "Batman (1989)"
## [4,] "Speed (1994)"
## [5,] "Jaws (1975)"
## [6,] "Rock, The (1996)"
## [7,] "Apollo 13 (1995)"
## [8,] "Die Hard: With a Vengeance (1995)"
## [9,] "Blues Brothers, The (1980)"
## [10,] "Die Hard 2 (1990)"
#Filtros basados en el contenido Sistema de recomendacion basado en contenido (clustering) iniciamos haciendo clustering leemos las URL’s
movie_url <- "http://files.grouplens.org/datasets/movielens/ml-100k/u.item"#las peliculas
users_url <- "http://files.grouplens.org/datasets/movielens/ml-100k/u.data"#los usuarios
leemos los datos de scraping
#leemos el objeto
movie_title_df <- read.table(movie_url,
header=F,#no tiene titulos
sep = "|",#el separador lo identifica
quote = "\"")#detectar las secuencia de caracteres
users_df <- read.table(users_url,
header = F,
sep = "\t",
quote = "\"")
names(movie_title_df) <- c("MovieID", "Title","ReleaseDate",
"video_release_date",
"IMDb_URL", "unknown", "Action", "Adventure",
"Animation", "Childrens", "Comedy", "Crime",
"Documentary", "Drama", "Fantasy",
"FilmNoir", "Horror", "Musical",
"Mystery", "Romance", "SciFi",
"Thriller", "War", "Western")
veamos is esta bien aplicado
movie_title_df[,1:5]
## MovieID
## 1 1
## 2 2
## 3 3
## 4 4
## 5 5
## 6 6
## 7 7
## 8 8
## 9 9
## 10 10
## 11 11
## 12 12
## 13 13
## 14 14
## 15 15
## 16 16
## 17 17
## 18 18
## 19 19
## 20 20
## 21 21
## 22 22
## 23 23
## 24 24
## 25 25
## 26 26
## 27 27
## 28 28
## 29 29
## 30 30
## 31 31
## 32 32
## 33 33
## 34 34
## 35 35
## 36 36
## 37 37
## 38 38
## 39 39
## 40 40
## 41 41
## 42 42
## 43 43
## 44 44
## 45 45
## 46 46
## 47 47
## 48 48
## 49 49
## 50 50
## 51 51
## 52 52
## 53 53
## 54 54
## 55 55
## 56 56
## 57 57
## 58 58
## 59 59
## 60 60
## 61 61
## 62 62
## 63 63
## 64 64
## 65 65
## 66 66
## 67 67
## 68 68
## 69 69
## 70 70
## 71 71
## 72 72
## 73 73
## 74 74
## 75 75
## 76 76
## 77 77
## 78 78
## 79 79
## 80 80
## 81 81
## 82 82
## 83 83
## 84 84
## 85 85
## 86 86
## 87 87
## 88 88
## 89 89
## 90 90
## 91 91
## 92 92
## 93 93
## 94 94
## 95 95
## 96 96
## 97 97
## 98 98
## 99 99
## 100 100
## 101 101
## 102 102
## 103 103
## 104 104
## 105 105
## 106 106
## 107 107
## 108 108
## 109 109
## 110 110
## 111 111
## 112 112
## 113 113
## 114 114
## 115 115
## 116 116
## 117 117
## 118 118
## 119 119
## 120 120
## 121 121
## 122 122
## 123 123
## 124 124
## 125 125
## 126 126
## 127 127
## 128 128
## 129 129
## 130 130
## 131 131
## 132 132
## 133 133
## 134 134
## 135 135
## 136 136
## 137 137
## 138 138
## 139 139
## 140 140
## 141 141
## 142 142
## 143 143
## 144 144
## 145 145
## 146 146
## 147 147
## 148 148
## 149 149
## 150 150
## 151 151
## 152 152
## 153 153
## 154 154
## 155 155
## 156 156
## 157 157
## 158 158
## 159 159
## 160 160
## 161 161
## 162 162
## 163 163
## 164 164
## 165 165
## 166 166
## 167 167
## 168 168
## 169 169
## 170 170
## 171 171
## 172 172
## 173 173
## 174 174
## 175 175
## 176 176
## 177 177
## 178 178
## 179 179
## 180 180
## 181 181
## 182 182
## 183 183
## 184 184
## 185 185
## 186 186
## 187 187
## 188 188
## 189 189
## 190 190
## 191 191
## 192 192
## 193 193
## 194 194
## 195 195
## 196 196
## 197 197
## 198 198
## 199 199
## 200 200
## 201 201
## 202 202
## 203 203
## 204 204
## 205 205
## 206 206
## 207 207
## 208 208
## 209 209
## 210 210
## 211 211
## 212 212
## 213 213
## 214 214
## 215 215
## 216 216
## 217 217
## 218 218
## 219 219
## 220 220
## 221 221
## 222 222
## 223 223
## 224 224
## 225 225
## 226 226
## 227 227
## 228 228
## 229 229
## 230 230
## 231 231
## 232 232
## 233 233
## 234 234
## 235 235
## 236 236
## 237 237
## 238 238
## 239 239
## 240 240
## 241 241
## 242 242
## 243 243
## 244 244
## 245 245
## 246 246
## 247 247
## 248 248
## 249 249
## 250 250
## 251 251
## 252 252
## 253 253
## 254 254
## 255 255
## 256 256
## 257 257
## 258 258
## 259 259
## 260 260
## 261 261
## 262 262
## 263 263
## 264 264
## 265 265
## 266 266
## 267 267
## 268 268
## 269 269
## 270 270
## 271 271
## 272 272
## 273 273
## 274 274
## 275 275
## 276 276
## 277 277
## 278 278
## 279 279
## 280 280
## 281 281
## 282 282
## 283 283
## 284 284
## 285 285
## 286 286
## 287 287
## 288 288
## 289 289
## 290 290
## 291 291
## 292 292
## 293 293
## 294 294
## 295 295
## 296 296
## 297 297
## 298 298
## 299 299
## 300 300
## 301 301
## 302 302
## 303 303
## 304 304
## 305 305
## 306 306
## 307 307
## 308 308
## 309 309
## 310 310
## 311 311
## 312 312
## 313 313
## 314 314
## 315 315
## 316 316
## 317 317
## 318 318
## 319 319
## 320 320
## 321 321
## 322 322
## 323 323
## 324 324
## 325 325
## 326 326
## 327 327
## 328 328
## 329 329
## 330 330
## 331 331
## 332 332
## 333 333
## 334 334
## 335 335
## 336 336
## 337 337
## 338 338
## 339 339
## 340 340
## 341 341
## 342 342
## 343 343
## 344 344
## 345 345
## 346 346
## 347 347
## 348 348
## 349 349
## 350 350
## 351 351
## 352 352
## 353 353
## 354 354
## 355 355
## 356 356
## 357 357
## 358 358
## 359 359
## 360 360
## 361 361
## 362 362
## 363 363
## 364 364
## 365 365
## 366 366
## 367 367
## 368 368
## 369 369
## 370 370
## 371 371
## 372 372
## 373 373
## 374 374
## 375 375
## 376 376
## 377 377
## 378 378
## 379 379
## 380 380
## 381 381
## 382 382
## 383 383
## 384 384
## 385 385
## 386 386
## 387 387
## 388 388
## 389 389
## 390 390
## 391 391
## 392 392
## 393 393
## 394 394
## 395 395
## 396 396
## 397 397
## 398 398
## 399 399
## 400 400
## 401 401
## 402 402
## 403 403
## 404 404
## 405 405
## 406 406
## 407 407
## 408 408
## 409 409
## 410 410
## 411 411
## 412 412
## 413 413
## 414 414
## 415 415
## 416 416
## 417 417
## 418 418
## 419 419
## 420 420
## 421 421
## 422 422
## 423 423
## 424 424
## 425 425
## 426 426
## 427 427
## 428 428
## 429 429
## 430 430
## 431 431
## 432 432
## 433 433
## 434 434
## 435 435
## 436 436
## 437 437
## 438 438
## 439 439
## 440 440
## 441 441
## 442 442
## 443 443
## 444 444
## 445 445
## 446 446
## 447 447
## 448 448
## 449 449
## 450 450
## 451 451
## 452 452
## 453 453
## 454 454
## 455 455
## 456 456
## 457 457
## 458 458
## 459 459
## 460 460
## 461 461
## 462 462
## 463 463
## 464 464
## 465 465
## 466 466
## 467 467
## 468 468
## 469 469
## 470 470
## 471 471
## 472 472
## 473 473
## 474 474
## 475 475
## 476 476
## 477 477
## 478 478
## 479 479
## 480 480
## 481 481
## 482 482
## 483 483
## 484 484
## 485 485
## 486 486
## 487 487
## 488 488
## 489 489
## 490 490
## 491 491
## 492 492
## 493 493
## 494 494
## 495 495
## 496 496
## 497 497
## 498 498
## 499 499
## 500 500
## 501 501
## 502 502
## 503 503
## 504 504
## 505 505
## 506 506
## 507 507
## 508 508
## 509 509
## 510 510
## 511 511
## 512 512
## 513 513
## 514 514
## 515 515
## 516 516
## 517 517
## 518 518
## 519 519
## 520 520
## 521 521
## 522 522
## 523 523
## 524 524
## 525 525
## 526 526
## 527 527
## 528 528
## 529 529
## 530 530
## 531 531
## 532 532
## 533 533
## 534 534
## 535 535
## 536 536
## 537 537
## 538 538
## 539 539
## 540 540
## 541 541
## 542 542
## 543 543
## 544 544
## 545 545
## 546 546
## 547 547
## 548 548
## 549 549
## 550 550
## 551 551
## 552 552
## 553 553
## 554 554
## 555 555
## 556 556
## 557 557
## 558 558
## 559 559
## 560 560
## 561 561
## 562 562
## 563 563
## 564 564
## 565 565
## 566 566
## 567 567
## 568 568
## 569 569
## 570 570
## 571 571
## 572 572
## 573 573
## 574 574
## 575 575
## 576 576
## 577 577
## 578 578
## 579 579
## 580 580
## 581 581
## 582 582
## 583 583
## 584 584
## 585 585
## 586 586
## 587 587
## 588 588
## 589 589
## 590 590
## 591 591
## 592 592
## 593 593
## 594 594
## 595 595
## 596 596
## 597 597
## 598 598
## 599 599
## 600 600
## 601 601
## 602 602
## 603 603
## 604 604
## 605 605
## 606 606
## 607 607
## 608 608
## 609 609
## 610 610
## 611 611
## 612 612
## 613 613
## 614 614
## 615 615
## 616 616
## 617 617
## 618 618
## 619 619
## 620 620
## 621 621
## 622 622
## 623 623
## 624 624
## 625 625
## 626 626
## 627 627
## 628 628
## 629 629
## 630 630
## 631 631
## 632 632
## 633 633
## 634 634
## 635 635
## 636 636
## 637 637
## 638 638
## 639 639
## 640 640
## 641 641
## 642 642
## 643 643
## 644 644
## 645 645
## 646 646
## 647 647
## 648 648
## 649 649
## 650 650
## 651 651
## 652 652
## 653 653
## 654 654
## 655 655
## 656 656
## 657 657
## 658 658
## 659 659
## 660 660
## 661 661
## 662 662
## 663 663
## 664 664
## 665 665
## 666 666
## 667 667
## 668 668
## 669 669
## 670 670
## 671 671
## 672 672
## 673 673
## 674 674
## 675 675
## 676 676
## 677 677
## 678 678
## 679 679
## 680 680
## 681 681
## 682 682
## 683 683
## 684 684
## 685 685
## 686 686
## 687 687
## 688 688
## 689 689
## 690 690
## 691 691
## 692 692
## 693 693
## 694 694
## 695 695
## 696 696
## 697 697
## 698 698
## 699 699
## 700 700
## 701 701
## 702 702
## 703 703
## 704 704
## 705 705
## 706 706
## 707 707
## 708 708
## 709 709
## 710 710
## 711 711
## 712 712
## 713 713
## 714 714
## 715 715
## 716 716
## 717 717
## 718 718
## 719 719
## 720 720
## 721 721
## 722 722
## 723 723
## 724 724
## 725 725
## 726 726
## 727 727
## 728 728
## 729 729
## 730 730
## 731 731
## 732 732
## 733 733
## 734 734
## 735 735
## 736 736
## 737 737
## 738 738
## 739 739
## 740 740
## 741 741
## 742 742
## 743 743
## 744 744
## 745 745
## 746 746
## 747 747
## 748 748
## 749 749
## 750 750
## 751 751
## 752 752
## 753 753
## 754 754
## 755 755
## 756 756
## 757 757
## 758 758
## 759 759
## 760 760
## 761 761
## 762 762
## 763 763
## 764 764
## 765 765
## 766 766
## 767 767
## 768 768
## 769 769
## 770 770
## 771 771
## 772 772
## 773 773
## 774 774
## 775 775
## 776 776
## 777 777
## 778 778
## 779 779
## 780 780
## 781 781
## 782 782
## 783 783
## 784 784
## 785 785
## 786 786
## 787 787
## 788 788
## 789 789
## 790 790
## 791 791
## 792 792
## 793 793
## 794 794
## 795 795
## 796 796
## 797 797
## 798 798
## 799 799
## 800 800
## 801 801
## 802 802
## 803 803
## 804 804
## 805 805
## 806 806
## 807 807
## 808 808
## 809 809
## 810 810
## 811 811
## 812 812
## 813 813
## 814 814
## 815 815
## 816 816
## 817 817
## 818 818
## 819 819
## 820 820
## 821 821
## 822 822
## 823 823
## 824 824
## 825 825
## 826 826
## 827 827
## 828 828
## 829 829
## 830 830
## 831 831
## 832 832
## 833 833
## 834 834
## 835 835
## 836 836
## 837 837
## 838 838
## 839 839
## 840 840
## 841 841
## 842 842
## 843 843
## 844 844
## 845 845
## 846 846
## 847 847
## 848 848
## 849 849
## 850 850
## 851 851
## 852 852
## 853 853
## 854 854
## 855 855
## 856 856
## 857 857
## 858 858
## 859 859
## 860 860
## 861 861
## 862 862
## 863 863
## 864 864
## 865 865
## 866 866
## 867 867
## 868 868
## 869 869
## 870 870
## 871 871
## 872 872
## 873 873
## 874 874
## 875 875
## 876 876
## 877 877
## 878 878
## 879 879
## 880 880
## 881 881
## 882 882
## 883 883
## 884 884
## 885 885
## 886 886
## 887 887
## 888 888
## 889 889
## 890 890
## 891 891
## 892 892
## 893 893
## 894 894
## 895 895
## 896 896
## 897 897
## 898 898
## 899 899
## 900 900
## 901 901
## 902 902
## 903 903
## 904 904
## 905 905
## 906 906
## 907 907
## 908 908
## 909 909
## 910 910
## 911 911
## 912 912
## 913 913
## 914 914
## 915 915
## 916 916
## 917 917
## 918 918
## 919 919
## 920 920
## 921 921
## 922 922
## 923 923
## 924 924
## 925 925
## 926 926
## 927 927
## 928 928
## 929 929
## 930 930
## 931 931
## 932 932
## 933 933
## 934 934
## 935 935
## 936 936
## 937 937
## 938 938
## 939 939
## 940 940
## 941 941
## 942 942
## 943 943
## 944 944
## 945 945
## 946 946
## 947 947
## 948 948
## 949 949
## 950 950
## 951 951
## 952 952
## 953 953
## 954 954
## 955 955
## 956 956
## 957 957
## 958 958
## 959 959
## 960 960
## 961 961
## 962 962
## 963 963
## 964 964
## 965 965
## 966 966
## 967 967
## 968 968
## 969 969
## 970 970
## 971 971
## 972 972
## 973 973
## 974 974
## 975 975
## 976 976
## 977 977
## 978 978
## 979 979
## 980 980
## 981 981
## 982 982
## 983 983
## 984 984
## 985 985
## 986 986
## 987 987
## 988 988
## 989 989
## 990 990
## 991 991
## 992 992
## 993 993
## 994 994
## 995 995
## 996 996
## 997 997
## 998 998
## 999 999
## 1000 1000
## 1001 1001
## 1002 1002
## 1003 1003
## 1004 1004
## 1005 1005
## 1006 1006
## 1007 1007
## 1008 1008
## 1009 1009
## 1010 1010
## 1011 1011
## 1012 1012
## 1013 1013
## 1014 1014
## 1015 1015
## 1016 1016
## 1017 1017
## 1018 1018
## 1019 1019
## 1020 1020
## 1021 1021
## 1022 1022
## 1023 1023
## 1024 1024
## 1025 1025
## 1026 1026
## 1027 1027
## 1028 1028
## 1029 1029
## 1030 1030
## 1031 1031
## 1032 1032
## 1033 1033
## 1034 1034
## 1035 1035
## 1036 1036
## 1037 1037
## 1038 1038
## 1039 1039
## 1040 1040
## 1041 1041
## 1042 1042
## 1043 1043
## 1044 1044
## 1045 1045
## 1046 1046
## 1047 1047
## 1048 1048
## 1049 1049
## 1050 1050
## 1051 1051
## 1052 1052
## 1053 1053
## 1054 1054
## 1055 1055
## 1056 1056
## 1057 1057
## 1058 1058
## 1059 1059
## 1060 1060
## 1061 1061
## 1062 1062
## 1063 1063
## 1064 1064
## 1065 1065
## 1066 1066
## 1067 1067
## 1068 1068
## 1069 1069
## 1070 1070
## 1071 1071
## 1072 1072
## 1073 1073
## 1074 1074
## 1075 1075
## 1076 1076
## 1077 1077
## 1078 1078
## 1079 1079
## 1080 1080
## 1081 1081
## 1082 1082
## 1083 1083
## 1084 1084
## 1085 1085
## 1086 1086
## 1087 1087
## 1088 1088
## 1089 1089
## 1090 1090
## 1091 1091
## 1092 1092
## 1093 1093
## 1094 1094
## 1095 1095
## 1096 1096
## 1097 1097
## 1098 1098
## 1099 1099
## 1100 1100
## 1101 1101
## 1102 1102
## 1103 1103
## 1104 1104
## 1105 1105
## 1106 1106
## 1107 1107
## 1108 1108
## 1109 1109
## 1110 1110
## 1111 1111
## 1112 1112
## 1113 1113
## 1114 1114
## 1115 1115
## 1116 1116
## 1117 1117
## 1118 1118
## 1119 1119
## 1120 1120
## 1121 1121
## 1122 1122
## 1123 1123
## 1124 1124
## 1125 1125
## 1126 1126
## 1127 1127
## 1128 1128
## 1129 1129
## 1130 1130
## 1131 1131
## 1132 1132
## 1133 1133
## 1134 1134
## 1135 1135
## 1136 1136
## 1137 1137
## 1138 1138
## 1139 1139
## 1140 1140
## 1141 1141
## 1142 1142
## 1143 1143
## 1144 1144
## 1145 1145
## 1146 1146
## 1147 1147
## 1148 1148
## 1149 1149
## 1150 1150
## 1151 1151
## 1152 1152
## 1153 1153
## 1154 1154
## 1155 1155
## 1156 1156
## 1157 1157
## 1158 1158
## 1159 1159
## 1160 1160
## 1161 1161
## 1162 1162
## 1163 1163
## 1164 1164
## 1165 1165
## 1166 1166
## 1167 1167
## 1168 1168
## 1169 1169
## 1170 1170
## 1171 1171
## 1172 1172
## 1173 1173
## 1174 1174
## 1175 1175
## 1176 1176
## 1177 1177
## 1178 1178
## 1179 1179
## 1180 1180
## 1181 1181
## 1182 1182
## 1183 1183
## 1184 1184
## 1185 1185
## 1186 1186
## 1187 1187
## 1188 1188
## 1189 1189
## 1190 1190
## 1191 1191
## 1192 1192
## 1193 1193
## 1194 1194
## 1195 1195
## 1196 1196
## 1197 1197
## 1198 1198
## 1199 1199
## 1200 1200
## 1201 1201
## 1202 1202
## 1203 1203
## 1204 1204
## 1205 1205
## 1206 1206
## 1207 1207
## 1208 1208
## 1209 1209
## 1210 1210
## 1211 1211
## 1212 1212
## 1213 1213
## 1214 1214
## 1215 1215
## 1216 1216
## 1217 1217
## 1218 1218
## 1219 1219
## 1220 1220
## 1221 1221
## 1222 1222
## 1223 1223
## 1224 1224
## 1225 1225
## 1226 1226
## 1227 1227
## 1228 1228
## 1229 1229
## 1230 1230
## 1231 1231
## 1232 1232
## 1233 1233
## 1234 1234
## 1235 1235
## 1236 1236
## 1237 1237
## 1238 1238
## 1239 1239
## 1240 1240
## 1241 1241
## 1242 1242
## 1243 1243
## 1244 1244
## 1245 1245
## 1246 1246
## 1247 1247
## 1248 1248
## 1249 1249
## 1250 1250
## 1251 1251
## 1252 1252
## 1253 1253
## 1254 1254
## 1255 1255
## 1256 1256
## 1257 1257
## 1258 1258
## 1259 1259
## 1260 1260
## 1261 1261
## 1262 1262
## 1263 1263
## 1264 1264
## 1265 1265
## 1266 1266
## 1267 1267
## 1268 1268
## 1269 1269
## 1270 1270
## 1271 1271
## 1272 1272
## 1273 1273
## 1274 1274
## 1275 1275
## 1276 1276
## 1277 1277
## 1278 1278
## 1279 1279
## 1280 1280
## 1281 1281
## 1282 1282
## 1283 1283
## 1284 1284
## 1285 1285
## 1286 1286
## 1287 1287
## 1288 1288
## 1289 1289
## 1290 1290
## 1291 1291
## 1292 1292
## 1293 1293
## 1294 1294
## 1295 1295
## 1296 1296
## 1297 1297
## 1298 1298
## 1299 1299
## 1300 1300
## 1301 1301
## 1302 1302
## 1303 1303
## 1304 1304
## 1305 1305
## 1306 1306
## 1307 1307
## 1308 1308
## 1309 1309
## 1310 1310
## 1311 1311
## 1312 1312
## 1313 1313
## 1314 1314
## 1315 1315
## 1316 1316
## 1317 1317
## 1318 1318
## 1319 1319
## 1320 1320
## 1321 1321
## 1322 1322
## 1323 1323
## 1324 1324
## 1325 1325
## 1326 1326
## 1327 1327
## 1328 1328
## 1329 1329
## 1330 1330
## 1331 1331
## 1332 1332
## 1333 1333
## 1334 1334
## 1335 1335
## 1336 1336
## 1337 1337
## 1338 1338
## 1339 1339
## 1340 1340
## 1341 1341
## 1342 1342
## 1343 1343
## 1344 1344
## 1345 1345
## 1346 1346
## 1347 1347
## 1348 1348
## 1349 1349
## 1350 1350
## 1351 1351
## 1352 1352
## 1353 1353
## 1354 1354
## 1355 1355
## 1356 1356
## 1357 1357
## 1358 1358
## 1359 1359
## 1360 1360
## 1361 1361
## 1362 1362
## 1363 1363
## 1364 1364
## 1365 1365
## 1366 1366
## 1367 1367
## 1368 1368
## 1369 1369
## 1370 1370
## 1371 1371
## 1372 1372
## 1373 1373
## 1374 1374
## 1375 1375
## 1376 1376
## 1377 1377
## 1378 1378
## 1379 1379
## 1380 1380
## 1381 1381
## 1382 1382
## 1383 1383
## 1384 1384
## 1385 1385
## 1386 1386
## 1387 1387
## 1388 1388
## 1389 1389
## 1390 1390
## 1391 1391
## 1392 1392
## 1393 1393
## 1394 1394
## 1395 1395
## 1396 1396
## 1397 1397
## 1398 1398
## 1399 1399
## 1400 1400
## 1401 1401
## 1402 1402
## 1403 1403
## 1404 1404
## 1405 1405
## 1406 1406
## 1407 1407
## 1408 1408
## 1409 1409
## 1410 1410
## 1411 1411
## 1412 1412
## 1413 1413
## 1414 1414
## 1415 1415
## 1416 1416
## 1417 1417
## 1418 1418
## 1419 1419
## 1420 1420
## 1421 1421
## 1422 1422
## 1423 1423
## 1424 1424
## 1425 1425
## 1426 1426
## 1427 1427
## 1428 1428
## 1429 1429
## 1430 1430
## 1431 1431
## 1432 1432
## 1433 1433
## 1434 1434
## 1435 1435
## 1436 1436
## 1437 1437
## 1438 1438
## 1439 1439
## 1440 1440
## 1441 1441
## 1442 1442
## 1443 1443
## 1444 1444
## 1445 1445
## 1446 1446
## 1447 1447
## 1448 1448
## 1449 1449
## 1450 1450
## 1451 1451
## 1452 1452
## 1453 1453
## 1454 1454
## 1455 1455
## 1456 1456
## 1457 1457
## 1458 1458
## 1459 1459
## 1460 1460
## 1461 1461
## 1462 1462
## 1463 1463
## 1464 1464
## 1465 1465
## 1466 1466
## 1467 1467
## 1468 1468
## 1469 1469
## 1470 1470
## 1471 1471
## 1472 1472
## 1473 1473
## 1474 1474
## 1475 1475
## 1476 1476
## 1477 1477
## 1478 1478
## 1479 1479
## 1480 1480
## 1481 1481
## 1482 1482
## 1483 1483
## 1484 1484
## 1485 1485
## 1486 1486
## 1487 1487
## 1488 1488
## 1489 1489
## 1490 1490
## 1491 1491
## 1492 1492
## 1493 1493
## 1494 1494
## 1495 1495
## 1496 1496
## 1497 1497
## 1498 1498
## 1499 1499
## 1500 1500
## 1501 1501
## 1502 1502
## 1503 1503
## 1504 1504
## 1505 1505
## 1506 1506
## 1507 1507
## 1508 1508
## 1509 1509
## 1510 1510
## 1511 1511
## 1512 1512
## 1513 1513
## 1514 1514
## 1515 1515
## 1516 1516
## 1517 1517
## 1518 1518
## 1519 1519
## 1520 1520
## 1521 1521
## 1522 1522
## 1523 1523
## 1524 1524
## 1525 1525
## 1526 1526
## 1527 1527
## 1528 1528
## 1529 1529
## 1530 1530
## 1531 1531
## 1532 1532
## 1533 1533
## 1534 1534
## 1535 1535
## 1536 1536
## 1537 1537
## 1538 1538
## 1539 1539
## 1540 1540
## 1541 1541
## 1542 1542
## 1543 1543
## 1544 1544
## 1545 1545
## 1546 1546
## 1547 1547
## 1548 1548
## 1549 1549
## 1550 1550
## 1551 1551
## 1552 1552
## 1553 1553
## 1554 1554
## 1555 1555
## 1556 1556
## 1557 1557
## 1558 1558
## 1559 1559
## 1560 1560
## 1561 1561
## 1562 1562
## 1563 1563
## 1564 1564
## 1565 1565
## 1566 1566
## 1567 1567
## 1568 1568
## 1569 1569
## 1570 1570
## 1571 1571
## 1572 1572
## 1573 1573
## 1574 1574
## 1575 1575
## 1576 1576
## 1577 1577
## 1578 1578
## 1579 1579
## 1580 1580
## 1581 1581
## 1582 1582
## 1583 1583
## 1584 1584
## 1585 1585
## 1586 1586
## 1587 1587
## 1588 1588
## 1589 1589
## 1590 1590
## 1591 1591
## 1592 1592
## 1593 1593
## 1594 1594
## 1595 1595
## 1596 1596
## 1597 1597
## 1598 1598
## 1599 1599
## 1600 1600
## 1601 1601
## 1602 1602
## 1603 1603
## 1604 1604
## 1605 1605
## 1606 1606
## 1607 1607
## 1608 1608
## 1609 1609
## 1610 1610
## 1611 1611
## 1612 1612
## 1613 1613
## 1614 1614
## 1615 1615
## 1616 1616
## 1617 1617
## 1618 1618
## 1619 1619
## 1620 1620
## 1621 1621
## 1622 1622
## 1623 1623
## 1624 1624
## 1625 1625
## 1626 1626
## 1627 1627
## 1628 1628
## 1629 1629
## 1630 1630
## 1631 1631
## 1632 1632
## 1633 1633
## 1634 1634
## 1635 1635
## 1636 1636
## 1637 1637
## 1638 1638
## 1639 1639
## 1640 1640
## 1641 1641
## 1642 1642
## 1643 1643
## 1644 1644
## 1645 1645
## 1646 1646
## 1647 1647
## 1648 1648
## 1649 1649
## 1650 1650
## 1651 1651
## 1652 1652
## 1653 1653
## 1654 1654
## 1655 1655
## 1656 1656
## 1657 1657
## 1658 1658
## 1659 1659
## 1660 1660
## 1661 1661
## 1662 1662
## 1663 1663
## 1664 1664
## 1665 1665
## 1666 1666
## 1667 1667
## 1668 1668
## 1669 1669
## 1670 1670
## 1671 1671
## 1672 1672
## 1673 1673
## 1674 1674
## 1675 1675
## 1676 1676
## 1677 1677
## 1678 1678
## 1679 1679
## 1680 1680
## 1681 1681
## 1682 1682
## Title
## 1 Toy Story (1995)
## 2 GoldenEye (1995)
## 3 Four Rooms (1995)
## 4 Get Shorty (1995)
## 5 Copycat (1995)
## 6 Shanghai Triad (Yao a yao yao dao waipo qiao) (1995)
## 7 Twelve Monkeys (1995)
## 8 Babe (1995)
## 9 Dead Man Walking (1995)
## 10 Richard III (1995)
## 11 Seven (Se7en) (1995)
## 12 Usual Suspects, The (1995)
## 13 Mighty Aphrodite (1995)
## 14 Postino, Il (1994)
## 15 Mr. Holland's Opus (1995)
## 16 French Twist (Gazon maudit) (1995)
## 17 From Dusk Till Dawn (1996)
## 18 White Balloon, The (1995)
## 19 Antonia's Line (1995)
## 20 Angels and Insects (1995)
## 21 Muppet Treasure Island (1996)
## 22 Braveheart (1995)
## 23 Taxi Driver (1976)
## 24 Rumble in the Bronx (1995)
## 25 Birdcage, The (1996)
## 26 Brothers McMullen, The (1995)
## 27 Bad Boys (1995)
## 28 Apollo 13 (1995)
## 29 Batman Forever (1995)
## 30 Belle de jour (1967)
## 31 Crimson Tide (1995)
## 32 Crumb (1994)
## 33 Desperado (1995)
## 34 Doom Generation, The (1995)
## 35 Free Willy 2: The Adventure Home (1995)
## 36 Mad Love (1995)
## 37 Nadja (1994)
## 38 Net, The (1995)
## 39 Strange Days (1995)
## 40 To Wong Foo, Thanks for Everything! Julie Newmar (1995)
## 41 Billy Madison (1995)
## 42 Clerks (1994)
## 43 Disclosure (1994)
## 44 Dolores Claiborne (1994)
## 45 Eat Drink Man Woman (1994)
## 46 Exotica (1994)
## 47 Ed Wood (1994)
## 48 Hoop Dreams (1994)
## 49 I.Q. (1994)
## 50 Star Wars (1977)
## 51 Legends of the Fall (1994)
## 52 Madness of King George, The (1994)
## 53 Natural Born Killers (1994)
## 54 Outbreak (1995)
## 55 Professional, The (1994)
## 56 Pulp Fiction (1994)
## 57 Priest (1994)
## 58 Quiz Show (1994)
## 59 Three Colors: Red (1994)
## 60 Three Colors: Blue (1993)
## 61 Three Colors: White (1994)
## 62 Stargate (1994)
## 63 Santa Clause, The (1994)
## 64 Shawshank Redemption, The (1994)
## 65 What's Eating Gilbert Grape (1993)
## 66 While You Were Sleeping (1995)
## 67 Ace Ventura: Pet Detective (1994)
## 68 Crow, The (1994)
## 69 Forrest Gump (1994)
## 70 Four Weddings and a Funeral (1994)
## 71 Lion King, The (1994)
## 72 Mask, The (1994)
## 73 Maverick (1994)
## 74 Faster Pussycat! Kill! Kill! (1965)
## 75 Brother Minister: The Assassination of Malcolm X (1994)
## 76 Carlito's Way (1993)
## 77 Firm, The (1993)
## 78 Free Willy (1993)
## 79 Fugitive, The (1993)
## 80 Hot Shots! Part Deux (1993)
## 81 Hudsucker Proxy, The (1994)
## 82 Jurassic Park (1993)
## 83 Much Ado About Nothing (1993)
## 84 Robert A. Heinlein's The Puppet Masters (1994)
## 85 Ref, The (1994)
## 86 Remains of the Day, The (1993)
## 87 Searching for Bobby Fischer (1993)
## 88 Sleepless in Seattle (1993)
## 89 Blade Runner (1982)
## 90 So I Married an Axe Murderer (1993)
## 91 Nightmare Before Christmas, The (1993)
## 92 True Romance (1993)
## 93 Welcome to the Dollhouse (1995)
## 94 Home Alone (1990)
## 95 Aladdin (1992)
## 96 Terminator 2: Judgment Day (1991)
## 97 Dances with Wolves (1990)
## 98 Silence of the Lambs, The (1991)
## 99 Snow White and the Seven Dwarfs (1937)
## 100 Fargo (1996)
## 101 Heavy Metal (1981)
## 102 Aristocats, The (1970)
## 103 All Dogs Go to Heaven 2 (1996)
## 104 Theodore Rex (1995)
## 105 Sgt. Bilko (1996)
## 106 Diabolique (1996)
## 107 Moll Flanders (1996)
## 108 Kids in the Hall: Brain Candy (1996)
## 109 Mystery Science Theater 3000: The Movie (1996)
## 110 Operation Dumbo Drop (1995)
## 111 Truth About Cats & Dogs, The (1996)
## 112 Flipper (1996)
## 113 Horseman on the Roof, The (Hussard sur le toit, Le) (1995)
## 114 Wallace & Gromit: The Best of Aardman Animation (1996)
## 115 Haunted World of Edward D. Wood Jr., The (1995)
## 116 Cold Comfort Farm (1995)
## 117 Rock, The (1996)
## 118 Twister (1996)
## 119 Maya Lin: A Strong Clear Vision (1994)
## 120 Striptease (1996)
## 121 Independence Day (ID4) (1996)
## 122 Cable Guy, The (1996)
## 123 Frighteners, The (1996)
## 124 Lone Star (1996)
## 125 Phenomenon (1996)
## 126 Spitfire Grill, The (1996)
## 127 Godfather, The (1972)
## 128 Supercop (1992)
## 129 Bound (1996)
## 130 Kansas City (1996)
## 131 Breakfast at Tiffany's (1961)
## 132 Wizard of Oz, The (1939)
## 133 Gone with the Wind (1939)
## 134 Citizen Kane (1941)
## 135 2001: A Space Odyssey (1968)
## 136 Mr. Smith Goes to Washington (1939)
## 137 Big Night (1996)
## 138 D3: The Mighty Ducks (1996)
## 139 Love Bug, The (1969)
## 140 Homeward Bound: The Incredible Journey (1993)
## 141 20,000 Leagues Under the Sea (1954)
## 142 Bedknobs and Broomsticks (1971)
## 143 Sound of Music, The (1965)
## 144 Die Hard (1988)
## 145 Lawnmower Man, The (1992)
## 146 Unhook the Stars (1996)
## 147 Long Kiss Goodnight, The (1996)
## 148 Ghost and the Darkness, The (1996)
## 149 Jude (1996)
## 150 Swingers (1996)
## 151 Willy Wonka and the Chocolate Factory (1971)
## 152 Sleeper (1973)
## 153 Fish Called Wanda, A (1988)
## 154 Monty Python's Life of Brian (1979)
## 155 Dirty Dancing (1987)
## 156 Reservoir Dogs (1992)
## 157 Platoon (1986)
## 158 Weekend at Bernie's (1989)
## 159 Basic Instinct (1992)
## 160 Glengarry Glen Ross (1992)
## 161 Top Gun (1986)
## 162 On Golden Pond (1981)
## 163 Return of the Pink Panther, The (1974)
## 164 Abyss, The (1989)
## 165 Jean de Florette (1986)
## 166 Manon of the Spring (Manon des sources) (1986)
## 167 Private Benjamin (1980)
## 168 Monty Python and the Holy Grail (1974)
## 169 Wrong Trousers, The (1993)
## 170 Cinema Paradiso (1988)
## 171 Delicatessen (1991)
## 172 Empire Strikes Back, The (1980)
## 173 Princess Bride, The (1987)
## 174 Raiders of the Lost Ark (1981)
## 175 Brazil (1985)
## 176 Aliens (1986)
## 177 Good, The Bad and The Ugly, The (1966)
## 178 12 Angry Men (1957)
## 179 Clockwork Orange, A (1971)
## 180 Apocalypse Now (1979)
## 181 Return of the Jedi (1983)
## 182 GoodFellas (1990)
## 183 Alien (1979)
## 184 Army of Darkness (1993)
## 185 Psycho (1960)
## 186 Blues Brothers, The (1980)
## 187 Godfather: Part II, The (1974)
## 188 Full Metal Jacket (1987)
## 189 Grand Day Out, A (1992)
## 190 Henry V (1989)
## 191 Amadeus (1984)
## 192 Raging Bull (1980)
## 193 Right Stuff, The (1983)
## 194 Sting, The (1973)
## 195 Terminator, The (1984)
## 196 Dead Poets Society (1989)
## 197 Graduate, The (1967)
## 198 Nikita (La Femme Nikita) (1990)
## 199 Bridge on the River Kwai, The (1957)
## 200 Shining, The (1980)
## 201 Evil Dead II (1987)
## 202 Groundhog Day (1993)
## 203 Unforgiven (1992)
## 204 Back to the Future (1985)
## 205 Patton (1970)
## 206 Akira (1988)
## 207 Cyrano de Bergerac (1990)
## 208 Young Frankenstein (1974)
## 209 This Is Spinal Tap (1984)
## 210 Indiana Jones and the Last Crusade (1989)
## 211 M*A*S*H (1970)
## 212 Unbearable Lightness of Being, The (1988)
## 213 Room with a View, A (1986)
## 214 Pink Floyd - The Wall (1982)
## 215 Field of Dreams (1989)
## 216 When Harry Met Sally... (1989)
## 217 Bram Stoker's Dracula (1992)
## 218 Cape Fear (1991)
## 219 Nightmare on Elm Street, A (1984)
## 220 Mirror Has Two Faces, The (1996)
## 221 Breaking the Waves (1996)
## 222 Star Trek: First Contact (1996)
## 223 Sling Blade (1996)
## 224 Ridicule (1996)
## 225 101 Dalmatians (1996)
## 226 Die Hard 2 (1990)
## 227 Star Trek VI: The Undiscovered Country (1991)
## 228 Star Trek: The Wrath of Khan (1982)
## 229 Star Trek III: The Search for Spock (1984)
## 230 Star Trek IV: The Voyage Home (1986)
## 231 Batman Returns (1992)
## 232 Young Guns (1988)
## 233 Under Siege (1992)
## 234 Jaws (1975)
## 235 Mars Attacks! (1996)
## 236 Citizen Ruth (1996)
## 237 Jerry Maguire (1996)
## 238 Raising Arizona (1987)
## 239 Sneakers (1992)
## 240 Beavis and Butt-head Do America (1996)
## 241 Last of the Mohicans, The (1992)
## 242 Kolya (1996)
## 243 Jungle2Jungle (1997)
## 244 Smilla's Sense of Snow (1997)
## 245 Devil's Own, The (1997)
## 246 Chasing Amy (1997)
## 247 Turbo: A Power Rangers Movie (1997)
## 248 Grosse Pointe Blank (1997)
## 249 Austin Powers: International Man of Mystery (1997)
## 250 Fifth Element, The (1997)
## 251 Shall We Dance? (1996)
## 252 Lost World: Jurassic Park, The (1997)
## 253 Pillow Book, The (1995)
## 254 Batman & Robin (1997)
## 255 My Best Friend's Wedding (1997)
## 256 When the Cats Away (Chacun cherche son chat) (1996)
## 257 Men in Black (1997)
## 258 Contact (1997)
## 259 George of the Jungle (1997)
## 260 Event Horizon (1997)
## 261 Air Bud (1997)
## 262 In the Company of Men (1997)
## 263 Steel (1997)
## 264 Mimic (1997)
## 265 Hunt for Red October, The (1990)
## 266 Kull the Conqueror (1997)
## 267 unknown
## 268 Chasing Amy (1997)
## 269 Full Monty, The (1997)
## 270 Gattaca (1997)
## 271 Starship Troopers (1997)
## 272 Good Will Hunting (1997)
## 273 Heat (1995)
## 274 Sabrina (1995)
## 275 Sense and Sensibility (1995)
## 276 Leaving Las Vegas (1995)
## 277 Restoration (1995)
## 278 Bed of Roses (1996)
## 279 Once Upon a Time... When We Were Colored (1995)
## 280 Up Close and Personal (1996)
## 281 River Wild, The (1994)
## 282 Time to Kill, A (1996)
## 283 Emma (1996)
## 284 Tin Cup (1996)
## 285 Secrets & Lies (1996)
## 286 English Patient, The (1996)
## 287 Marvin's Room (1996)
## 288 Scream (1996)
## 289 Evita (1996)
## 290 Fierce Creatures (1997)
## 291 Absolute Power (1997)
## 292 Rosewood (1997)
## 293 Donnie Brasco (1997)
## 294 Liar Liar (1997)
## 295 Breakdown (1997)
## 296 Promesse, La (1996)
## 297 Ulee's Gold (1997)
## 298 Face/Off (1997)
## 299 Hoodlum (1997)
## 300 Air Force One (1997)
## 301 In & Out (1997)
## 302 L.A. Confidential (1997)
## 303 Ulee's Gold (1997)
## 304 Fly Away Home (1996)
## 305 Ice Storm, The (1997)
## 306 Mrs. Brown (Her Majesty, Mrs. Brown) (1997)
## 307 Devil's Advocate, The (1997)
## 308 FairyTale: A True Story (1997)
## 309 Deceiver (1997)
## 310 Rainmaker, The (1997)
## 311 Wings of the Dove, The (1997)
## 312 Midnight in the Garden of Good and Evil (1997)
## 313 Titanic (1997)
## 314 3 Ninjas: High Noon At Mega Mountain (1998)
## 315 Apt Pupil (1998)
## 316 As Good As It Gets (1997)
## 317 In the Name of the Father (1993)
## 318 Schindler's List (1993)
## 319 Everyone Says I Love You (1996)
## 320 Paradise Lost: The Child Murders at Robin Hood Hills (1996)
## 321 Mother (1996)
## 322 Murder at 1600 (1997)
## 323 Dante's Peak (1997)
## 324 Lost Highway (1997)
## 325 Crash (1996)
## 326 G.I. Jane (1997)
## 327 Cop Land (1997)
## 328 Conspiracy Theory (1997)
## 329 Desperate Measures (1998)
## 330 187 (1997)
## 331 Edge, The (1997)
## 332 Kiss the Girls (1997)
## 333 Game, The (1997)
## 334 U Turn (1997)
## 335 How to Be a Player (1997)
## 336 Playing God (1997)
## 337 House of Yes, The (1997)
## 338 Bean (1997)
## 339 Mad City (1997)
## 340 Boogie Nights (1997)
## 341 Critical Care (1997)
## 342 Man Who Knew Too Little, The (1997)
## 343 Alien: Resurrection (1997)
## 344 Apostle, The (1997)
## 345 Deconstructing Harry (1997)
## 346 Jackie Brown (1997)
## 347 Wag the Dog (1997)
## 348 Desperate Measures (1998)
## 349 Hard Rain (1998)
## 350 Fallen (1998)
## 351 Prophecy II, The (1998)
## 352 Spice World (1997)
## 353 Deep Rising (1998)
## 354 Wedding Singer, The (1998)
## 355 Sphere (1998)
## 356 Client, The (1994)
## 357 One Flew Over the Cuckoo's Nest (1975)
## 358 Spawn (1997)
## 359 Assignment, The (1997)
## 360 Wonderland (1997)
## 361 Incognito (1997)
## 362 Blues Brothers 2000 (1998)
## 363 Sudden Death (1995)
## 364 Ace Ventura: When Nature Calls (1995)
## 365 Powder (1995)
## 366 Dangerous Minds (1995)
## 367 Clueless (1995)
## 368 Bio-Dome (1996)
## 369 Black Sheep (1996)
## 370 Mary Reilly (1996)
## 371 Bridges of Madison County, The (1995)
## 372 Jeffrey (1995)
## 373 Judge Dredd (1995)
## 374 Mighty Morphin Power Rangers: The Movie (1995)
## 375 Showgirls (1995)
## 376 Houseguest (1994)
## 377 Heavyweights (1994)
## 378 Miracle on 34th Street (1994)
## 379 Tales From the Crypt Presents: Demon Knight (1995)
## 380 Star Trek: Generations (1994)
## 381 Muriel's Wedding (1994)
## 382 Adventures of Priscilla, Queen of the Desert, The (1994)
## 383 Flintstones, The (1994)
## 384 Naked Gun 33 1/3: The Final Insult (1994)
## 385 True Lies (1994)
## 386 Addams Family Values (1993)
## 387 Age of Innocence, The (1993)
## 388 Beverly Hills Cop III (1994)
## 389 Black Beauty (1994)
## 390 Fear of a Black Hat (1993)
## 391 Last Action Hero (1993)
## 392 Man Without a Face, The (1993)
## 393 Mrs. Doubtfire (1993)
## 394 Radioland Murders (1994)
## 395 Robin Hood: Men in Tights (1993)
## 396 Serial Mom (1994)
## 397 Striking Distance (1993)
## 398 Super Mario Bros. (1993)
## 399 Three Musketeers, The (1993)
## 400 Little Rascals, The (1994)
## 401 Brady Bunch Movie, The (1995)
## 402 Ghost (1990)
## 403 Batman (1989)
## 404 Pinocchio (1940)
## 405 Mission: Impossible (1996)
## 406 Thinner (1996)
## 407 Spy Hard (1996)
## 408 Close Shave, A (1995)
## 409 Jack (1996)
## 410 Kingpin (1996)
## 411 Nutty Professor, The (1996)
## 412 Very Brady Sequel, A (1996)
## 413 Tales from the Crypt Presents: Bordello of Blood (1996)
## 414 My Favorite Year (1982)
## 415 Apple Dumpling Gang, The (1975)
## 416 Old Yeller (1957)
## 417 Parent Trap, The (1961)
## 418 Cinderella (1950)
## 419 Mary Poppins (1964)
## 420 Alice in Wonderland (1951)
## 421 William Shakespeare's Romeo and Juliet (1996)
## 422 Aladdin and the King of Thieves (1996)
## 423 E.T. the Extra-Terrestrial (1982)
## 424 Children of the Corn: The Gathering (1996)
## 425 Bob Roberts (1992)
## 426 Transformers: The Movie, The (1986)
## 427 To Kill a Mockingbird (1962)
## 428 Harold and Maude (1971)
## 429 Day the Earth Stood Still, The (1951)
## 430 Duck Soup (1933)
## 431 Highlander (1986)
## 432 Fantasia (1940)
## 433 Heathers (1989)
## 434 Forbidden Planet (1956)
## 435 Butch Cassidy and the Sundance Kid (1969)
## 436 American Werewolf in London, An (1981)
## 437 Amityville 1992: It's About Time (1992)
## 438 Amityville 3-D (1983)
## 439 Amityville: A New Generation (1993)
## 440 Amityville II: The Possession (1982)
## 441 Amityville Horror, The (1979)
## 442 Amityville Curse, The (1990)
## 443 Birds, The (1963)
## 444 Blob, The (1958)
## 445 Body Snatcher, The (1945)
## 446 Burnt Offerings (1976)
## 447 Carrie (1976)
## 448 Omen, The (1976)
## 449 Star Trek: The Motion Picture (1979)
## 450 Star Trek V: The Final Frontier (1989)
## 451 Grease (1978)
## 452 Jaws 2 (1978)
## 453 Jaws 3-D (1983)
## 454 Bastard Out of Carolina (1996)
## 455 Jackie Chan's First Strike (1996)
## 456 Beverly Hills Ninja (1997)
## 457 Free Willy 3: The Rescue (1997)
## 458 Nixon (1995)
## 459 Cry, the Beloved Country (1995)
## 460 Crossing Guard, The (1995)
## 461 Smoke (1995)
## 462 Like Water For Chocolate (Como agua para chocolate) (1992)
## 463 Secret of Roan Inish, The (1994)
## 464 Vanya on 42nd Street (1994)
## 465 Jungle Book, The (1994)
## 466 Red Rock West (1992)
## 467 Bronx Tale, A (1993)
## 468 Rudy (1993)
## 469 Short Cuts (1993)
## 470 Tombstone (1993)
## 471 Courage Under Fire (1996)
## 472 Dragonheart (1996)
## 473 James and the Giant Peach (1996)
## 474 Dr. Strangelove or: How I Learned to Stop Worrying and Love the Bomb (1963)
## 475 Trainspotting (1996)
## 476 First Wives Club, The (1996)
## 477 Matilda (1996)
## 478 Philadelphia Story, The (1940)
## 479 Vertigo (1958)
## 480 North by Northwest (1959)
## 481 Apartment, The (1960)
## 482 Some Like It Hot (1959)
## 483 Casablanca (1942)
## 484 Maltese Falcon, The (1941)
## 485 My Fair Lady (1964)
## 486 Sabrina (1954)
## 487 Roman Holiday (1953)
## 488 Sunset Blvd. (1950)
## 489 Notorious (1946)
## 490 To Catch a Thief (1955)
## 491 Adventures of Robin Hood, The (1938)
## 492 East of Eden (1955)
## 493 Thin Man, The (1934)
## 494 His Girl Friday (1940)
## 495 Around the World in 80 Days (1956)
## 496 It's a Wonderful Life (1946)
## 497 Bringing Up Baby (1938)
## 498 African Queen, The (1951)
## 499 Cat on a Hot Tin Roof (1958)
## 500 Fly Away Home (1996)
## 501 Dumbo (1941)
## 502 Bananas (1971)
## 503 Candidate, The (1972)
## 504 Bonnie and Clyde (1967)
## 505 Dial M for Murder (1954)
## 506 Rebel Without a Cause (1955)
## 507 Streetcar Named Desire, A (1951)
## 508 People vs. Larry Flynt, The (1996)
## 509 My Left Foot (1989)
## 510 Magnificent Seven, The (1954)
## 511 Lawrence of Arabia (1962)
## 512 Wings of Desire (1987)
## 513 Third Man, The (1949)
## 514 Annie Hall (1977)
## 515 Boot, Das (1981)
## 516 Local Hero (1983)
## 517 Manhattan (1979)
## 518 Miller's Crossing (1990)
## 519 Treasure of the Sierra Madre, The (1948)
## 520 Great Escape, The (1963)
## 521 Deer Hunter, The (1978)
## 522 Down by Law (1986)
## 523 Cool Hand Luke (1967)
## 524 Great Dictator, The (1940)
## 525 Big Sleep, The (1946)
## 526 Ben-Hur (1959)
## 527 Gandhi (1982)
## 528 Killing Fields, The (1984)
## 529 My Life as a Dog (Mitt liv som hund) (1985)
## 530 Man Who Would Be King, The (1975)
## 531 Shine (1996)
## 532 Kama Sutra: A Tale of Love (1996)
## 533 Daytrippers, The (1996)
## 534 Traveller (1997)
## 535 Addicted to Love (1997)
## 536 Ponette (1996)
## 537 My Own Private Idaho (1991)
## 538 Anastasia (1997)
## 539 Mouse Hunt (1997)
## 540 Money Train (1995)
## 541 Mortal Kombat (1995)
## 542 Pocahontas (1995)
## 543 Misérables, Les (1995)
## 544 Things to Do in Denver when You're Dead (1995)
## 545 Vampire in Brooklyn (1995)
## 546 Broken Arrow (1996)
## 547 Young Poisoner's Handbook, The (1995)
## 548 NeverEnding Story III, The (1994)
## 549 Rob Roy (1995)
## 550 Die Hard: With a Vengeance (1995)
## 551 Lord of Illusions (1995)
## 552 Species (1995)
## 553 Walk in the Clouds, A (1995)
## 554 Waterworld (1995)
## 555 White Man's Burden (1995)
## 556 Wild Bill (1995)
## 557 Farinelli: il castrato (1994)
## 558 Heavenly Creatures (1994)
## 559 Interview with the Vampire (1994)
## 560 Kid in King Arthur's Court, A (1995)
## 561 Mary Shelley's Frankenstein (1994)
## 562 Quick and the Dead, The (1995)
## 563 Stephen King's The Langoliers (1995)
## 564 Tales from the Hood (1995)
## 565 Village of the Damned (1995)
## 566 Clear and Present Danger (1994)
## 567 Wes Craven's New Nightmare (1994)
## 568 Speed (1994)
## 569 Wolf (1994)
## 570 Wyatt Earp (1994)
## 571 Another Stakeout (1993)
## 572 Blown Away (1994)
## 573 Body Snatchers (1993)
## 574 Boxing Helena (1993)
## 575 City Slickers II: The Legend of Curly's Gold (1994)
## 576 Cliffhanger (1993)
## 577 Coneheads (1993)
## 578 Demolition Man (1993)
## 579 Fatal Instinct (1993)
## 580 Englishman Who Went Up a Hill, But Came Down a Mountain, The (1995)
## 581 Kalifornia (1993)
## 582 Piano, The (1993)
## 583 Romeo Is Bleeding (1993)
## 584 Secret Garden, The (1993)
## 585 Son in Law (1993)
## 586 Terminal Velocity (1994)
## 587 Hour of the Pig, The (1993)
## 588 Beauty and the Beast (1991)
## 589 Wild Bunch, The (1969)
## 590 Hellraiser: Bloodline (1996)
## 591 Primal Fear (1996)
## 592 True Crime (1995)
## 593 Stalingrad (1993)
## 594 Heavy (1995)
## 595 Fan, The (1996)
## 596 Hunchback of Notre Dame, The (1996)
## 597 Eraser (1996)
## 598 Big Squeeze, The (1996)
## 599 Police Story 4: Project S (Chao ji ji hua) (1993)
## 600 Daniel Defoe's Robinson Crusoe (1996)
## 601 For Whom the Bell Tolls (1943)
## 602 American in Paris, An (1951)
## 603 Rear Window (1954)
## 604 It Happened One Night (1934)
## 605 Meet Me in St. Louis (1944)
## 606 All About Eve (1950)
## 607 Rebecca (1940)
## 608 Spellbound (1945)
## 609 Father of the Bride (1950)
## 610 Gigi (1958)
## 611 Laura (1944)
## 612 Lost Horizon (1937)
## 613 My Man Godfrey (1936)
## 614 Giant (1956)
## 615 39 Steps, The (1935)
## 616 Night of the Living Dead (1968)
## 617 Blue Angel, The (Blaue Engel, Der) (1930)
## 618 Picnic (1955)
## 619 Extreme Measures (1996)
## 620 Chamber, The (1996)
## 621 Davy Crockett, King of the Wild Frontier (1955)
## 622 Swiss Family Robinson (1960)
## 623 Angels in the Outfield (1994)
## 624 Three Caballeros, The (1945)
## 625 Sword in the Stone, The (1963)
## 626 So Dear to My Heart (1949)
## 627 Robin Hood: Prince of Thieves (1991)
## 628 Sleepers (1996)
## 629 Victor/Victoria (1982)
## 630 Great Race, The (1965)
## 631 Crying Game, The (1992)
## 632 Sophie's Choice (1982)
## 633 Christmas Carol, A (1938)
## 634 Microcosmos: Le peuple de l'herbe (1996)
## 635 Fog, The (1980)
## 636 Escape from New York (1981)
## 637 Howling, The (1981)
## 638 Return of Martin Guerre, The (Retour de Martin Guerre, Le) (1982)
## 639 Tin Drum, The (Blechtrommel, Die) (1979)
## 640 Cook the Thief His Wife & Her Lover, The (1989)
## 641 Paths of Glory (1957)
## 642 Grifters, The (1990)
## 643 The Innocent (1994)
## 644 Thin Blue Line, The (1988)
## 645 Paris Is Burning (1990)
## 646 Once Upon a Time in the West (1969)
## 647 Ran (1985)
## 648 Quiet Man, The (1952)
## 649 Once Upon a Time in America (1984)
## 650 Seventh Seal, The (Sjunde inseglet, Det) (1957)
## 651 Glory (1989)
## 652 Rosencrantz and Guildenstern Are Dead (1990)
## 653 Touch of Evil (1958)
## 654 Chinatown (1974)
## 655 Stand by Me (1986)
## 656 M (1931)
## 657 Manchurian Candidate, The (1962)
## 658 Pump Up the Volume (1990)
## 659 Arsenic and Old Lace (1944)
## 660 Fried Green Tomatoes (1991)
## 661 High Noon (1952)
## 662 Somewhere in Time (1980)
## 663 Being There (1979)
## 664 Paris, Texas (1984)
## 665 Alien 3 (1992)
## 666 Blood For Dracula (Andy Warhol's Dracula) (1974)
## 667 Audrey Rose (1977)
## 668 Blood Beach (1981)
## 669 Body Parts (1991)
## 670 Body Snatchers (1993)
## 671 Bride of Frankenstein (1935)
## 672 Candyman (1992)
## 673 Cape Fear (1962)
## 674 Cat People (1982)
## 675 Nosferatu (Nosferatu, eine Symphonie des Grauens) (1922)
## 676 Crucible, The (1996)
## 677 Fire on the Mountain (1996)
## 678 Volcano (1997)
## 679 Conan the Barbarian (1981)
## 680 Kull the Conqueror (1997)
## 681 Wishmaster (1997)
## 682 I Know What You Did Last Summer (1997)
## 683 Rocket Man (1997)
## 684 In the Line of Fire (1993)
## 685 Executive Decision (1996)
## 686 Perfect World, A (1993)
## 687 McHale's Navy (1997)
## 688 Leave It to Beaver (1997)
## 689 Jackal, The (1997)
## 690 Seven Years in Tibet (1997)
## 691 Dark City (1998)
## 692 American President, The (1995)
## 693 Casino (1995)
## 694 Persuasion (1995)
## 695 Kicking and Screaming (1995)
## 696 City Hall (1996)
## 697 Basketball Diaries, The (1995)
## 698 Browning Version, The (1994)
## 699 Little Women (1994)
## 700 Miami Rhapsody (1995)
## 701 Wonderful, Horrible Life of Leni Riefenstahl, The (1993)
## 702 Barcelona (1994)
## 703 Widows' Peak (1994)
## 704 House of the Spirits, The (1993)
## 705 Singin' in the Rain (1952)
## 706 Bad Moon (1996)
## 707 Enchanted April (1991)
## 708 Sex, Lies, and Videotape (1989)
## 709 Strictly Ballroom (1992)
## 710 Better Off Dead... (1985)
## 711 Substance of Fire, The (1996)
## 712 Tin Men (1987)
## 713 Othello (1995)
## 714 Carrington (1995)
## 715 To Die For (1995)
## 716 Home for the Holidays (1995)
## 717 Juror, The (1996)
## 718 In the Bleak Midwinter (1995)
## 719 Canadian Bacon (1994)
## 720 First Knight (1995)
## 721 Mallrats (1995)
## 722 Nine Months (1995)
## 723 Boys on the Side (1995)
## 724 Circle of Friends (1995)
## 725 Exit to Eden (1994)
## 726 Fluke (1995)
## 727 Immortal Beloved (1994)
## 728 Junior (1994)
## 729 Nell (1994)
## 730 Queen Margot (Reine Margot, La) (1994)
## 731 Corrina, Corrina (1994)
## 732 Dave (1993)
## 733 Go Fish (1994)
## 734 Made in America (1993)
## 735 Philadelphia (1993)
## 736 Shadowlands (1993)
## 737 Sirens (1994)
## 738 Threesome (1994)
## 739 Pretty Woman (1990)
## 740 Jane Eyre (1996)
## 741 Last Supper, The (1995)
## 742 Ransom (1996)
## 743 Crow: City of Angels, The (1996)
## 744 Michael Collins (1996)
## 745 Ruling Class, The (1972)
## 746 Real Genius (1985)
## 747 Benny & Joon (1993)
## 748 Saint, The (1997)
## 749 MatchMaker, The (1997)
## 750 Amistad (1997)
## 751 Tomorrow Never Dies (1997)
## 752 Replacement Killers, The (1998)
## 753 Burnt By the Sun (1994)
## 754 Red Corner (1997)
## 755 Jumanji (1995)
## 756 Father of the Bride Part II (1995)
## 757 Across the Sea of Time (1995)
## 758 Lawnmower Man 2: Beyond Cyberspace (1996)
## 759 Fair Game (1995)
## 760 Screamers (1995)
## 761 Nick of Time (1995)
## 762 Beautiful Girls (1996)
## 763 Happy Gilmore (1996)
## 764 If Lucy Fell (1996)
## 765 Boomerang (1992)
## 766 Man of the Year (1995)
## 767 Addiction, The (1995)
## 768 Casper (1995)
## 769 Congo (1995)
## 770 Devil in a Blue Dress (1995)
## 771 Johnny Mnemonic (1995)
## 772 Kids (1995)
## 773 Mute Witness (1994)
## 774 Prophecy, The (1995)
## 775 Something to Talk About (1995)
## 776 Three Wishes (1995)
## 777 Castle Freak (1995)
## 778 Don Juan DeMarco (1995)
## 779 Drop Zone (1994)
## 780 Dumb & Dumber (1994)
## 781 French Kiss (1995)
## 782 Little Odessa (1994)
## 783 Milk Money (1994)
## 784 Beyond Bedlam (1993)
## 785 Only You (1994)
## 786 Perez Family, The (1995)
## 787 Roommates (1995)
## 788 Relative Fear (1994)
## 789 Swimming with Sharks (1995)
## 790 Tommy Boy (1995)
## 791 Baby-Sitters Club, The (1995)
## 792 Bullets Over Broadway (1994)
## 793 Crooklyn (1994)
## 794 It Could Happen to You (1994)
## 795 Richie Rich (1994)
## 796 Speechless (1994)
## 797 Timecop (1994)
## 798 Bad Company (1995)
## 799 Boys Life (1995)
## 800 In the Mouth of Madness (1995)
## 801 Air Up There, The (1994)
## 802 Hard Target (1993)
## 803 Heaven & Earth (1993)
## 804 Jimmy Hollywood (1994)
## 805 Manhattan Murder Mystery (1993)
## 806 Menace II Society (1993)
## 807 Poetic Justice (1993)
## 808 Program, The (1993)
## 809 Rising Sun (1993)
## 810 Shadow, The (1994)
## 811 Thirty-Two Short Films About Glenn Gould (1993)
## 812 Andre (1994)
## 813 Celluloid Closet, The (1995)
## 814 Great Day in Harlem, A (1994)
## 815 One Fine Day (1996)
## 816 Candyman: Farewell to the Flesh (1995)
## 817 Frisk (1995)
## 818 Girl 6 (1996)
## 819 Eddie (1996)
## 820 Space Jam (1996)
## 821 Mrs. Winterbourne (1996)
## 822 Faces (1968)
## 823 Mulholland Falls (1996)
## 824 Great White Hype, The (1996)
## 825 Arrival, The (1996)
## 826 Phantom, The (1996)
## 827 Daylight (1996)
## 828 Alaska (1996)
## 829 Fled (1996)
## 830 Power 98 (1995)
## 831 Escape from L.A. (1996)
## 832 Bogus (1996)
## 833 Bulletproof (1996)
## 834 Halloween: The Curse of Michael Myers (1995)
## 835 Gay Divorcee, The (1934)
## 836 Ninotchka (1939)
## 837 Meet John Doe (1941)
## 838 In the Line of Duty 2 (1987)
## 839 Loch Ness (1995)
## 840 Last Man Standing (1996)
## 841 Glimmer Man, The (1996)
## 842 Pollyanna (1960)
## 843 Shaggy Dog, The (1959)
## 844 Freeway (1996)
## 845 That Thing You Do! (1996)
## 846 To Gillian on Her 37th Birthday (1996)
## 847 Looking for Richard (1996)
## 848 Murder, My Sweet (1944)
## 849 Days of Thunder (1990)
## 850 Perfect Candidate, A (1996)
## 851 Two or Three Things I Know About Her (1966)
## 852 Bloody Child, The (1996)
## 853 Braindead (1992)
## 854 Bad Taste (1987)
## 855 Diva (1981)
## 856 Night on Earth (1991)
## 857 Paris Was a Woman (1995)
## 858 Amityville: Dollhouse (1996)
## 859 April Fool's Day (1986)
## 860 Believers, The (1987)
## 861 Nosferatu a Venezia (1986)
## 862 Jingle All the Way (1996)
## 863 Garden of Finzi-Contini, The (Giardino dei Finzi-Contini, Il) (1970)
## 864 My Fellow Americans (1996)
## 865 Ice Storm, The (1997)
## 866 Michael (1996)
## 867 Whole Wide World, The (1996)
## 868 Hearts and Minds (1996)
## 869 Fools Rush In (1997)
## 870 Touch (1997)
## 871 Vegas Vacation (1997)
## 872 Love Jones (1997)
## 873 Picture Perfect (1997)
## 874 Career Girls (1997)
## 875 She's So Lovely (1997)
## 876 Money Talks (1997)
## 877 Excess Baggage (1997)
## 878 That Darn Cat! (1997)
## 879 Peacemaker, The (1997)
## 880 Soul Food (1997)
## 881 Money Talks (1997)
## 882 Washington Square (1997)
## 883 Telling Lies in America (1997)
## 884 Year of the Horse (1997)
## 885 Phantoms (1998)
## 886 Life Less Ordinary, A (1997)
## 887 Eve's Bayou (1997)
## 888 One Night Stand (1997)
## 889 Tango Lesson, The (1997)
## 890 Mortal Kombat: Annihilation (1997)
## 891 Bent (1997)
## 892 Flubber (1997)
## 893 For Richer or Poorer (1997)
## 894 Home Alone 3 (1997)
## 895 Scream 2 (1997)
## 896 Sweet Hereafter, The (1997)
## 897 Time Tracers (1995)
## 898 Postman, The (1997)
## 899 Winter Guest, The (1997)
## 900 Kundun (1997)
## 901 Mr. Magoo (1997)
## 902 Big Lebowski, The (1998)
## 903 Afterglow (1997)
## 904 Ma vie en rose (My Life in Pink) (1997)
## 905 Great Expectations (1998)
## 906 Oscar & Lucinda (1997)
## 907 Vermin (1998)
## 908 Half Baked (1998)
## 909 Dangerous Beauty (1998)
## 910 Nil By Mouth (1997)
## 911 Twilight (1998)
## 912 U.S. Marshalls (1998)
## 913 Love and Death on Long Island (1997)
## 914 Wild Things (1998)
## 915 Primary Colors (1998)
## 916 Lost in Space (1998)
## 917 Mercury Rising (1998)
## 918 City of Angels (1998)
## 919 City of Lost Children, The (1995)
## 920 Two Bits (1995)
## 921 Farewell My Concubine (1993)
## 922 Dead Man (1995)
## 923 Raise the Red Lantern (1991)
## 924 White Squall (1996)
## 925 Unforgettable (1996)
## 926 Down Periscope (1996)
## 927 Flower of My Secret, The (Flor de mi secreto, La) (1995)
## 928 Craft, The (1996)
## 929 Harriet the Spy (1996)
## 930 Chain Reaction (1996)
## 931 Island of Dr. Moreau, The (1996)
## 932 First Kid (1996)
## 933 Funeral, The (1996)
## 934 Preacher's Wife, The (1996)
## 935 Paradise Road (1997)
## 936 Brassed Off (1996)
## 937 Thousand Acres, A (1997)
## 938 Smile Like Yours, A (1997)
## 939 Murder in the First (1995)
## 940 Airheads (1994)
## 941 With Honors (1994)
## 942 What's Love Got to Do with It (1993)
## 943 Killing Zoe (1994)
## 944 Renaissance Man (1994)
## 945 Charade (1963)
## 946 Fox and the Hound, The (1981)
## 947 Big Blue, The (Grand bleu, Le) (1988)
## 948 Booty Call (1997)
## 949 How to Make an American Quilt (1995)
## 950 Georgia (1995)
## 951 Indian in the Cupboard, The (1995)
## 952 Blue in the Face (1995)
## 953 Unstrung Heroes (1995)
## 954 Unzipped (1995)
## 955 Before Sunrise (1995)
## 956 Nobody's Fool (1994)
## 957 Pushing Hands (1992)
## 958 To Live (Huozhe) (1994)
## 959 Dazed and Confused (1993)
## 960 Naked (1993)
## 961 Orlando (1993)
## 962 Ruby in Paradise (1993)
## 963 Some Folks Call It a Sling Blade (1993)
## 964 Month by the Lake, A (1995)
## 965 Funny Face (1957)
## 966 Affair to Remember, An (1957)
## 967 Little Lord Fauntleroy (1936)
## 968 Inspector General, The (1949)
## 969 Winnie the Pooh and the Blustery Day (1968)
## 970 Hear My Song (1991)
## 971 Mediterraneo (1991)
## 972 Passion Fish (1992)
## 973 Grateful Dead (1995)
## 974 Eye for an Eye (1996)
## 975 Fear (1996)
## 976 Solo (1996)
## 977 Substitute, The (1996)
## 978 Heaven's Prisoners (1996)
## 979 Trigger Effect, The (1996)
## 980 Mother Night (1996)
## 981 Dangerous Ground (1997)
## 982 Maximum Risk (1996)
## 983 Rich Man's Wife, The (1996)
## 984 Shadow Conspiracy (1997)
## 985 Blood & Wine (1997)
## 986 Turbulence (1997)
## 987 Underworld (1997)
## 988 Beautician and the Beast, The (1997)
## 989 Cats Don't Dance (1997)
## 990 Anna Karenina (1997)
## 991 Keys to Tulsa (1997)
## 992 Head Above Water (1996)
## 993 Hercules (1997)
## 994 Last Time I Committed Suicide, The (1997)
## 995 Kiss Me, Guido (1997)
## 996 Big Green, The (1995)
## 997 Stuart Saves His Family (1995)
## 998 Cabin Boy (1994)
## 999 Clean Slate (1994)
## 1000 Lightning Jack (1994)
## 1001 Stupids, The (1996)
## 1002 Pest, The (1997)
## 1003 That Darn Cat! (1997)
## 1004 Geronimo: An American Legend (1993)
## 1005 Double vie de Véronique, La (Double Life of Veronique, The) (1991)
## 1006 Until the End of the World (Bis ans Ende der Welt) (1991)
## 1007 Waiting for Guffman (1996)
## 1008 I Shot Andy Warhol (1996)
## 1009 Stealing Beauty (1996)
## 1010 Basquiat (1996)
## 1011 2 Days in the Valley (1996)
## 1012 Private Parts (1997)
## 1013 Anaconda (1997)
## 1014 Romy and Michele's High School Reunion (1997)
## 1015 Shiloh (1997)
## 1016 Con Air (1997)
## 1017 Trees Lounge (1996)
## 1018 Tie Me Up! Tie Me Down! (1990)
## 1019 Die xue shuang xiong (Killer, The) (1989)
## 1020 Gaslight (1944)
## 1021 8 1/2 (1963)
## 1022 Fast, Cheap & Out of Control (1997)
## 1023 Fathers' Day (1997)
## 1024 Mrs. Dalloway (1997)
## 1025 Fire Down Below (1997)
## 1026 Lay of the Land, The (1997)
## 1027 Shooter, The (1995)
## 1028 Grumpier Old Men (1995)
## 1029 Jury Duty (1995)
## 1030 Beverly Hillbillies, The (1993)
## 1031 Lassie (1994)
## 1032 Little Big League (1994)
## 1033 Homeward Bound II: Lost in San Francisco (1996)
## 1034 Quest, The (1996)
## 1035 Cool Runnings (1993)
## 1036 Drop Dead Fred (1991)
## 1037 Grease 2 (1982)
## 1038 Switchback (1997)
## 1039 Hamlet (1996)
## 1040 Two if by Sea (1996)
## 1041 Forget Paris (1995)
## 1042 Just Cause (1995)
## 1043 Rent-a-Kid (1995)
## 1044 Paper, The (1994)
## 1045 Fearless (1993)
## 1046 Malice (1993)
## 1047 Multiplicity (1996)
## 1048 She's the One (1996)
## 1049 House Arrest (1996)
## 1050 Ghost and Mrs. Muir, The (1947)
## 1051 Associate, The (1996)
## 1052 Dracula: Dead and Loving It (1995)
## 1053 Now and Then (1995)
## 1054 Mr. Wrong (1996)
## 1055 Simple Twist of Fate, A (1994)
## 1056 Cronos (1992)
## 1057 Pallbearer, The (1996)
## 1058 War, The (1994)
## 1059 Don't Be a Menace to South Central While Drinking Your Juice in the Hood (1996)
## 1060 Adventures of Pinocchio, The (1996)
## 1061 Evening Star, The (1996)
## 1062 Four Days in September (1997)
## 1063 Little Princess, A (1995)
## 1064 Crossfire (1947)
## 1065 Koyaanisqatsi (1983)
## 1066 Balto (1995)
## 1067 Bottle Rocket (1996)
## 1068 Star Maker, The (Uomo delle stelle, L') (1995)
## 1069 Amateur (1994)
## 1070 Living in Oblivion (1995)
## 1071 Party Girl (1995)
## 1072 Pyromaniac's Love Story, A (1995)
## 1073 Shallow Grave (1994)
## 1074 Reality Bites (1994)
## 1075 Man of No Importance, A (1994)
## 1076 Pagemaster, The (1994)
## 1077 Love and a .45 (1994)
## 1078 Oliver & Company (1988)
## 1079 Joe's Apartment (1996)
## 1080 Celestial Clockwork (1994)
## 1081 Curdled (1996)
## 1082 Female Perversions (1996)
## 1083 Albino Alligator (1996)
## 1084 Anne Frank Remembered (1995)
## 1085 Carried Away (1996)
## 1086 It's My Party (1995)
## 1087 Bloodsport 2 (1995)
## 1088 Double Team (1997)
## 1089 Speed 2: Cruise Control (1997)
## 1090 Sliver (1993)
## 1091 Pete's Dragon (1977)
## 1092 Dear God (1996)
## 1093 Live Nude Girls (1995)
## 1094 Thin Line Between Love and Hate, A (1996)
## 1095 High School High (1996)
## 1096 Commandments (1997)
## 1097 Hate (Haine, La) (1995)
## 1098 Flirting With Disaster (1996)
## 1099 Red Firecracker, Green Firecracker (1994)
## 1100 What Happened Was... (1994)
## 1101 Six Degrees of Separation (1993)
## 1102 Two Much (1996)
## 1103 Trust (1990)
## 1104 C'est arrivé près de chez vous (1992)
## 1105 Firestorm (1998)
## 1106 Newton Boys, The (1998)
## 1107 Beyond Rangoon (1995)
## 1108 Feast of July (1995)
## 1109 Death and the Maiden (1994)
## 1110 Tank Girl (1995)
## 1111 Double Happiness (1994)
## 1112 Cobb (1994)
## 1113 Mrs. Parker and the Vicious Circle (1994)
## 1114 Faithful (1996)
## 1115 Twelfth Night (1996)
## 1116 Mark of Zorro, The (1940)
## 1117 Surviving Picasso (1996)
## 1118 Up in Smoke (1978)
## 1119 Some Kind of Wonderful (1987)
## 1120 I'm Not Rappaport (1996)
## 1121 Umbrellas of Cherbourg, The (Parapluies de Cherbourg, Les) (1964)
## 1122 They Made Me a Criminal (1939)
## 1123 Last Time I Saw Paris, The (1954)
## 1124 Farewell to Arms, A (1932)
## 1125 Innocents, The (1961)
## 1126 Old Man and the Sea, The (1958)
## 1127 Truman Show, The (1998)
## 1128 Heidi Fleiss: Hollywood Madam (1995)
## 1129 Chungking Express (1994)
## 1130 Jupiter's Wife (1994)
## 1131 Safe (1995)
## 1132 Feeling Minnesota (1996)
## 1133 Escape to Witch Mountain (1975)
## 1134 Get on the Bus (1996)
## 1135 Doors, The (1991)
## 1136 Ghosts of Mississippi (1996)
## 1137 Beautiful Thing (1996)
## 1138 Best Men (1997)
## 1139 Hackers (1995)
## 1140 Road to Wellville, The (1994)
## 1141 War Room, The (1993)
## 1142 When We Were Kings (1996)
## 1143 Hard Eight (1996)
## 1144 Quiet Room, The (1996)
## 1145 Blue Chips (1994)
## 1146 Calendar Girl (1993)
## 1147 My Family (1995)
## 1148 Tom & Viv (1994)
## 1149 Walkabout (1971)
## 1150 Last Dance (1996)
## 1151 Original Gangstas (1996)
## 1152 In Love and War (1996)
## 1153 Backbeat (1993)
## 1154 Alphaville (1965)
## 1155 Rendezvous in Paris (Rendez-vous de Paris, Les) (1995)
## 1156 Cyclo (1995)
## 1157 Relic, The (1997)
## 1158 Fille seule, La (A Single Girl) (1995)
## 1159 Stalker (1979)
## 1160 Love! Valour! Compassion! (1997)
## 1161 Palookaville (1996)
## 1162 Phat Beach (1996)
## 1163 Portrait of a Lady, The (1996)
## 1164 Zeus and Roxanne (1997)
## 1165 Big Bully (1996)
## 1166 Love & Human Remains (1993)
## 1167 Sum of Us, The (1994)
## 1168 Little Buddha (1993)
## 1169 Fresh (1994)
## 1170 Spanking the Monkey (1994)
## 1171 Wild Reeds (1994)
## 1172 Women, The (1939)
## 1173 Bliss (1997)
## 1174 Caught (1996)
## 1175 Hugo Pool (1997)
## 1176 Welcome To Sarajevo (1997)
## 1177 Dunston Checks In (1996)
## 1178 Major Payne (1994)
## 1179 Man of the House (1995)
## 1180 I Love Trouble (1994)
## 1181 Low Down Dirty Shame, A (1994)
## 1182 Cops and Robbersons (1994)
## 1183 Cowboy Way, The (1994)
## 1184 Endless Summer 2, The (1994)
## 1185 In the Army Now (1994)
## 1186 Inkwell, The (1994)
## 1187 Switchblade Sisters (1975)
## 1188 Young Guns II (1990)
## 1189 Prefontaine (1997)
## 1190 That Old Feeling (1997)
## 1191 Letter From Death Row, A (1998)
## 1192 Boys of St. Vincent, The (1993)
## 1193 Before the Rain (Pred dozhdot) (1994)
## 1194 Once Were Warriors (1994)
## 1195 Strawberry and Chocolate (Fresa y chocolate) (1993)
## 1196 Savage Nights (Nuits fauves, Les) (1992)
## 1197 Family Thing, A (1996)
## 1198 Purple Noon (1960)
## 1199 Cemetery Man (Dellamorte Dellamore) (1994)
## 1200 Kim (1950)
## 1201 Marlene Dietrich: Shadow and Light (1996)
## 1202 Maybe, Maybe Not (Bewegte Mann, Der) (1994)
## 1203 Top Hat (1935)
## 1204 To Be or Not to Be (1942)
## 1205 Secret Agent, The (1996)
## 1206 Amos & Andrew (1993)
## 1207 Jade (1995)
## 1208 Kiss of Death (1995)
## 1209 Mixed Nuts (1994)
## 1210 Virtuosity (1995)
## 1211 Blue Sky (1994)
## 1212 Flesh and Bone (1993)
## 1213 Guilty as Sin (1993)
## 1214 In the Realm of the Senses (Ai no corrida) (1976)
## 1215 Barb Wire (1996)
## 1216 Kissed (1996)
## 1217 Assassins (1995)
## 1218 Friday (1995)
## 1219 Goofy Movie, A (1995)
## 1220 Higher Learning (1995)
## 1221 When a Man Loves a Woman (1994)
## 1222 Judgment Night (1993)
## 1223 King of the Hill (1993)
## 1224 Scout, The (1994)
## 1225 Angus (1995)
## 1226 Night Falls on Manhattan (1997)
## 1227 Awfully Big Adventure, An (1995)
## 1228 Under Siege 2: Dark Territory (1995)
## 1229 Poison Ivy II (1995)
## 1230 Ready to Wear (Pret-A-Porter) (1994)
## 1231 Marked for Death (1990)
## 1232 Madonna: Truth or Dare (1991)
## 1233 Nénette et Boni (1996)
## 1234 Chairman of the Board (1998)
## 1235 Big Bang Theory, The (1994)
## 1236 Other Voices, Other Rooms (1997)
## 1237 Twisted (1996)
## 1238 Full Speed (1996)
## 1239 Cutthroat Island (1995)
## 1240 Ghost in the Shell (Kokaku kidotai) (1995)
## 1241 Van, The (1996)
## 1242 Old Lady Who Walked in the Sea, The (Vieille qui marchait dans la mer, La) (1991)
## 1243 Night Flier (1997)
## 1244 Metro (1997)
## 1245 Gridlock'd (1997)
## 1246 Bushwhacked (1995)
## 1247 Bad Girls (1994)
## 1248 Blink (1994)
## 1249 For Love or Money (1993)
## 1250 Best of the Best 3: No Turning Back (1995)
## 1251 A Chef in Love (1996)
## 1252 Contempt (Mépris, Le) (1963)
## 1253 Tie That Binds, The (1995)
## 1254 Gone Fishin' (1997)
## 1255 Broken English (1996)
## 1256 Designated Mourner, The (1997)
## 1257 Designated Mourner, The (1997)
## 1258 Trial and Error (1997)
## 1259 Pie in the Sky (1995)
## 1260 Total Eclipse (1995)
## 1261 Run of the Country, The (1995)
## 1262 Walking and Talking (1996)
## 1263 Foxfire (1996)
## 1264 Nothing to Lose (1994)
## 1265 Star Maps (1997)
## 1266 Bread and Chocolate (Pane e cioccolata) (1973)
## 1267 Clockers (1995)
## 1268 Bitter Moon (1992)
## 1269 Love in the Afternoon (1957)
## 1270 Life with Mikey (1993)
## 1271 North (1994)
## 1272 Talking About Sex (1994)
## 1273 Color of Night (1994)
## 1274 Robocop 3 (1993)
## 1275 Killer (Bulletproof Heart) (1994)
## 1276 Sunset Park (1996)
## 1277 Set It Off (1996)
## 1278 Selena (1997)
## 1279 Wild America (1997)
## 1280 Gang Related (1997)
## 1281 Manny & Lo (1996)
## 1282 Grass Harp, The (1995)
## 1283 Out to Sea (1997)
## 1284 Before and After (1996)
## 1285 Princess Caraboo (1994)
## 1286 Shall We Dance? (1937)
## 1287 Ed (1996)
## 1288 Denise Calls Up (1995)
## 1289 Jack and Sarah (1995)
## 1290 Country Life (1994)
## 1291 Celtic Pride (1996)
## 1292 Simple Wish, A (1997)
## 1293 Star Kid (1997)
## 1294 Ayn Rand: A Sense of Life (1997)
## 1295 Kicked in the Head (1997)
## 1296 Indian Summer (1996)
## 1297 Love Affair (1994)
## 1298 Band Wagon, The (1953)
## 1299 Penny Serenade (1941)
## 1300 'Til There Was You (1997)
## 1301 Stripes (1981)
## 1302 Late Bloomers (1996)
## 1303 Getaway, The (1994)
## 1304 New York Cop (1996)
## 1305 National Lampoon's Senior Trip (1995)
## 1306 Delta of Venus (1994)
## 1307 Carmen Miranda: Bananas Is My Business (1994)
## 1308 Babyfever (1994)
## 1309 Very Natural Thing, A (1974)
## 1310 Walk in the Sun, A (1945)
## 1311 Waiting to Exhale (1995)
## 1312 Pompatus of Love, The (1996)
## 1313 Palmetto (1998)
## 1314 Surviving the Game (1994)
## 1315 Inventing the Abbotts (1997)
## 1316 Horse Whisperer, The (1998)
## 1317 Journey of August King, The (1995)
## 1318 Catwalk (1995)
## 1319 Neon Bible, The (1995)
## 1320 Homage (1995)
## 1321 Open Season (1996)
## 1322 Metisse (Café au Lait) (1993)
## 1323 Wooden Man's Bride, The (Wu Kui) (1994)
## 1324 Loaded (1994)
## 1325 August (1996)
## 1326 Boys (1996)
## 1327 Captives (1994)
## 1328 Of Love and Shadows (1994)
## 1329 Low Life, The (1994)
## 1330 An Unforgettable Summer (1994)
## 1331 Last Klezmer: Leopold Kozlowski, His Life and Music, The (1995)
## 1332 My Life and Times With Antonin Artaud (En compagnie d'Antonin Artaud) (1993)
## 1333 Midnight Dancers (Sibak) (1994)
## 1334 Somebody to Love (1994)
## 1335 American Buffalo (1996)
## 1336 Kazaam (1996)
## 1337 Larger Than Life (1996)
## 1338 Two Deaths (1995)
## 1339 Stefano Quantestorie (1993)
## 1340 Crude Oasis, The (1995)
## 1341 Hedd Wyn (1992)
## 1342 Convent, The (Convento, O) (1995)
## 1343 Lotto Land (1995)
## 1344 Story of Xinghua, The (1993)
## 1345 Day the Sun Turned Cold, The (Tianguo niezi) (1994)
## 1346 Dingo (1992)
## 1347 Ballad of Narayama, The (Narayama Bushiko) (1958)
## 1348 Every Other Weekend (1990)
## 1349 Mille bolle blu (1993)
## 1350 Crows and Sparrows (1949)
## 1351 Lover's Knot (1996)
## 1352 Shadow of Angels (Schatten der Engel) (1976)
## 1353 1-900 (1994)
## 1354 Venice/Venice (1992)
## 1355 Infinity (1996)
## 1356 Ed's Next Move (1996)
## 1357 For the Moment (1994)
## 1358 The Deadly Cure (1996)
## 1359 Boys in Venice (1996)
## 1360 Sexual Life of the Belgians, The (1994)
## 1361 Search for One-eye Jimmy, The (1996)
## 1362 American Strays (1996)
## 1363 Leopard Son, The (1996)
## 1364 Bird of Prey (1996)
## 1365 Johnny 100 Pesos (1993)
## 1366 JLG/JLG - autoportrait de décembre (1994)
## 1367 Faust (1994)
## 1368 Mina Tannenbaum (1994)
## 1369 Forbidden Christ, The (Cristo proibito, Il) (1950)
## 1370 I Can't Sleep (J'ai pas sommeil) (1994)
## 1371 Machine, The (1994)
## 1372 Stranger, The (1994)
## 1373 Good Morning (1971)
## 1374 Falling in Love Again (1980)
## 1375 Cement Garden, The (1993)
## 1376 Meet Wally Sparks (1997)
## 1377 Hotel de Love (1996)
## 1378 Rhyme & Reason (1997)
## 1379 Love and Other Catastrophes (1996)
## 1380 Hollow Reed (1996)
## 1381 Losing Chase (1996)
## 1382 Bonheur, Le (1965)
## 1383 Second Jungle Book: Mowgli & Baloo, The (1997)
## 1384 Squeeze (1996)
## 1385 Roseanna's Grave (For Roseanna) (1997)
## 1386 Tetsuo II: Body Hammer (1992)
## 1387 Fall (1997)
## 1388 Gabbeh (1996)
## 1389 Mondo (1996)
## 1390 Innocent Sleep, The (1995)
## 1391 For Ever Mozart (1996)
## 1392 Locusts, The (1997)
## 1393 Stag (1997)
## 1394 Swept from the Sea (1997)
## 1395 Hurricane Streets (1998)
## 1396 Stonewall (1995)
## 1397 Of Human Bondage (1934)
## 1398 Anna (1996)
## 1399 Stranger in the House (1997)
## 1400 Picture Bride (1995)
## 1401 M. Butterfly (1993)
## 1402 Ciao, Professore! (1993)
## 1403 Caro Diario (Dear Diary) (1994)
## 1404 Withnail and I (1987)
## 1405 Boy's Life 2 (1997)
## 1406 When Night Is Falling (1995)
## 1407 Specialist, The (1994)
## 1408 Gordy (1995)
## 1409 Swan Princess, The (1994)
## 1410 Harlem (1993)
## 1411 Barbarella (1968)
## 1412 Land Before Time III: The Time of the Great Giving (1995) (V)
## 1413 Street Fighter (1994)
## 1414 Coldblooded (1995)
## 1415 Next Karate Kid, The (1994)
## 1416 No Escape (1994)
## 1417 Turning, The (1992)
## 1418 Joy Luck Club, The (1993)
## 1419 Highlander III: The Sorcerer (1994)
## 1420 Gilligan's Island: The Movie (1998)
## 1421 My Crazy Life (Mi vida loca) (1993)
## 1422 Suture (1993)
## 1423 Walking Dead, The (1995)
## 1424 I Like It Like That (1994)
## 1425 I'll Do Anything (1994)
## 1426 Grace of My Heart (1996)
## 1427 Drunks (1995)
## 1428 SubUrbia (1997)
## 1429 Sliding Doors (1998)
## 1430 Ill Gotten Gains (1997)
## 1431 Legal Deceit (1997)
## 1432 Mighty, The (1998)
## 1433 Men of Means (1998)
## 1434 Shooting Fish (1997)
## 1435 Steal Big, Steal Little (1995)
## 1436 Mr. Jones (1993)
## 1437 House Party 3 (1994)
## 1438 Panther (1995)
## 1439 Jason's Lyric (1994)
## 1440 Above the Rim (1994)
## 1441 Moonlight and Valentino (1995)
## 1442 Scarlet Letter, The (1995)
## 1443 8 Seconds (1994)
## 1444 That Darn Cat! (1965)
## 1445 Ladybird Ladybird (1994)
## 1446 Bye Bye, Love (1995)
## 1447 Century (1993)
## 1448 My Favorite Season (1993)
## 1449 Pather Panchali (1955)
## 1450 Golden Earrings (1947)
## 1451 Foreign Correspondent (1940)
## 1452 Lady of Burlesque (1943)
## 1453 Angel on My Shoulder (1946)
## 1454 Angel and the Badman (1947)
## 1455 Outlaw, The (1943)
## 1456 Beat the Devil (1954)
## 1457 Love Is All There Is (1996)
## 1458 Damsel in Distress, A (1937)
## 1459 Madame Butterfly (1995)
## 1460 Sleepover (1995)
## 1461 Here Comes Cookie (1935)
## 1462 Thieves (Voleurs, Les) (1996)
## 1463 Boys, Les (1997)
## 1464 Stars Fell on Henrietta, The (1995)
## 1465 Last Summer in the Hamptons (1995)
## 1466 Margaret's Museum (1995)
## 1467 Saint of Fort Washington, The (1993)
## 1468 Cure, The (1995)
## 1469 Tom and Huck (1995)
## 1470 Gumby: The Movie (1995)
## 1471 Hideaway (1995)
## 1472 Visitors, The (Visiteurs, Les) (1993)
## 1473 Little Princess, The (1939)
## 1474 Nina Takes a Lover (1994)
## 1475 Bhaji on the Beach (1993)
## 1476 Raw Deal (1948)
## 1477 Nightwatch (1997)
## 1478 Dead Presidents (1995)
## 1479 Reckless (1995)
## 1480 Herbie Rides Again (1974)
## 1481 S.F.W. (1994)
## 1482 Gate of Heavenly Peace, The (1995)
## 1483 Man in the Iron Mask, The (1998)
## 1484 Jerky Boys, The (1994)
## 1485 Colonel Chabert, Le (1994)
## 1486 Girl in the Cadillac (1995)
## 1487 Even Cowgirls Get the Blues (1993)
## 1488 Germinal (1993)
## 1489 Chasers (1994)
## 1490 Fausto (1993)
## 1491 Tough and Deadly (1995)
## 1492 Window to Paris (1994)
## 1493 Modern Affair, A (1995)
## 1494 Mostro, Il (1994)
## 1495 Flirt (1995)
## 1496 Carpool (1996)
## 1497 Line King: Al Hirschfeld, The (1996)
## 1498 Farmer & Chase (1995)
## 1499 Grosse Fatigue (1994)
## 1500 Santa with Muscles (1996)
## 1501 Prisoner of the Mountains (Kavkazsky Plennik) (1996)
## 1502 Naked in New York (1994)
## 1503 Gold Diggers: The Secret of Bear Mountain (1995)
## 1504 Bewegte Mann, Der (1994)
## 1505 Killer: A Journal of Murder (1995)
## 1506 Nelly & Monsieur Arnaud (1995)
## 1507 Three Lives and Only One Death (1996)
## 1508 Babysitter, The (1995)
## 1509 Getting Even with Dad (1994)
## 1510 Mad Dog Time (1996)
## 1511 Children of the Revolution (1996)
## 1512 World of Apu, The (Apur Sansar) (1959)
## 1513 Sprung (1997)
## 1514 Dream With the Fishes (1997)
## 1515 Wings of Courage (1995)
## 1516 Wedding Gift, The (1994)
## 1517 Race the Sun (1996)
## 1518 Losing Isaiah (1995)
## 1519 New Jersey Drive (1995)
## 1520 Fear, The (1995)
## 1521 Mr. Wonderful (1993)
## 1522 Trial by Jury (1994)
## 1523 Good Man in Africa, A (1994)
## 1524 Kaspar Hauser (1993)
## 1525 Object of My Affection, The (1998)
## 1526 Witness (1985)
## 1527 Senseless (1998)
## 1528 Nowhere (1997)
## 1529 Underground (1995)
## 1530 Jefferson in Paris (1995)
## 1531 Far From Home: The Adventures of Yellow Dog (1995)
## 1532 Foreign Student (1994)
## 1533 I Don't Want to Talk About It (De eso no se habla) (1993)
## 1534 Twin Town (1997)
## 1535 Enfer, L' (1994)
## 1536 Aiqing wansui (1994)
## 1537 Cosi (1996)
## 1538 All Over Me (1997)
## 1539 Being Human (1993)
## 1540 Amazing Panda Adventure, The (1995)
## 1541 Beans of Egypt, Maine, The (1994)
## 1542 Scarlet Letter, The (1926)
## 1543 Johns (1996)
## 1544 It Takes Two (1995)
## 1545 Frankie Starlight (1995)
## 1546 Shadows (Cienie) (1988)
## 1547 Show, The (1995)
## 1548 The Courtyard (1995)
## 1549 Dream Man (1995)
## 1550 Destiny Turns on the Radio (1995)
## 1551 Glass Shield, The (1994)
## 1552 Hunted, The (1995)
## 1553 Underneath, The (1995)
## 1554 Safe Passage (1994)
## 1555 Secret Adventures of Tom Thumb, The (1993)
## 1556 Condition Red (1995)
## 1557 Yankee Zulu (1994)
## 1558 Aparajito (1956)
## 1559 Hostile Intentions (1994)
## 1560 Clean Slate (Coup de Torchon) (1981)
## 1561 Tigrero: A Film That Was Never Made (1994)
## 1562 Eye of Vichy, The (Oeil de Vichy, L') (1993)
## 1563 Promise, The (Versprechen, Das) (1994)
## 1564 To Cross the Rubicon (1991)
## 1565 Daens (1992)
## 1566 Man from Down Under, The (1943)
## 1567 Careful (1992)
## 1568 Vermont Is For Lovers (1992)
## 1569 Vie est belle, La (Life is Rosey) (1987)
## 1570 Quartier Mozart (1992)
## 1571 Touki Bouki (Journey of the Hyena) (1973)
## 1572 Wend Kuuni (God's Gift) (1982)
## 1573 Spirits of the Dead (Tre passi nel delirio) (1968)
## 1574 Pharaoh's Army (1995)
## 1575 I, Worst of All (Yo, la peor de todas) (1990)
## 1576 Hungarian Fairy Tale, A (1987)
## 1577 Death in the Garden (Mort en ce jardin, La) (1956)
## 1578 Collectionneuse, La (1967)
## 1579 Baton Rouge (1988)
## 1580 Liebelei (1933)
## 1581 Woman in Question, The (1950)
## 1582 T-Men (1947)
## 1583 Invitation, The (Zaproszenie) (1986)
## 1584 Symphonie pastorale, La (1946)
## 1585 American Dream (1990)
## 1586 Lashou shentan (1992)
## 1587 Terror in a Texas Town (1958)
## 1588 Salut cousin! (1996)
## 1589 Schizopolis (1996)
## 1590 To Have, or Not (1995)
## 1591 Duoluo tianshi (1995)
## 1592 Magic Hour, The (1998)
## 1593 Death in Brunswick (1991)
## 1594 Everest (1998)
## 1595 Shopping (1994)
## 1596 Nemesis 2: Nebula (1995)
## 1597 Romper Stomper (1992)
## 1598 City of Industry (1997)
## 1599 Someone Else's America (1995)
## 1600 Guantanamera (1994)
## 1601 Office Killer (1997)
## 1602 Price Above Rubies, A (1998)
## 1603 Angela (1995)
## 1604 He Walked by Night (1948)
## 1605 Love Serenade (1996)
## 1606 Deceiver (1997)
## 1607 Hurricane Streets (1998)
## 1608 Buddy (1997)
## 1609 B*A*P*S (1997)
## 1610 Truth or Consequences, N.M. (1997)
## 1611 Intimate Relations (1996)
## 1612 Leading Man, The (1996)
## 1613 Tokyo Fist (1995)
## 1614 Reluctant Debutante, The (1958)
## 1615 Warriors of Virtue (1997)
## 1616 Desert Winds (1995)
## 1617 Hugo Pool (1997)
## 1618 King of New York (1990)
## 1619 All Things Fair (1996)
## 1620 Sixth Man, The (1997)
## 1621 Butterfly Kiss (1995)
## 1622 Paris, France (1993)
## 1623 Cérémonie, La (1995)
## 1624 Hush (1998)
## 1625 Nightwatch (1997)
## 1626 Nobody Loves Me (Keiner liebt mich) (1994)
## 1627 Wife, The (1995)
## 1628 Lamerica (1994)
## 1629 Nico Icon (1995)
## 1630 Silence of the Palace, The (Saimt el Qusur) (1994)
## 1631 Slingshot, The (1993)
## 1632 Land and Freedom (Tierra y libertad) (1995)
## 1633 Á köldum klaka (Cold Fever) (1994)
## 1634 Etz Hadomim Tafus (Under the Domin Tree) (1994)
## 1635 Two Friends (1986)
## 1636 Brothers in Trouble (1995)
## 1637 Girls Town (1996)
## 1638 Normal Life (1996)
## 1639 Bitter Sugar (Azucar Amargo) (1996)
## 1640 Eighth Day, The (1996)
## 1641 Dadetown (1995)
## 1642 Some Mother's Son (1996)
## 1643 Angel Baby (1995)
## 1644 Sudden Manhattan (1996)
## 1645 Butcher Boy, The (1998)
## 1646 Men With Guns (1997)
## 1647 Hana-bi (1997)
## 1648 Niagara, Niagara (1997)
## 1649 Big One, The (1997)
## 1650 Butcher Boy, The (1998)
## 1651 Spanish Prisoner, The (1997)
## 1652 Temptress Moon (Feng Yue) (1996)
## 1653 Entertaining Angels: The Dorothy Day Story (1996)
## 1654 Chairman of the Board (1998)
## 1655 Favor, The (1994)
## 1656 Little City (1998)
## 1657 Target (1995)
## 1658 Substance of Fire, The (1996)
## 1659 Getting Away With Murder (1996)
## 1660 Small Faces (1995)
## 1661 New Age, The (1994)
## 1662 Rough Magic (1995)
## 1663 Nothing Personal (1995)
## 1664 8 Heads in a Duffel Bag (1997)
## 1665 Brother's Kiss, A (1997)
## 1666 Ripe (1996)
## 1667 Next Step, The (1995)
## 1668 Wedding Bell Blues (1996)
## 1669 MURDER and murder (1996)
## 1670 Tainted (1998)
## 1671 Further Gesture, A (1996)
## 1672 Kika (1993)
## 1673 Mirage (1995)
## 1674 Mamma Roma (1962)
## 1675 Sunchaser, The (1996)
## 1676 War at Home, The (1996)
## 1677 Sweet Nothing (1995)
## 1678 Mat' i syn (1997)
## 1679 B. Monkey (1998)
## 1680 Sliding Doors (1998)
## 1681 You So Crazy (1994)
## 1682 Scream of Stone (Schrei aus Stein) (1991)
## ReleaseDate video_release_date
## 1 01-Jan-1995 NA
## 2 01-Jan-1995 NA
## 3 01-Jan-1995 NA
## 4 01-Jan-1995 NA
## 5 01-Jan-1995 NA
## 6 01-Jan-1995 NA
## 7 01-Jan-1995 NA
## 8 01-Jan-1995 NA
## 9 01-Jan-1995 NA
## 10 22-Jan-1996 NA
## 11 01-Jan-1995 NA
## 12 14-Aug-1995 NA
## 13 30-Oct-1995 NA
## 14 01-Jan-1994 NA
## 15 29-Jan-1996 NA
## 16 01-Jan-1995 NA
## 17 05-Feb-1996 NA
## 18 01-Jan-1995 NA
## 19 01-Jan-1995 NA
## 20 01-Jan-1995 NA
## 21 16-Feb-1996 NA
## 22 16-Feb-1996 NA
## 23 16-Feb-1996 NA
## 24 23-Feb-1996 NA
## 25 08-Mar-1996 NA
## 26 01-Jan-1995 NA
## 27 01-Jan-1995 NA
## 28 01-Jan-1995 NA
## 29 01-Jan-1995 NA
## 30 01-Jan-1967 NA
## 31 01-Jan-1995 NA
## 32 01-Jan-1994 NA
## 33 01-Jan-1995 NA
## 34 01-Jan-1995 NA
## 35 01-Jan-1995 NA
## 36 01-Jan-1995 NA
## 37 01-Jan-1994 NA
## 38 01-Jan-1995 NA
## 39 01-Jan-1995 NA
## 40 01-Jan-1995 NA
## 41 01-Jan-1995 NA
## 42 01-Jan-1994 NA
## 43 01-Jan-1994 NA
## 44 01-Jan-1994 NA
## 45 01-Jan-1994 NA
## 46 01-Jan-1994 NA
## 47 01-Jan-1994 NA
## 48 01-Jan-1994 NA
## 49 01-Jan-1994 NA
## 50 01-Jan-1977 NA
## 51 01-Jan-1994 NA
## 52 01-Jan-1994 NA
## 53 01-Jan-1994 NA
## 54 01-Jan-1995 NA
## 55 01-Jan-1994 NA
## 56 01-Jan-1994 NA
## 57 01-Jan-1994 NA
## 58 01-Jan-1994 NA
## 59 01-Jan-1994 NA
## 60 01-Jan-1993 NA
## 61 01-Jan-1994 NA
## 62 01-Jan-1994 NA
## 63 01-Jan-1994 NA
## 64 01-Jan-1994 NA
## 65 01-Jan-1993 NA
## 66 01-Jan-1995 NA
## 67 01-Jan-1994 NA
## 68 01-Jan-1994 NA
## 69 01-Jan-1994 NA
## 70 01-Jan-1994 NA
## 71 01-Jan-1994 NA
## 72 01-Jan-1994 NA
## 73 01-Jan-1994 NA
## 74 01-Jan-1965 NA
## 75 01-Jan-1994 NA
## 76 01-Jan-1993 NA
## 77 01-Jan-1993 NA
## 78 01-Jan-1993 NA
## 79 01-Jan-1993 NA
## 80 01-Jan-1993 NA
## 81 01-Jan-1994 NA
## 82 01-Jan-1993 NA
## 83 01-Jan-1993 NA
## 84 01-Jan-1994 NA
## 85 01-Jan-1994 NA
## 86 01-Jan-1993 NA
## 87 01-Jan-1993 NA
## 88 01-Jan-1993 NA
## 89 01-Jan-1982 NA
## 90 01-Jan-1993 NA
## 91 01-Jan-1993 NA
## 92 01-Jan-1993 NA
## 93 24-May-1996 NA
## 94 01-Jan-1990 NA
## 95 01-Jan-1992 NA
## 96 01-Jan-1991 NA
## 97 01-Jan-1990 NA
## 98 01-Jan-1991 NA
## 99 01-Jan-1937 NA
## 100 14-Feb-1997 NA
## 101 08-Mar-1981 NA
## 102 01-Jan-1970 NA
## 103 29-Mar-1996 NA
## 104 29-Mar-1996 NA
## 105 29-Mar-1996 NA
## 106 01-Jan-1996 NA
## 107 14-Jun-1996 NA
## 108 12-Apr-1996 NA
## 109 19-Apr-1996 NA
## 110 01-Jan-1995 NA
## 111 26-Apr-1996 NA
## 112 10-May-1996 NA
## 113 19-Apr-1996 NA
## 114 05-Apr-1996 NA
## 115 26-Apr-1996 NA
## 116 23-Apr-1996 NA
## 117 07-Jun-1996 NA
## 118 10-May-1996 NA
## 119 01-Jan-1994 NA
## 120 28-Jun-1996 NA
## 121 03-Jul-1996 NA
## 122 14-Jun-1996 NA
## 123 19-Jul-1996 NA
## 124 21-Jun-1996 NA
## 125 29-Jun-1996 NA
## 126 06-Sep-1996 NA
## 127 01-Jan-1972 NA
## 128 26-Jul-1996 NA
## 129 04-Oct-1996 NA
## 130 16-Aug-1996 NA
## 131 01-Jan-1961 NA
## 132 01-Jan-1939 NA
## 133 01-Jan-1939 NA
## 134 01-Jan-1941 NA
## 135 01-Jan-1968 NA
## 136 01-Jan-1939 NA
## 137 20-Sep-1996 NA
## 138 04-Oct-1996 NA
## 139 01-Jan-1969 NA
## 140 01-Jan-1993 NA
## 141 01-Jan-1954 NA
## 142 01-Jan-1971 NA
## 143 01-Jan-1965 NA
## 144 01-Jan-1988 NA
## 145 01-Jan-1992 NA
## 146 30-Oct-1996 NA
## 147 05-Oct-1996 NA
## 148 11-Oct-1996 NA
## 149 01-Nov-1996 NA
## 150 18-Oct-1996 NA
## 151 01-Jan-1971 NA
## 152 01-Jan-1973 NA
## 153 01-Jan-1988 NA
## 154 01-Jan-1979 NA
## 155 01-Jan-1987 NA
## 156 01-Jan-1992 NA
## 157 01-Jan-1986 NA
## 158 01-Jan-1989 NA
## 159 01-Jan-1992 NA
## 160 01-Jan-1992 NA
## 161 01-Jan-1986 NA
## 162 01-Jan-1981 NA
## 163 01-Jan-1974 NA
## 164 01-Jan-1989 NA
## 165 01-Jan-1986 NA
## 166 01-Jan-1986 NA
## 167 01-Jan-1980 NA
## 168 01-Jan-1974 NA
## 169 01-Jan-1993 NA
## 170 01-Jan-1988 NA
## 171 01-Jan-1991 NA
## 172 01-Jan-1980 NA
## 173 01-Jan-1987 NA
## 174 01-Jan-1981 NA
## 175 01-Jan-1985 NA
## 176 01-Jan-1986 NA
## 177 01-Jan-1966 NA
## 178 01-Jan-1957 NA
## 179 01-Jan-1971 NA
## 180 01-Jan-1979 NA
## 181 14-Mar-1997 NA
## 182 01-Jan-1990 NA
## 183 01-Jan-1979 NA
## 184 01-Jan-1993 NA
## 185 01-Jan-1960 NA
## 186 01-Jan-1980 NA
## 187 01-Jan-1974 NA
## 188 01-Jan-1987 NA
## 189 01-Jan-1992 NA
## 190 01-Jan-1989 NA
## 191 01-Jan-1984 NA
## 192 01-Jan-1980 NA
## 193 01-Jan-1983 NA
## 194 01-Jan-1973 NA
## 195 01-Jan-1984 NA
## 196 01-Jan-1989 NA
## 197 01-Jan-1967 NA
## 198 01-Jan-1990 NA
## 199 01-Jan-1957 NA
## 200 01-Jan-1980 NA
## 201 01-Jan-1987 NA
## 202 01-Jan-1993 NA
## 203 01-Jan-1992 NA
## 204 01-Jan-1985 NA
## 205 01-Jan-1970 NA
## 206 01-Jan-1988 NA
## 207 01-Jan-1990 NA
## 208 01-Jan-1974 NA
## 209 01-Jan-1984 NA
## 210 01-Jan-1989 NA
## 211 01-Jan-1970 NA
## 212 01-Jan-1988 NA
## 213 01-Jan-1986 NA
## 214 01-Jan-1982 NA
## 215 01-Jan-1989 NA
## 216 01-Jan-1989 NA
## 217 01-Jan-1992 NA
## 218 01-Jan-1991 NA
## 219 01-Jan-1984 NA
## 220 15-Nov-1996 NA
## 221 15-Nov-1996 NA
## 222 22-Nov-1996 NA
## 223 22-Nov-1996 NA
## 224 27-Nov-1996 NA
## 225 27-Nov-1996 NA
## 226 01-Jan-1990 NA
## 227 01-Jan-1991 NA
## 228 01-Jan-1982 NA
## 229 01-Jan-1984 NA
## 230 01-Jan-1986 NA
## 231 01-Jan-1992 NA
## 232 01-Jan-1988 NA
## 233 01-Jan-1992 NA
## 234 01-Jan-1975 NA
## 235 13-Dec-1996 NA
## 236 13-Dec-1996 NA
## 237 13-Dec-1996 NA
## 238 01-Jan-1987 NA
## 239 01-Jan-1992 NA
## 240 20-Dec-1996 NA
## 241 01-Jan-1992 NA
## 242 24-Jan-1997 NA
## 243 07-Mar-1997 NA
## 244 14-Mar-1997 NA
## 245 26-Mar-1997 NA
## 246 01-Jan-1997 NA
## 247 28-Mar-1997 NA
## 248 11-Apr-1997 NA
## 249 02-May-1997 NA
## 250 09-May-1997 NA
## 251 11-Jul-1997 NA
## 252 23-May-1997 NA
## 253 13-Jun-1997 NA
## 254 20-Jun-1997 NA
## 255 20-Jun-1997 NA
## 256 20-Jun-1997 NA
## 257 04-Jul-1997 NA
## 258 11-Jul-1997 NA
## 259 01-Jan-1997 NA
## 260 01-Jan-1997 NA
## 261 01-Aug-1997 NA
## 262 01-Aug-1997 NA
## 263 15-Aug-1997 NA
## 264 22-Aug-1997 NA
## 265 01-Jan-1990 NA
## 266 29-Aug-1997 NA
## 267 NA
## 268 01-Jan-1997 NA
## 269 01-Jan-1997 NA
## 270 01-Jan-1997 NA
## 271 01-Jan-1997 NA
## 272 01-Jan-1997 NA
## 273 01-Jan-1995 NA
## 274 01-Jan-1995 NA
## 275 01-Jan-1995 NA
## 276 01-Jan-1995 NA
## 277 01-Jan-1995 NA
## 278 01-Jan-1996 NA
## 279 01-Jan-1995 NA
## 280 01-Mar-1996 NA
## 281 01-Jan-1994 NA
## 282 13-Jul-1996 NA
## 283 02-Aug-1996 NA
## 284 16-Aug-1996 NA
## 285 04-Oct-1996 NA
## 286 15-Nov-1996 NA
## 287 18-Dec-1996 NA
## 288 20-Dec-1996 NA
## 289 25-Dec-1996 NA
## 290 10-Jan-1997 NA
## 291 14-Feb-1997 NA
## 292 21-Feb-1997 NA
## 293 28-Feb-1997 NA
## 294 21-Mar-1997 NA
## 295 02-May-1997 NA
## 296 16-May-1997 NA
## 297 01-Jan-1997 NA
## 298 27-Jun-1997 NA
## 299 22-Aug-1997 NA
## 300 01-Jan-1997 NA
## 301 19-Sep-1997 NA
## 302 01-Jan-1997 NA
## 303 01-Jan-1997 NA
## 304 13-Sep-1996 NA
## 305 01-Jan-1997 NA
## 306 01-Jan-1997 NA
## 307 01-Jan-1997 NA
## 308 01-Jan-1997 NA
## 309 01-Jan-1997 NA
## 310 01-Jan-1997 NA
## 311 01-Jan-1997 NA
## 312 01-Jan-1997 NA
## 313 01-Jan-1997 NA
## 314 01-Jan-1997 NA
## 315 23-Oct-1998 NA
## 316 23-Dec-1997 NA
## 317 01-Jan-1993 NA
## 318 01-Jan-1993 NA
## 319 06-Dec-1996 NA
## 320 06-Dec-1996 NA
## 321 25-Dec-1996 NA
## 322 18-Apr-1997 NA
## 323 07-Feb-1997 NA
## 324 21-Feb-1997 NA
## 325 21-Mar-1997 NA
## 326 01-Jan-1997 NA
## 327 01-Jan-1997 NA
## 328 08-Aug-1997 NA
## 329 30-Jan-1998 NA
## 330 01-Jan-1997 NA
## 331 26-Sep-1997 NA
## 332 01-Jan-1997 NA
## 333 01-Jan-1997 NA
## 334 01-Jan-1997 NA
## 335 01-Jan-1997 NA
## 336 01-Jan-1997 NA
## 337 01-Jan-1997 NA
## 338 01-Jan-1997 NA
## 339 01-Jan-1997 NA
## 340 01-Jan-1997 NA
## 341 01-Jan-1997 NA
## 342 01-Jan-1997 NA
## 343 01-Jan-1997 NA
## 344 18-Dec-1997 NA
## 345 01-Jan-1997 NA
## 346 01-Jan-1997 NA
## 347 09-Jan-1998 NA
## 348 30-Jan-1998 NA
## 349 16-Jan-1998 NA
## 350 16-Jan-1998 NA
## 351 16-Jan-1998 NA
## 352 01-Jan-1997 NA
## 353 30-Jan-1998 NA
## 354 13-Feb-1998 NA
## 355 13-Feb-1998 NA
## 356 01-Jan-1994 NA
## 357 01-Jan-1975 NA
## 358 01-Aug-1997 NA
## 359 01-Jan-1997 NA
## 360 01-Jan-1997 NA
## 361 01-Jan-1997 NA
## 362 06-Feb-1998 NA
## 363 01-Jan-1995 NA
## 364 01-Jan-1995 NA
## 365 01-Jan-1995 NA
## 366 01-Jan-1995 NA
## 367 01-Jan-1995 NA
## 368 01-Jan-1996 NA
## 369 02-Feb-1996 NA
## 370 23-Feb-1996 NA
## 371 09-Feb-1996 NA
## 372 01-Jan-1995 NA
## 373 01-Jan-1995 NA
## 374 01-Jan-1995 NA
## 375 01-Jan-1995 NA
## 376 01-Jan-1994 NA
## 377 01-Jan-1994 NA
## 378 01-Jan-1994 NA
## 379 01-Jan-1995 NA
## 380 01-Jan-1994 NA
## 381 01-Jan-1994 NA
## 382 01-Jan-1994 NA
## 383 01-Jan-1994 NA
## 384 01-Jan-1994 NA
## 385 01-Jan-1994 NA
## 386 01-Jan-1993 NA
## 387 01-Jan-1993 NA
## 388 01-Jan-1994 NA
## 389 01-Jan-1994 NA
## 390 01-Jan-1993 NA
## 391 01-Jan-1993 NA
## 392 01-Jan-1993 NA
## 393 01-Jan-1993 NA
## 394 01-Jan-1994 NA
## 395 01-Jan-1993 NA
## 396 01-Jan-1994 NA
## 397 01-Jan-1993 NA
## 398 01-Jan-1993 NA
## 399 01-Jan-1993 NA
## 400 01-Jan-1994 NA
## 401 01-Jan-1995 NA
## 402 01-Jan-1990 NA
## 403 01-Jan-1989 NA
## 404 01-Jan-1940 NA
## 405 22-May-1996 NA
## 406 25-Oct-1996 NA
## 407 24-May-1996 NA
## 408 28-Apr-1996 NA
## 409 07-Aug-1996 NA
## 410 12-Jul-1996 NA
## 411 28-Jun-1996 NA
## 412 23-Aug-1996 NA
## 413 19-Jul-1996 NA
## 414 01-Jan-1982 NA
## 415 01-Jan-1975 NA
## 416 01-Jan-1957 NA
## 417 01-Jan-1961 NA
## 418 01-Jan-1950 NA
## 419 01-Jan-1964 NA
## 420 01-Jan-1951 NA
## 421 25-Oct-1996 NA
## 422 01-Jan-1996 NA
## 423 01-Jan-1982 NA
## 424 01-Jan-1996 NA
## 425 01-Jan-1992 NA
## 426 01-Jan-1986 NA
## 427 01-Jan-1962 NA
## 428 01-Jan-1971 NA
## 429 01-Jan-1951 NA
## 430 01-Jan-1933 NA
## 431 01-Jan-1986 NA
## 432 01-Jan-1940 NA
## 433 01-Jan-1989 NA
## 434 01-Jan-1956 NA
## 435 01-Jan-1969 NA
## 436 01-Jan-1981 NA
## 437 01-Jan-1992 NA
## 438 01-Jan-1983 NA
## 439 01-Jan-1993 NA
## 440 01-Jan-1982 NA
## 441 01-Jan-1979 NA
## 442 01-Jan-1990 NA
## 443 01-Jan-1963 NA
## 444 01-Jan-1958 NA
## 445 01-Jan-1945 NA
## 446 01-Jan-1976 NA
## 447 01-Jan-1976 NA
## 448 01-Jan-1976 NA
## 449 01-Jan-1979 NA
## 450 01-Jan-1989 NA
## 451 01-Jan-1978 NA
## 452 01-Jan-1978 NA
## 453 01-Jan-1983 NA
## 454 15-Dec-1996 NA
## 455 10-Jan-1997 NA
## 456 17-Jan-1997 NA
## 457 08-Aug-1997 NA
## 458 01-Jan-1995 NA
## 459 01-Jan-1995 NA
## 460 01-Jan-1995 NA
## 461 01-Jan-1995 NA
## 462 01-Jan-1992 NA
## 463 01-Jan-1994 NA
## 464 01-Jan-1994 NA
## 465 01-Jan-1994 NA
## 466 01-Jan-1992 NA
## 467 01-Jan-1993 NA
## 468 01-Jan-1993 NA
## 469 01-Jan-1993 NA
## 470 01-Jan-1993 NA
## 471 08-Mar-1996 NA
## 472 31-May-1996 NA
## 473 12-Apr-1996 NA
## 474 01-Jan-1963 NA
## 475 19-Jul-1996 NA
## 476 14-Sep-1996 NA
## 477 02-Aug-1996 NA
## 478 01-Jan-1940 NA
## 479 01-Jan-1958 NA
## 480 01-Jan-1959 NA
## 481 01-Jan-1960 NA
## 482 01-Jan-1959 NA
## 483 01-Jan-1942 NA
## 484 01-Jan-1941 NA
## 485 01-Jan-1964 NA
## 486 01-Jan-1954 NA
## 487 01-Jan-1953 NA
## 488 01-Jan-1950 NA
## 489 01-Jan-1946 NA
## 490 01-Jan-1955 NA
## 491 01-Jan-1938 NA
## 492 01-Jan-1955 NA
## 493 01-Jan-1934 NA
## 494 01-Jan-1940 NA
## 495 01-Jan-1956 NA
## 496 01-Jan-1946 NA
## 497 01-Jan-1938 NA
## 498 01-Jan-1951 NA
## 499 01-Jan-1958 NA
## 500 13-Sep-1996 NA
## 501 01-Jan-1941 NA
## 502 01-Jan-1971 NA
## 503 01-Jan-1972 NA
## 504 01-Jan-1967 NA
## 505 01-Jan-1954 NA
## 506 01-Jan-1955 NA
## 507 01-Jan-1951 NA
## 508 27-Dec-1996 NA
## 509 01-Jan-1989 NA
## 510 01-Jan-1954 NA
## 511 01-Jan-1962 NA
## 512 01-Jan-1987 NA
## 513 01-Jan-1949 NA
## 514 01-Jan-1977 NA
## 515 04-Apr-1997 NA
## 516 01-Jan-1983 NA
## 517 01-Jan-1979 NA
## 518 01-Jan-1990 NA
## 519 01-Jan-1948 NA
## 520 01-Jan-1963 NA
## 521 01-Jan-1978 NA
## 522 01-Jan-1986 NA
## 523 01-Jan-1967 NA
## 524 01-Jan-1940 NA
## 525 01-Jan-1946 NA
## 526 01-Jan-1959 NA
## 527 01-Jan-1982 NA
## 528 01-Jan-1984 NA
## 529 01-Jan-1985 NA
## 530 01-Jan-1975 NA
## 531 22-Nov-1996 NA
## 532 07-Mar-1997 NA
## 533 21-Mar-1997 NA
## 534 18-Apr-1997 NA
## 535 23-May-1997 NA
## 536 23-May-1997 NA
## 537 01-Jan-1991 NA
## 538 01-Jan-1997 NA
## 539 01-Jan-1997 NA
## 540 01-Jan-1995 NA
## 541 01-Jan-1995 NA
## 542 01-Jan-1995 NA
## 543 01-Jan-1995 NA
## 544 02-Feb-1996 NA
## 545 01-Jan-1995 NA
## 546 09-Feb-1996 NA
## 547 23-Feb-1996 NA
## 548 02-Feb-1996 NA
## 549 01-Jan-1995 NA
## 550 01-Jan-1995 NA
## 551 01-Jan-1995 NA
## 552 01-Jan-1995 NA
## 553 01-Jan-1995 NA
## 554 01-Jan-1995 NA
## 555 01-Jan-1995 NA
## 556 01-Jan-1995 NA
## 557 01-Jan-1994 NA
## 558 01-Jan-1994 NA
## 559 01-Jan-1994 NA
## 560 01-Jan-1995 NA
## 561 01-Jan-1994 NA
## 562 01-Jan-1995 NA
## 563 01-Jan-1995 NA
## 564 01-Jan-1995 NA
## 565 01-Jan-1995 NA
## 566 01-Jan-1994 NA
## 567 01-Jan-1994 NA
## 568 01-Jan-1994 NA
## 569 01-Jan-1994 NA
## 570 01-Jan-1994 NA
## 571 01-Jan-1993 NA
## 572 01-Jan-1994 NA
## 573 01-Jan-1993 NA
## 574 01-Jan-1993 NA
## 575 01-Jan-1994 NA
## 576 01-Jan-1993 NA
## 577 01-Jan-1993 NA
## 578 01-Jan-1993 NA
## 579 01-Jan-1993 NA
## 580 01-Jan-1995 NA
## 581 01-Jan-1993 NA
## 582 01-Jan-1993 NA
## 583 01-Jan-1993 NA
## 584 01-Jan-1993 NA
## 585 01-Jan-1993 NA
## 586 01-Jan-1994 NA
## 587 01-Jan-1993 NA
## 588 01-Jan-1991 NA
## 589 01-Jan-1969 NA
## 590 08-Mar-1996 NA
## 591 30-Mar-1996 NA
## 592 01-Jan-1995 NA
## 593 01-Jan-1993 NA
## 594 05-Jun-1996 NA
## 595 16-Aug-1996 NA
## 596 21-Jun-1996 NA
## 597 21-Jun-1996 NA
## 598 06-Sep-1996 NA
## 599 16-Aug-1996 NA
## 600 01-Jan-1996 NA
## 601 01-Jan-1943 NA
## 602 01-Jan-1951 NA
## 603 01-Jan-1954 NA
## 604 01-Jan-1934 NA
## 605 01-Jan-1944 NA
## 606 01-Jan-1950 NA
## 607 01-Jan-1940 NA
## 608 01-Jan-1945 NA
## 609 01-Jan-1950 NA
## 610 01-Jan-1958 NA
## 611 01-Jan-1944 NA
## 612 01-Jan-1937 NA
## 613 01-Jan-1936 NA
## 614 01-Jan-1956 NA
## 615 01-Jan-1935 NA
## 616 01-Jan-1968 NA
## 617 01-Jan-1930 NA
## 618 01-Jan-1955 NA
## 619 27-Sep-1996 NA
## 620 11-Oct-1996 NA
## 621 01-Jan-1955 NA
## 622 01-Jan-1960 NA
## 623 01-Jan-1994 NA
## 624 01-Jan-1945 NA
## 625 01-Jan-1963 NA
## 626 01-Jan-1949 NA
## 627 01-Jan-1991 NA
## 628 18-Oct-1996 NA
## 629 01-Jan-1982 NA
## 630 01-Jan-1965 NA
## 631 01-Jan-1992 NA
## 632 01-Jan-1982 NA
## 633 01-Jan-1938 NA
## 634 11-Oct-1996 NA
## 635 01-Jan-1980 NA
## 636 01-Jan-1981 NA
## 637 01-Jan-1981 NA
## 638 01-Jan-1982 NA
## 639 01-Jan-1979 NA
## 640 01-Jan-1989 NA
## 641 01-Jan-1957 NA
## 642 01-Jan-1990 NA
## 643 01-Jan-1994 NA
## 644 01-Jan-1988 NA
## 645 01-Jan-1990 NA
## 646 01-Jan-1969 NA
## 647 01-Jan-1985 NA
## 648 01-Jan-1952 NA
## 649 01-Jan-1984 NA
## 650 01-Jan-1957 NA
## 651 01-Jan-1989 NA
## 652 01-Jan-1990 NA
## 653 01-Jan-1958 NA
## 654 01-Jan-1974 NA
## 655 01-Jan-1986 NA
## 656 01-Jan-1931 NA
## 657 01-Jan-1962 NA
## 658 01-Jan-1990 NA
## 659 01-Jan-1944 NA
## 660 01-Jan-1991 NA
## 661 01-Jan-1952 NA
## 662 01-Jan-1980 NA
## 663 01-Jan-1979 NA
## 664 01-Jan-1984 NA
## 665 01-Jan-1992 NA
## 666 01-Jan-1974 NA
## 667 01-Jan-1977 NA
## 668 01-Jan-1981 NA
## 669 01-Jan-1991 NA
## 670 01-Jan-1993 NA
## 671 01-Jan-1935 NA
## 672 01-Jan-1992 NA
## 673 01-Jan-1962 NA
## 674 01-Jan-1982 NA
## 675 01-Jan-1922 NA
## 676 27-Nov-1996 NA
## 677 24-Jan-1997 NA
## 678 25-Apr-1997 NA
## 679 01-Jan-1981 NA
## 680 29-Aug-1997 NA
## 681 01-Jan-1997 NA
## 682 17-Oct-1997 NA
## 683 01-Jan-1997 NA
## 684 01-Jan-1993 NA
## 685 09-Mar-1996 NA
## 686 01-Jan-1993 NA
## 687 18-Apr-1997 NA
## 688 22-Aug-1997 NA
## 689 01-Jan-1997 NA
## 690 01-Jan-1997 NA
## 691 09-Jan-1998 NA
## 692 01-Jan-1995 NA
## 693 01-Jan-1995 NA
## 694 25-Sep-1995 NA
## 695 01-Jan-1995 NA
## 696 16-Feb-1996 NA
## 697 01-Jan-1995 NA
## 698 01-Jan-1994 NA
## 699 01-Jan-1994 NA
## 700 01-Jan-1995 NA
## 701 01-Jan-1993 NA
## 702 01-Jan-1994 NA
## 703 01-Jan-1994 NA
## 704 01-Jan-1993 NA
## 705 01-Jan-1952 NA
## 706 01-Nov-1996 NA
## 707 01-Jan-1991 NA
## 708 01-Jan-1989 NA
## 709 01-Jan-1992 NA
## 710 01-Jan-1985 NA
## 711 06-Dec-1996 NA
## 712 01-Jan-1987 NA
## 713 18-Dec-1995 NA
## 714 01-Jan-1995 NA
## 715 01-Jan-1995 NA
## 716 01-Jan-1995 NA
## 717 01-Jan-1996 NA
## 718 23-Feb-1996 NA
## 719 01-Jan-1994 NA
## 720 01-Jan-1995 NA
## 721 01-Jan-1995 NA
## 722 01-Jan-1995 NA
## 723 01-Jan-1995 NA
## 724 01-Jan-1995 NA
## 725 01-Jan-1994 NA
## 726 01-Jan-1995 NA
## 727 01-Jan-1994 NA
## 728 01-Jan-1994 NA
## 729 01-Jan-1994 NA
## 730 01-Jan-1996 NA
## 731 01-Jan-1994 NA
## 732 01-Jan-1993 NA
## 733 01-Jan-1994 NA
## 734 01-Jan-1993 NA
## 735 01-Jan-1993 NA
## 736 01-Jan-1993 NA
## 737 01-Jan-1994 NA
## 738 01-Jan-1994 NA
## 739 01-Jan-1990 NA
## 740 05-Apr-1996 NA
## 741 05-Apr-1996 NA
## 742 08-Nov-1996 NA
## 743 30-Aug-1996 NA
## 744 11-Oct-1996 NA
## 745 01-Jan-1972 NA
## 746 01-Jan-1985 NA
## 747 01-Jan-1993 NA
## 748 14-Mar-1997 NA
## 749 01-Jan-1997 NA
## 750 18-Dec-1997 NA
## 751 01-Jan-1997 NA
## 752 06-Feb-1998 NA
## 753 01-Jan-1994 NA
## 754 01-Jan-1997 NA
## 755 01-Jan-1995 NA
## 756 01-Jan-1995 NA
## 757 01-Jan-1995 NA
## 758 01-Jan-1996 NA
## 759 01-Jan-1995 NA
## 760 01-Jan-1995 NA
## 761 01-Jan-1995 NA
## 762 09-Feb-1996 NA
## 763 16-Feb-1996 NA
## 764 08-Mar-1996 NA
## 765 01-Jan-1992 NA
## 766 01-Mar-1996 NA
## 767 01-Jan-1995 NA
## 768 01-Jan-1995 NA
## 769 01-Jan-1995 NA
## 770 01-Jan-1995 NA
## 771 01-Jan-1995 NA
## 772 01-Jan-1995 NA
## 773 01-Jan-1994 NA
## 774 01-Jan-1995 NA
## 775 01-Jan-1995 NA
## 776 01-Jan-1995 NA
## 777 01-Jan-1995 NA
## 778 01-Jan-1995 NA
## 779 01-Jan-1994 NA
## 780 01-Jan-1994 NA
## 781 01-Jan-1995 NA
## 782 01-Jan-1994 NA
## 783 01-Jan-1994 NA
## 784 01-Jan-1993 NA
## 785 01-Jan-1994 NA
## 786 01-Jan-1995 NA
## 787 01-Jan-1995 NA
## 788 01-Jan-1994 NA
## 789 01-Jan-1995 NA
## 790 01-Jan-1995 NA
## 791 01-Jan-1995 NA
## 792 01-Jan-1994 NA
## 793 01-Jan-1994 NA
## 794 01-Jan-1994 NA
## 795 01-Jan-1994 NA
## 796 01-Jan-1994 NA
## 797 01-Jan-1994 NA
## 798 01-Jan-1995 NA
## 799 01-Jan-1995 NA
## 800 01-Jan-1995 NA
## 801 01-Jan-1994 NA
## 802 01-Jan-1993 NA
## 803 01-Jan-1993 NA
## 804 01-Jan-1994 NA
## 805 01-Jan-1993 NA
## 806 01-Jan-1993 NA
## 807 01-Jan-1993 NA
## 808 01-Jan-1993 NA
## 809 01-Jan-1993 NA
## 810 01-Jan-1994 NA
## 811 01-Jan-1993 NA
## 812 01-Jan-1994 NA
## 813 15-Mar-1996 NA
## 814 01-Jan-1994 NA
## 815 30-Nov-1996 NA
## 816 01-Jan-1995 NA
## 817 29-Mar-1996 NA
## 818 22-Mar-1996 NA
## 819 31-May-1996 NA
## 820 15-Nov-1996 NA
## 821 19-Apr-1996 NA
## 822 01-Jan-1968 NA
## 823 26-Apr-1996 NA
## 824 03-May-1996 NA
## 825 31-May-1996 NA
## 826 07-Jun-1996 NA
## 827 06-Dec-1996 NA
## 828 21-Aug-1996 NA
## 829 19-Jul-1996 NA
## 830 17-May-1996 NA
## 831 09-Aug-1996 NA
## 832 06-Sep-1996 NA
## 833 06-Sep-1996 NA
## 834 01-Jan-1995 NA
## 835 01-Jan-1934 NA
## 836 01-Jan-1939 NA
## 837 01-Jan-1941 NA
## 838 30-Aug-1996 NA
## 839 01-Jan-1995 NA
## 840 20-Sep-1996 NA
## 841 04-Oct-1996 NA
## 842 01-Jan-1960 NA
## 843 01-Jan-1959 NA
## 844 23-Aug-1996 NA
## 845 28-Sep-1996 NA
## 846 18-Oct-1996 NA
## 847 11-Oct-1996 NA
## 848 01-Jan-1944 NA
## 849 01-Jan-1990 NA
## 850 27-Sep-1996 NA
## 851 01-Jan-1966 NA
## 852 26-Oct-1996 NA
## 853 01-Jan-1992 NA
## 854 01-Jan-1987 NA
## 855 01-Jan-1981 NA
## 856 01-Jan-1991 NA
## 857 08-Nov-1996 NA
## 858 01-Jan-1996 NA
## 859 01-Jan-1986 NA
## 860 01-Jan-1987 NA
## 861 01-Jan-1986 NA
## 862 22-Nov-1996 NA
## 863 08-Nov-1996 NA
## 864 20-Dec-1996 NA
## 865 01-Jan-1997 NA
## 866 25-Dec-1996 NA
## 867 25-Dec-1996 NA
## 868 10-Jan-1997 NA
## 869 14-Feb-1997 NA
## 870 14-Feb-1997 NA
## 871 14-Feb-1997 NA
## 872 14-Mar-1997 NA
## 873 01-Aug-1997 NA
## 874 08-Aug-1997 NA
## 875 22-Aug-1997 NA
## 876 22-Aug-1997 NA
## 877 01-Jan-1997 NA
## 878 14-Feb-1997 NA
## 879 01-Jan-1997 NA
## 880 01-Jan-1997 NA
## 881 22-Aug-1997 NA
## 882 01-Jan-1997 NA
## 883 01-Jan-1997 NA
## 884 01-Jan-1997 NA
## 885 01-Jan-1998 NA
## 886 01-Jan-1997 NA
## 887 01-Jan-1997 NA
## 888 01-Jan-1997 NA
## 889 01-Jan-1997 NA
## 890 01-Jan-1997 NA
## 891 18-Dec-1997 NA
## 892 01-Jan-1997 NA
## 893 01-Jan-1997 NA
## 894 01-Jan-1997 NA
## 895 01-Jan-1997 NA
## 896 01-Jan-1997 NA
## 897 01-Jan-1995 NA
## 898 01-Jan-1997 NA
## 899 01-Jan-1997 NA
## 900 25-Dec-1997 NA
## 901 25-Dec-1997 NA
## 902 26-Dec-1997 NA
## 903 26-Dec-1997 NA
## 904 26-Dec-1997 NA
## 905 01-Jan-1998 NA
## 906 31-Dec-1997 NA
## 907 01-Jan-1997 NA
## 908 16-Jan-1998 NA
## 909 23-Jan-1998 NA
## 910 06-Feb-1998 NA
## 911 30-Jan-1998 NA
## 912 10-Mar-1998 NA
## 913 10-Mar-1998 NA
## 914 14-Mar-1998 NA
## 915 20-Mar-1998 NA
## 916 27-Mar-1998 NA
## 917 27-Mar-1998 NA
## 918 03-Apr-1998 NA
## 919 01-Jan-1995 NA
## 920 01-Jan-1995 NA
## 921 01-Jan-1993 NA
## 922 10-May-1996 NA
## 923 01-Jan-1991 NA
## 924 01-Jan-1996 NA
## 925 23-Feb-1996 NA
## 926 01-Mar-1996 NA
## 927 08-Mar-1996 NA
## 928 26-Apr-1996 NA
## 929 03-Jul-1996 NA
## 930 31-Jul-1996 NA
## 931 23-Aug-1996 NA
## 932 30-Aug-1996 NA
## 933 25-Oct-1996 NA
## 934 13-Dec-1996 NA
## 935 18-Apr-1997 NA
## 936 13-Jun-1997 NA
## 937 01-Jan-1997 NA
## 938 01-Jan-1997 NA
## 939 01-Jan-1995 NA
## 940 01-Jan-1994 NA
## 941 01-Jan-1994 NA
## 942 01-Jan-1993 NA
## 943 01-Jan-1994 NA
## 944 01-Jan-1994 NA
## 945 01-Jan-1963 NA
## 946 01-Jan-1981 NA
## 947 01-Jan-1988 NA
## 948 28-Feb-1997 NA
## 949 01-Jan-1995 NA
## 950 01-Jan-1995 NA
## 951 01-Jan-1995 NA
## 952 01-Jan-1995 NA
## 953 01-Jan-1995 NA
## 954 01-Jan-1995 NA
## 955 01-Jan-1995 NA
## 956 01-Jan-1994 NA
## 957 01-Jan-1992 NA
## 958 01-Jan-1994 NA
## 959 01-Jan-1993 NA
## 960 01-Jan-1993 NA
## 961 01-Jan-1993 NA
## 962 01-Jan-1993 NA
## 963 01-Jan-1993 NA
## 964 01-Jan-1995 NA
## 965 01-Jan-1957 NA
## 966 01-Jan-1957 NA
## 967 01-Jan-1936 NA
## 968 01-Jan-1949 NA
## 969 01-Jan-1968 NA
## 970 01-Jan-1991 NA
## 971 01-Jan-1991 NA
## 972 01-Jan-1992 NA
## 973 18-Oct-1996 NA
## 974 01-Jan-1996 NA
## 975 12-Apr-1996 NA
## 976 23-Aug-1996 NA
## 977 19-Apr-1996 NA
## 978 10-May-1996 NA
## 979 30-Aug-1996 NA
## 980 01-Nov-1996 NA
## 981 04-Sep-1996 NA
## 982 13-Sep-1996 NA
## 983 13-Sep-1996 NA
## 984 31-Jan-1997 NA
## 985 15-Nov-1996 NA
## 986 10-Jan-1997 NA
## 987 09-May-1997 NA
## 988 07-Feb-1997 NA
## 989 26-Mar-1997 NA
## 990 04-Apr-1997 NA
## 991 11-Apr-1997 NA
## 992 20-Jun-1997 NA
## 993 27-Jun-1997 NA
## 994 20-Jun-1997 NA
## 995 01-Jan-1997 NA
## 996 01-Jan-1995 NA
## 997 01-Jan-1995 NA
## 998 01-Jan-1994 NA
## 999 01-Jan-1994 NA
## 1000 01-Jan-1994 NA
## 1001 30-Aug-1996 NA
## 1002 07-Feb-1997 NA
## 1003 14-Feb-1997 NA
## 1004 01-Jan-1993 NA
## 1005 01-Jan-1991 NA
## 1006 01-Jan-1991 NA
## 1007 31-Jan-1997 NA
## 1008 01-May-1996 NA
## 1009 14-Jun-1996 NA
## 1010 16-Aug-1996 NA
## 1011 27-Sep-1996 NA
## 1012 07-Mar-1997 NA
## 1013 11-Apr-1997 NA
## 1014 25-Apr-1997 NA
## 1015 23-May-1997 NA
## 1016 06-Jun-1997 NA
## 1017 11-Oct-1996 NA
## 1018 01-Jan-1990 NA
## 1019 01-Jan-1989 NA
## 1020 01-Jan-1944 NA
## 1021 01-Jan-1963 NA
## 1022 01-Jan-1997 NA
## 1023 09-May-1997 NA
## 1024 01-Jan-1997 NA
## 1025 01-Jan-1997 NA
## 1026 01-Jan-1997 NA
## 1027 01-Jan-1995 NA
## 1028 01-Jan-1995 NA
## 1029 01-Jan-1995 NA
## 1030 01-Jan-1993 NA
## 1031 01-Jan-1994 NA
## 1032 01-Jan-1994 NA
## 1033 08-Mar-1996 NA
## 1034 26-Apr-1996 NA
## 1035 01-Jan-1993 NA
## 1036 01-Jan-1991 NA
## 1037 01-Jan-1982 NA
## 1038 01-Jan-1997 NA
## 1039 24-Jan-1997 NA
## 1040 01-Jan-1996 NA
## 1041 01-Jan-1995 NA
## 1042 01-Jan-1995 NA
## 1043 01-Jan-1995 NA
## 1044 01-Jan-1994 NA
## 1045 01-Jan-1993 NA
## 1046 01-Jan-1993 NA
## 1047 12-Jul-1996 NA
## 1048 23-Aug-1996 NA
## 1049 02-Aug-1996 NA
## 1050 01-Jan-1947 NA
## 1051 19-Oct-1996 NA
## 1052 01-Jan-1995 NA
## 1053 01-Jan-1995 NA
## 1054 16-Feb-1996 NA
## 1055 01-Jan-1994 NA
## 1056 01-Jan-1992 NA
## 1057 19-Apr-1996 NA
## 1058 01-Jan-1994 NA
## 1059 01-Jan-1996 NA
## 1060 26-Jul-1996 NA
## 1061 25-Dec-1996 NA
## 1062 23-Jan-1998 NA
## 1063 01-Jan-1995 NA
## 1064 01-Jan-1947 NA
## 1065 01-Jan-1983 NA
## 1066 01-Jan-1995 NA
## 1067 21-Feb-1996 NA
## 1068 01-Mar-1996 NA
## 1069 01-Jan-1994 NA
## 1070 01-Jan-1995 NA
## 1071 01-Jan-1995 NA
## 1072 01-Jan-1995 NA
## 1073 01-Jan-1994 NA
## 1074 01-Jan-1994 NA
## 1075 01-Jan-1994 NA
## 1076 01-Jan-1994 NA
## 1077 01-Jan-1994 NA
## 1078 29-Mar-1988 NA
## 1079 26-Jul-1996 NA
## 1080 12-Jul-1996 NA
## 1081 27-Sep-1996 NA
## 1082 25-Apr-1997 NA
## 1083 17-Jan-1997 NA
## 1084 23-Feb-1996 NA
## 1085 29-Mar-1996 NA
## 1086 22-Mar-1996 NA
## 1087 01-Mar-1996 NA
## 1088 04-Apr-1997 NA
## 1089 13-Jun-1997 NA
## 1090 01-Jan-1993 NA
## 1091 01-Jan-1977 NA
## 1092 01-Nov-1996 NA
## 1093 01-Mar-1996 NA
## 1094 03-Apr-1996 NA
## 1095 25-Oct-1996 NA
## 1096 02-May-1997 NA
## 1097 09-Feb-1996 NA
## 1098 22-Mar-1996 NA
## 1099 01-Jan-1994 NA
## 1100 01-Jan-1994 NA
## 1101 01-Jan-1993 NA
## 1102 01-Jan-1996 NA
## 1103 01-Jan-1990 NA
## 1104 01-Jan-1992 NA
## 1105 09-Jan-1998 NA
## 1106 14-Mar-1998 NA
## 1107 01-Jan-1995 NA
## 1108 01-Jan-1995 NA
## 1109 01-Jan-1994 NA
## 1110 01-Jan-1995 NA
## 1111 01-Mar-1996 NA
## 1112 01-Jan-1994 NA
## 1113 01-Jan-1994 NA
## 1114 03-Apr-1996 NA
## 1115 25-Oct-1996 NA
## 1116 01-Jan-1940 NA
## 1117 20-Sep-1996 NA
## 1118 01-Jan-1978 NA
## 1119 01-Jan-1987 NA
## 1120 13-Nov-1996 NA
## 1121 05-Apr-1996 NA
## 1122 01-Jan-1939 NA
## 1123 01-Jan-1954 NA
## 1124 01-Jan-1932 NA
## 1125 01-Jan-1961 NA
## 1126 01-Jan-1958 NA
## 1127 01-Jan-1998 NA
## 1128 09-Feb-1996 NA
## 1129 16-Feb-1996 NA
## 1130 09-Feb-1996 NA
## 1131 01-Jan-1995 NA
## 1132 13-Sep-1996 NA
## 1133 01-Jan-1975 NA
## 1134 16-Oct-1996 NA
## 1135 01-Jan-1991 NA
## 1136 20-Dec-1996 NA
## 1137 09-Oct-1996 NA
## 1138 01-Sep-1997 NA
## 1139 01-Jan-1995 NA
## 1140 01-Jan-1994 NA
## 1141 01-Jan-1993 NA
## 1142 14-Feb-1997 NA
## 1143 28-Feb-1997 NA
## 1144 02-May-1997 NA
## 1145 01-Jan-1994 NA
## 1146 01-Jan-1993 NA
## 1147 01-Jan-1995 NA
## 1148 01-Jan-1994 NA
## 1149 20-Dec-1971 NA
## 1150 03-May-1996 NA
## 1151 10-May-1996 NA
## 1152 24-Jan-1997 NA
## 1153 01-Jan-1993 NA
## 1154 01-Jan-1965 NA
## 1155 28-Jun-1996 NA
## 1156 02-Aug-1996 NA
## 1157 17-Jan-1997 NA
## 1158 30-Oct-1996 NA
## 1159 01-Jan-1979 NA
## 1160 16-May-1997 NA
## 1161 25-Oct-1996 NA
## 1162 02-Aug-1996 NA
## 1163 27-Dec-1996 NA
## 1164 10-Jan-1997 NA
## 1165 01-Jan-1996 NA
## 1166 01-Jan-1993 NA
## 1167 01-Jan-1994 NA
## 1168 01-Jan-1993 NA
## 1169 01-Jan-1994 NA
## 1170 01-Jan-1994 NA
## 1171 01-Jan-1994 NA
## 1172 01-Jan-1939 NA
## 1173 06-Jun-1997 NA
## 1174 27-Sep-1996 NA
## 1175 01-Jan-1997 NA
## 1176 01-Jan-1997 NA
## 1177 01-Jan-1996 NA
## 1178 01-Jan-1994 NA
## 1179 01-Jan-1995 NA
## 1180 01-Jan-1994 NA
## 1181 01-Jan-1994 NA
## 1182 01-Jan-1994 NA
## 1183 01-Jan-1994 NA
## 1184 01-Jan-1994 NA
## 1185 01-Jan-1994 NA
## 1186 01-Jan-1994 NA
## 1187 17-May-1975 NA
## 1188 01-Jan-1990 NA
## 1189 24-Jan-1997 NA
## 1190 04-Apr-1997 NA
## 1191 01-Feb-1998 NA
## 1192 01-Jan-1993 NA
## 1193 01-Jan-1994 NA
## 1194 01-Jan-1994 NA
## 1195 01-Jan-1993 NA
## 1196 01-Jan-1992 NA
## 1197 23-Mar-1996 NA
## 1198 28-Jun-1960 NA
## 1199 12-Apr-1996 NA
## 1200 01-Jan-1950 NA
## 1201 02-Apr-1996 NA
## 1202 19-Jul-1996 NA
## 1203 01-Jan-1935 NA
## 1204 01-Jan-1942 NA
## 1205 08-Nov-1996 NA
## 1206 01-Jan-1993 NA
## 1207 01-Jan-1995 NA
## 1208 01-Jan-1995 NA
## 1209 01-Jan-1994 NA
## 1210 01-Jan-1995 NA
## 1211 01-Jan-1994 NA
## 1212 01-Jan-1993 NA
## 1213 01-Jan-1993 NA
## 1214 08-Mar-1976 NA
## 1215 03-May-1996 NA
## 1216 18-Apr-1997 NA
## 1217 01-Jan-1995 NA
## 1218 01-Jan-1995 NA
## 1219 01-Jan-1995 NA
## 1220 01-Jan-1995 NA
## 1221 01-Jan-1994 NA
## 1222 01-Jan-1993 NA
## 1223 01-Jan-1993 NA
## 1224 01-Jan-1994 NA
## 1225 01-Jan-1995 NA
## 1226 16-May-1997 NA
## 1227 01-Jan-1995 NA
## 1228 01-Jan-1995 NA
## 1229 01-Jan-1995 NA
## 1230 01-Jan-1994 NA
## 1231 01-Jan-1990 NA
## 1232 01-Jan-1991 NA
## 1233 01-Jan-1996 NA
## 1234 01-Jan-1998 NA
## 1235 01-Jan-1994 NA
## 1236 01-Jan-1997 NA
## 1237 01-Jan-1996 NA
## 1238 01-Jan-1996 NA
## 1239 01-Jan-1995 NA
## 1240 12-Apr-1996 NA
## 1241 27-Jun-1997 NA
## 1242 01-Jan-1991 NA
## 1243 06-Feb-1998 NA
## 1244 17-Jan-1997 NA
## 1245 29-Jan-1997 NA
## 1246 01-Jan-1995 NA
## 1247 01-Jan-1994 NA
## 1248 01-Jan-1994 NA
## 1249 01-Jan-1993 NA
## 1250 01-Jan-1995 NA
## 1251 25-Apr-1997 NA
## 1252 27-Jun-1997 NA
## 1253 01-Jan-1995 NA
## 1254 30-May-1997 NA
## 1255 02-May-1997 NA
## 1256 23-May-1997 NA
## 1257 23-May-1997 NA
## 1258 30-May-1997 NA
## 1259 09-Feb-1996 NA
## 1260 01-Jan-1995 NA
## 1261 01-Jan-1995 NA
## 1262 12-Jul-1996 NA
## 1263 23-Aug-1996 NA
## 1264 16-Aug-1996 NA
## 1265 01-Jan-1997 NA
## 1266 01-Jan-1973 NA
## 1267 01-Jan-1995 NA
## 1268 01-Jan-1992 NA
## 1269 01-Jan-1957 NA
## 1270 01-Jan-1993 NA
## 1271 01-Jan-1994 NA
## 1272 01-Jan-1994 NA
## 1273 01-Jan-1994 NA
## 1274 01-Jan-1993 NA
## 1275 01-Jan-1994 NA
## 1276 26-Apr-1996 NA
## 1277 25-Sep-1996 NA
## 1278 21-Mar-1997 NA
## 1279 04-Jul-1997 NA
## 1280 01-Jan-1997 NA
## 1281 26-Jul-1996 NA
## 1282 11-Oct-1996 NA
## 1283 04-Jul-1997 NA
## 1284 23-Feb-1996 NA
## 1285 01-Jan-1994 NA
## 1286 01-Jan-1937 NA
## 1287 08-Mar-1996 NA
## 1288 29-Mar-1996 NA
## 1289 22-Mar-1996 NA
## 1290 01-Jan-1994 NA
## 1291 19-Apr-1996 NA
## 1292 11-Jul-1997 NA
## 1293 16-Jan-1998 NA
## 1294 13-Feb-1998 NA
## 1295 01-Jan-1997 NA
## 1296 01-Jan-1996 NA
## 1297 01-Jan-1994 NA
## 1298 01-Jan-1953 NA
## 1299 01-Jan-1941 NA
## 1300 30-May-1997 NA
## 1301 01-Jan-1981 NA
## 1302 06-Jun-1997 NA
## 1303 01-Jan-1994 NA
## 1304 01-Jan-1996 NA
## 1305 01-Jan-1995 NA
## 1306 01-Jan-1994 NA
## 1307 01-Jan-1994 NA
## 1308 01-Jan-1994 NA
## 1309 01-Jan-1974 NA
## 1310 01-Jan-1945 NA
## 1311 15-Jan-1996 NA
## 1312 26-Jul-1996 NA
## 1313 20-Feb-1998 NA
## 1314 01-Jan-1994 NA
## 1315 04-Apr-1997 NA
## 1316 25-Dec-1997 NA
## 1317 22-Mar-1996 NA
## 1318 07-Jun-1996 NA
## 1319 01-Mar-1996 NA
## 1320 03-May-1996 NA
## 1321 10-May-1996 NA
## 1322 01-Jan-1993 NA
## 1323 01-Jan-1994 NA
## 1324 12-Apr-1996 NA
## 1325 12-Apr-1996 NA
## 1326 10-May-1996 NA
## 1327 16-Sep-1994 NA
## 1328 10-May-1996 NA
## 1329 10-May-1996 NA
## 1330 01-Jan-1994 NA
## 1331 01-Jan-1995 NA
## 1332 01-Jan-1993 NA
## 1333 01-Jan-1994 NA
## 1334 14-Jun-1996 NA
## 1335 13-Sep-1996 NA
## 1336 17-Jul-1996 NA
## 1337 01-Nov-1996 NA
## 1338 09-Aug-1996 NA
## 1339 01-Jan-1993 NA
## 1340 01-Jan-1995 NA
## 1341 01-Jan-1992 NA
## 1342 14-Jun-1996 NA
## 1343 01-Jan-1995 NA
## 1344 01-Jan-1993 NA
## 1345 01-Jan-1994 NA
## 1346 01-Jan-1992 NA
## 1347 01-Jan-1958 NA
## 1348 01-Jan-1990 NA
## 1349 01-Jan-1993 NA
## 1350 01-Jan-1949 NA
## 1351 12-Jul-1996 NA
## 1352 01-Jan-1976 NA
## 1353 01-Jan-1994 NA
## 1354 01-Jan-1992 NA
## 1355 04-Oct-1996 NA
## 1356 04-Oct-1996 NA
## 1357 01-Jan-1994 NA
## 1358 16-Sep-1996 NA
## 1359 24-Sep-1996 NA
## 1360 01-Jan-1994 NA
## 1361 01-Jan-1996 NA
## 1362 13-Sep-1996 NA
## 1363 27-Sep-1996 NA
## 1364 04-Oct-1996 NA
## 1365 01-Jan-1993 NA
## 1366 01-Jan-1994 NA
## 1367 01-Jan-1994 NA
## 1368 01-Jan-1994 NA
## 1369 01-Jan-1950 NA
## 1370 01-Jan-1994 NA
## 1371 01-Jan-1994 NA
## 1372 01-Jan-1994 NA
## 1373 4-Feb-1971 NA
## 1374 01-Jan-1980 NA
## 1375 01-Jan-1993 NA
## 1376 31-Jan-1997 NA
## 1377 07-Feb-1997 NA
## 1378 05-Mar-1997 NA
## 1379 28-Mar-1997 NA
## 1380 02-May-1997 NA
## 1381 01-Jan-1996 NA
## 1382 16-May-1997 NA
## 1383 16-May-1997 NA
## 1384 13-Jun-1997 NA
## 1385 20-Jun-1997 NA
## 1386 20-Jun-1997 NA
## 1387 27-Jun-1997 NA
## 1388 27-Jun-1997 NA
## 1389 27-Jun-1997 NA
## 1390 27-Jun-1997 NA
## 1391 04-Jul-1997 NA
## 1392 01-Jan-1997 NA
## 1393 01-Jan-1997 NA
## 1394 01-Jan-1997 NA
## 1395 01-Jan-1998 NA
## 1396 26-Jul-1996 NA
## 1397 01-Jan-1934 NA
## 1398 13-Nov-1996 NA
## 1399 01-Jan-1997 NA
## 1400 01-Jan-1995 NA
## 1401 01-Jan-1993 NA
## 1402 01-Jan-1993 NA
## 1403 01-Jan-1994 NA
## 1404 01-Jan-1987 NA
## 1405 07-Mar-1997 NA
## 1406 01-Jan-1995 NA
## 1407 01-Jan-1994 NA
## 1408 01-Jan-1995 NA
## 1409 01-Jan-1994 NA
## 1410 01-Jan-1993 NA
## 1411 01-Jan-1968 NA
## 1412 01-Jan-1995 NA
## 1413 01-Jan-1994 NA
## 1414 01-Jan-1995 NA
## 1415 01-Jan-1994 NA
## 1416 01-Jan-1994 NA
## 1417 02-May-1997 NA
## 1418 01-Jan-1993 NA
## 1419 01-Jan-1994 NA
## 1420 01-Jan-1997 NA
## 1421 01-Jan-1993 NA
## 1422 01-Jan-1993 NA
## 1423 01-Jan-1995 NA
## 1424 01-Jan-1994 NA
## 1425 01-Jan-1994 NA
## 1426 13-Sep-1996 NA
## 1427 01-Nov-1996 NA
## 1428 07-Feb-1997 NA
## 1429 01-Jan-1998 NA
## 1430 01-Jan-1997 NA
## 1431 01-Jan-1997 NA
## 1432 09-Oct-1998 NA
## 1433 01-Jan-1997 NA
## 1434 16-Jan-1998 NA
## 1435 01-Jan-1995 NA
## 1436 01-Jan-1993 NA
## 1437 01-Jan-1994 NA
## 1438 01-Jan-1995 NA
## 1439 01-Jan-1994 NA
## 1440 01-Jan-1994 NA
## 1441 01-Jan-1995 NA
## 1442 01-Jan-1995 NA
## 1443 01-Jan-1994 NA
## 1444 01-Jan-1965 NA
## 1445 01-Jan-1994 NA
## 1446 01-Jan-1995 NA
## 1447 01-Jan-1993 NA
## 1448 19-Apr-1996 NA
## 1449 22-Mar-1996 NA
## 1450 01-Jan-1947 NA
## 1451 01-Jan-1940 NA
## 1452 01-Jan-1943 NA
## 1453 01-Jan-1946 NA
## 1454 01-Jan-1947 NA
## 1455 01-Jan-1943 NA
## 1456 01-Jan-1954 NA
## 1457 11-Oct-1996 NA
## 1458 01-Jan-1937 NA
## 1459 20-Sep-1996 NA
## 1460 25-Oct-1996 NA
## 1461 01-Jan-1935 NA
## 1462 25-Dec-1996 NA
## 1463 01-Jan-1997 NA
## 1464 01-Jan-1995 NA
## 1465 01-Jan-1995 NA
## 1466 01-Jan-1995 NA
## 1467 01-Jan-1993 NA
## 1468 01-Jan-1995 NA
## 1469 01-Jan-1995 NA
## 1470 01-Jan-1995 NA
## 1471 01-Jan-1995 NA
## 1472 19-Jul-1996 NA
## 1473 01-Jan-1939 NA
## 1474 01-Jan-1994 NA
## 1475 01-Jan-1993 NA
## 1476 01-Jan-1948 NA
## 1477 22-Apr-1997 NA
## 1478 01-Jan-1995 NA
## 1479 01-Jan-1995 NA
## 1480 01-Jan-1974 NA
## 1481 01-Jan-1994 NA
## 1482 10-May-1996 NA
## 1483 17-Mar-1998 NA
## 1484 01-Jan-1994 NA
## 1485 01-Jan-1994 NA
## 1486 01-Jan-1995 NA
## 1487 01-Jan-1993 NA
## 1488 01-Jan-1993 NA
## 1489 01-Jan-1994 NA
## 1490 01-Jan-1993 NA
## 1491 01-Jan-1995 NA
## 1492 01-Jan-1994 NA
## 1493 06-Sep-1996 NA
## 1494 19-Apr-1996 NA
## 1495 07-Aug-1996 NA
## 1496 23-Aug-1996 NA
## 1497 11-Oct-1996 NA
## 1498 10-Jan-1997 NA
## 1499 01-Jan-1994 NA
## 1500 08-Nov-1996 NA
## 1501 31-Jan-1997 NA
## 1502 01-Jan-1994 NA
## 1503 01-Jan-1995 NA
## 1504 12-Jul-1996 NA
## 1505 06-Sep-1996 NA
## 1506 12-Apr-1996 NA
## 1507 11-Oct-1996 NA
## 1508 01-Jan-1995 NA
## 1509 01-Jan-1994 NA
## 1510 08-Nov-1996 NA
## 1511 01-May-1997 NA
## 1512 05-Apr-1996 NA
## 1513 14-May-1997 NA
## 1514 20-Jun-1997 NA
## 1515 01-Jan-1995 NA
## 1516 01-Jan-1994 NA
## 1517 01-Jan-1996 NA
## 1518 01-Jan-1995 NA
## 1519 01-Jan-1995 NA
## 1520 01-Jan-1995 NA
## 1521 01-Jan-1993 NA
## 1522 01-Jan-1994 NA
## 1523 01-Jan-1994 NA
## 1524 07-Jun-1996 NA
## 1525 20-Mar-1998 NA
## 1526 01-Jan-1985 NA
## 1527 09-Jan-1998 NA
## 1528 09-May-1997 NA
## 1529 29-Mar-1996 NA
## 1530 01-Jan-1995 NA
## 1531 01-Jan-1995 NA
## 1532 01-Jan-1994 NA
## 1533 01-Jan-1993 NA
## 1534 30-May-1997 NA
## 1535 01-Jan-1994 NA
## 1536 22-Jul-1996 NA
## 1537 11-Apr-1997 NA
## 1538 25-Apr-1997 NA
## 1539 01-Jan-1993 NA
## 1540 01-Jan-1995 NA
## 1541 01-Jan-1994 NA
## 1542 01-Jan-1926 NA
## 1543 18-Oct-1996 NA
## 1544 01-Jan-1995 NA
## 1545 01-Jan-1995 NA
## 1546 01-Jan-1988 NA
## 1547 01-Jan-1995 NA
## 1548 01-Jan-1995 NA
## 1549 01-Jan-1995 NA
## 1550 01-Jan-1995 NA
## 1551 01-Jan-1994 NA
## 1552 01-Jan-1995 NA
## 1553 01-Jan-1995 NA
## 1554 01-Jan-1994 NA
## 1555 01-Jan-1993 NA
## 1556 01-Jan-1995 NA
## 1557 16-Feb-1996 NA
## 1558 29-Mar-1996 NA
## 1559 01-Jan-1994 NA
## 1560 01-Jan-1981 NA
## 1561 01-Jan-1994 NA
## 1562 01-Jan-1993 NA
## 1563 01-Jan-1994 NA
## 1564 01-Jan-1991 NA
## 1565 01-Jan-1992 NA
## 1566 01-Jan-1943 NA
## 1567 01-Jan-1992 NA
## 1568 01-Jan-1992 NA
## 1569 01-Jan-1987 NA
## 1570 01-Jan-1992 NA
## 1571 01-Jan-1973 NA
## 1572 01-Jan-1982 NA
## 1573 01-Jan-1968 NA
## 1574 01-Jan-1995 NA
## 1575 01-Jan-1990 NA
## 1576 01-Jan-1987 NA
## 1577 01-Jan-1956 NA
## 1578 01-Jan-1967 NA
## 1579 01-Jan-1988 NA
## 1580 01-Jan-1933 NA
## 1581 01-Jan-1950 NA
## 1582 01-Jan-1947 NA
## 1583 01-Jan-1986 NA
## 1584 01-Jan-1946 NA
## 1585 01-Jan-1990 NA
## 1586 01-Jan-1992 NA
## 1587 01-Jan-1958 NA
## 1588 21-Feb-1997 NA
## 1589 23-May-1997 NA
## 1590 06-Jun-1997 NA
## 1591 21-Jan-1998 NA
## 1592 30-Jan-1998 NA
## 1593 16-Aug-1996 NA
## 1594 10-Mar-1998 NA
## 1595 09-Feb-1996 NA
## 1596 01-Jan-1995 NA
## 1597 01-Jan-1992 NA
## 1598 14-Mar-1997 NA
## 1599 10-May-1996 NA
## 1600 16-May-1997 NA
## 1601 01-Jan-1997 NA
## 1602 20-Mar-1998 NA
## 1603 16-Feb-1996 NA
## 1604 01-Jan-1948 NA
## 1605 11-Jul-1997 NA
## 1606 01-Jan-1997 NA
## 1607 01-Jan-1998 NA
## 1608 06-Jun-1997 NA
## 1609 28-Mar-1997 NA
## 1610 02-May-1997 NA
## 1611 09-May-1997 NA
## 1612 16-Jan-1998 NA
## 1613 11-Feb-1998 NA
## 1614 01-Jan-1958 NA
## 1615 02-May-1997 NA
## 1616 01-Jan-1995 NA
## 1617 01-Jan-1997 NA
## 1618 01-Jan-1990 NA
## 1619 08-Mar-1996 NA
## 1620 28-Mar-1997 NA
## 1621 26-Apr-1996 NA
## 1622 01-Jan-1993 NA
## 1623 20-Dec-1996 NA
## 1624 10-Mar-1998 NA
## 1625 22-Apr-1997 NA
## 1626 09-Feb-1996 NA
## 1627 26-Jul-1996 NA
## 1628 01-Jan-1994 NA
## 1629 01-Jan-1995 NA
## 1630 02-Feb-1996 NA
## 1631 01-Jan-1993 NA
## 1632 29-Mar-1996 NA
## 1633 08-Mar-1996 NA
## 1634 19-Apr-1996 NA
## 1635 26-Apr-1986 NA
## 1636 26-Apr-1996 NA
## 1637 23-Aug-1996 NA
## 1638 25-Oct-1996 NA
## 1639 22-Nov-1996 NA
## 1640 01-Nov-1996 NA
## 1641 18-Sep-1996 NA
## 1642 27-Dec-1996 NA
## 1643 10-Jan-1997 NA
## 1644 13-Jun-1997 NA
## 1645 01-Jan-1998 NA
## 1646 06-Mar-1998 NA
## 1647 20-Mar-1998 NA
## 1648 20-Mar-1998 NA
## 1649 27-Mar-1998 NA
## 1650 01-Jan-1998 NA
## 1651 27-Mar-1998 NA
## 1652 13-Jun-1997 NA
## 1653 27-Sep-1996 NA
## 1654 01-Jan-1998 NA
## 1655 01-Jan-1994 NA
## 1656 20-Feb-1998 NA
## 1657 28-Feb-1996 NA
## 1658 06-Dec-1996 NA
## 1659 12-Apr-1996 NA
## 1660 09-Aug-1996 NA
## 1661 01-Jan-1994 NA
## 1662 30-May-1997 NA
## 1663 30-Apr-1997 NA
## 1664 18-Apr-1997 NA
## 1665 25-Apr-1997 NA
## 1666 02-May-1997 NA
## 1667 13-Jun-1997 NA
## 1668 13-Jun-1997 NA
## 1669 20-Jun-1997 NA
## 1670 01-Feb-1998 NA
## 1671 20-Feb-1998 NA
## 1672 01-Jan-1993 NA
## 1673 01-Jan-1995 NA
## 1674 01-Jan-1962 NA
## 1675 25-Oct-1996 NA
## 1676 01-Jan-1996 NA
## 1677 20-Sep-1996 NA
## 1678 06-Feb-1998 NA
## 1679 06-Feb-1998 NA
## 1680 01-Jan-1998 NA
## 1681 01-Jan-1994 NA
## 1682 08-Mar-1996 NA
## IMDb_URL
## 1 http://us.imdb.com/M/title-exact?Toy%20Story%20(1995)
## 2 http://us.imdb.com/M/title-exact?GoldenEye%20(1995)
## 3 http://us.imdb.com/M/title-exact?Four%20Rooms%20(1995)
## 4 http://us.imdb.com/M/title-exact?Get%20Shorty%20(1995)
## 5 http://us.imdb.com/M/title-exact?Copycat%20(1995)
## 6 http://us.imdb.com/Title?Yao+a+yao+yao+dao+waipo+qiao+(1995)
## 7 http://us.imdb.com/M/title-exact?Twelve%20Monkeys%20(1995)
## 8 http://us.imdb.com/M/title-exact?Babe%20(1995)
## 9 http://us.imdb.com/M/title-exact?Dead%20Man%20Walking%20(1995)
## 10 http://us.imdb.com/M/title-exact?Richard%20III%20(1995)
## 11 http://us.imdb.com/M/title-exact?Se7en%20(1995)
## 12 http://us.imdb.com/M/title-exact?Usual%20Suspects,%20The%20(1995)
## 13 http://us.imdb.com/M/title-exact?Mighty%20Aphrodite%20(1995)
## 14 http://us.imdb.com/M/title-exact?Postino,%20Il%20(1994)
## 15 http://us.imdb.com/M/title-exact?Mr.%20Holland's%20Opus%20(1995)
## 16 http://us.imdb.com/M/title-exact?Gazon%20maudit%20(1995)
## 17 http://us.imdb.com/M/title-exact?From%20Dusk%20Till%20Dawn%20(1996)
## 18 http://us.imdb.com/M/title-exact?Badkonake%20Sefid%20(1995)
## 19 http://us.imdb.com/M/title-exact?Antonia%20(1995)
## 20 http://us.imdb.com/M/title-exact?Angels%20and%20Insects%20(1995)
## 21 http://us.imdb.com/M/title-exact?Muppet%20Treasure%20Island%20(1996)
## 22 http://us.imdb.com/M/title-exact?Braveheart%20(1995)
## 23 http://us.imdb.com/M/title-exact?Taxi%20Driver%20(1976)
## 24 http://us.imdb.com/M/title-exact?Hong%20Faan%20Kui%20(1995)
## 25 http://us.imdb.com/M/title-exact?Birdcage,%20The%20(1996)
## 26 http://us.imdb.com/M/title-exact?Brothers%20McMullen,%20The%20(1995)
## 27 http://us.imdb.com/M/title-exact?Bad%20Boys%20(1995)
## 28 http://us.imdb.com/M/title-exact?Apollo%2013%20(1995)
## 29 http://us.imdb.com/M/title-exact?Batman%20Forever%20(1995)
## 30 http://us.imdb.com/M/title-exact?Belle%20de%20jour%20(1967)
## 31 http://us.imdb.com/M/title-exact?Crimson%20Tide%20(1995)
## 32 http://us.imdb.com/M/title-exact?Crumb%20(1994)
## 33 http://us.imdb.com/M/title-exact?Desperado%20(1995)
## 34 http://us.imdb.com/M/title-exact?Doom%20Generation,%20The%20(1995)
## 35 http://us.imdb.com/M/title-exact?Free%20Willy%202:%20The%20Adventure%20Home%20(1995)
## 36 http://us.imdb.com/M/title-exact?Mad%20Love%20(1995)
## 37 http://us.imdb.com/M/title-exact?Nadja%20(1994)
## 38 http://us.imdb.com/M/title-exact?Net,%20The%20(1995)
## 39 http://us.imdb.com/M/title-exact?Strange%20Days%20(1995)
## 40 http://us.imdb.com/M/title-exact?To%20Wong%20Foo,%20Thanks%20for%20Everything!%20Julie%20Newmar%20(1995)
## 41 http://us.imdb.com/M/title-exact?Billy%20Madison%20(1995)
## 42 http://us.imdb.com/M/title-exact?Clerks%20(1994)
## 43 http://us.imdb.com/M/title-exact?Disclosure%20(1994)
## 44 http://us.imdb.com/M/title-exact?Dolores%20Claiborne%20(1994)
## 45 http://us.imdb.com/M/title-exact?Yinshi%20Nan%20Nu%20(1994)
## 46 http://us.imdb.com/M/title-exact?Exotica%20(1994)
## 47 http://us.imdb.com/M/title-exact?Ed%20Wood%20(1994)
## 48 http://us.imdb.com/M/title-exact?Hoop%20Dreams%20(1994)
## 49 http://us.imdb.com/M/title-exact?I.Q.%20(1994)
## 50 http://us.imdb.com/M/title-exact?Star%20Wars%20(1977)
## 51 http://us.imdb.com/M/title-exact?Legends%20of%20the%20Fall%20(1994)
## 52 http://us.imdb.com/M/title-exact?Madness%20of%20King%20George,%20The%20(1994)
## 53 http://us.imdb.com/M/title-exact?Natural%20Born%20Killers%20(1994)
## 54 http://us.imdb.com/M/title-exact?Outbreak%20(1995)
## 55 http://us.imdb.com/Title?L%E9on+(1994)
## 56 http://us.imdb.com/M/title-exact?Pulp%20Fiction%20(1994)
## 57 http://us.imdb.com/M/title-exact?Priest%20(1994)
## 58 http://us.imdb.com/M/title-exact?Quiz%20Show%20(1994)
## 59 http://us.imdb.com/M/title-exact?Trzy%20kolory:%20Czerwony%20(1994)
## 60 http://us.imdb.com/M/title-exact?Trzy%20kolory:%20Niebieski%20(1993)
## 61 http://us.imdb.com/M/title-exact?Trzy%20kolory:%20Bialy%20(1994)
## 62 http://us.imdb.com/M/title-exact?Stargate%20(1994)
## 63 http://us.imdb.com/M/title-exact?Santa%20Clause,%20The%20(1994)
## 64 http://us.imdb.com/M/title-exact?Shawshank%20Redemption,%20The%20(1994)
## 65 http://us.imdb.com/M/title-exact?What's%20Eating%20Gilbert%20Grape%20(1993)
## 66 http://us.imdb.com/M/title-exact?While%20You%20Were%20Sleeping%20(1995)
## 67 http://us.imdb.com/M/title-exact?Ace%20Ventura:%20Pet%20Detective%20(1994)
## 68 http://us.imdb.com/M/title-exact?Crow,%20The%20(1994)
## 69 http://us.imdb.com/M/title-exact?Forrest%20Gump%20(1994)
## 70 http://us.imdb.com/M/title-exact?Four%20Weddings%20and%20a%20Funeral%20(1994)
## 71 http://us.imdb.com/M/title-exact?Lion%20King,%20The%20(1994)
## 72 http://us.imdb.com/M/title-exact?Mask,%20The%20(1994)
## 73 http://us.imdb.com/M/title-exact?Maverick%20(1994)
## 74 http://us.imdb.com/M/title-exact?Faster%20Pussycat!%20Kill!%20Kill!%20(1965)
## 75 http://us.imdb.com/M/title-exact?Brother%20Minister:%20The%20Assassination%20of%20Malcolm%20X%20(1994)
## 76 http://us.imdb.com/M/title-exact?Carlito's%20Way%20(1993)
## 77 http://us.imdb.com/M/title-exact?Firm,%20The%20(1993)
## 78 http://us.imdb.com/M/title-exact?Free%20Willy%20(1993)
## 79 http://us.imdb.com/M/title-exact?Fugitive,%20The%20(1993)
## 80 http://us.imdb.com/M/title-exact?Hot%20Shots!%20Part%20Deux%20(1993)
## 81 http://us.imdb.com/M/title-exact?Hudsucker%20Proxy,%20The%20(1994)
## 82 http://us.imdb.com/M/title-exact?Jurassic%20Park%20(1993)
## 83 http://us.imdb.com/M/title-exact?Much%20Ado%20About%20Nothing%20(1993)
## 84 http://us.imdb.com/M/title-exact?Robert%20A.%20Heinlein's%20The%20Puppet%20Masters%20(1994)
## 85 http://us.imdb.com/M/title-exact?Ref,%20The%20(1994)
## 86 http://us.imdb.com/M/title-exact?Remains%20of%20the%20Day,%20The%20(1993)
## 87 http://us.imdb.com/M/title-exact?Searching%20for%20Bobby%20Fischer%20(1993)
## 88 http://us.imdb.com/M/title-exact?Sleepless%20in%20Seattle%20(1993)
## 89 http://us.imdb.com/M/title-exact?Blade%20Runner%20(1982)
## 90 http://us.imdb.com/M/title-exact?So%20I%20Married%20an%20Axe%20Murderer%20(1993)
## 91 http://us.imdb.com/M/title-exact?Nightmare%20Before%20Christmas,%20The%20(1993)
## 92 http://us.imdb.com/M/title-exact?True%20Romance%20(1993)
## 93 http://us.imdb.com/Title?Welcome+to+the+Dollhouse+(1995)
## 94 http://us.imdb.com/M/title-exact?Home%20Alone%20(1990)
## 95 http://us.imdb.com/M/title-exact?Aladdin%20(1992)
## 96 http://us.imdb.com/M/title-exact?Terminator%202:%20Judgment%20Day%20(1991)
## 97 http://us.imdb.com/M/title-exact?Dances%20with%20Wolves%20(1990)
## 98 http://us.imdb.com/M/title-exact?Silence%20of%20the%20Lambs,%20The%20(1991)
## 99 http://us.imdb.com/M/title-exact?Snow%20White%20and%20the%20Seven%20Dwarfs%20(1937)
## 100 http://us.imdb.com/M/title-exact?Fargo%20(1996)
## 101 http://us.imdb.com/M/title-exact?Heavy%20Metal%20(1981)
## 102 http://us.imdb.com/M/title-exact?Aristocats,%20The%20(1970)
## 103 http://us.imdb.com/M/title-exact?All%20Dogs%20Go%20to%20Heaven%202%20(1996)
## 104 http://us.imdb.com/M/title-exact?Theodore%20Rex%20(1995)
## 105 http://us.imdb.com/M/title-exact?Sgt.%20Bilko%20(1996)
## 106 http://us.imdb.com/M/title-exact?Diabolique%20(1996)
## 107 http://us.imdb.com/M/title-exact?Moll%20Flanders%20(1996)
## 108 http://us.imdb.com/M/title-exact?Kids%20in%20the%20Hall:%20Brain%20Candy%20(1996)
## 109 http://us.imdb.com/M/title-exact?Mystery%20Science%20Theater%203000:%20The%20Movie%20(1996)
## 110 http://us.imdb.com/M/title-exact?Operation%20Dumbo%20Drop%20(1995)
## 111 http://us.imdb.com/M/title-exact?Truth%20About%20Cats%20&%20Dogs,%20The%20(1996)
## 112 http://us.imdb.com/M/title-exact?Flipper%20(1996)
## 113 http://us.imdb.com/M/title-exact?Hussard%20sur%20le%20toit,%20Le%20(1995)
## 114 http://us.imdb.com/Title?Wallace+%26+Gromit%3A+The+Best+of+Aardman+Animation+(1996)
## 115 http://us.imdb.com/Title?Haunted+World+of+Edward+D.+Wood+Jr.,+The+(1995)
## 116 http://us.imdb.com/M/title-exact?Cold%20Comfort%20Farm%20(1995)%20(TV)
## 117 http://us.imdb.com/M/title-exact?Rock,%20The%20(1996)
## 118 http://us.imdb.com/M/title-exact?Twister%20(1996)
## 119 http://us.imdb.com/M/title-exact?Maya%20Lin:%20A%20Strong%20Clear%20Vision%20(1994)
## 120 http://us.imdb.com/M/title-exact?Striptease%20(1996)
## 121 http://us.imdb.com/M/title-exact?Independence%20Day%20(1996)
## 122 http://us.imdb.com/M/title-exact?Cable%20Guy,%20The%20(1996)
## 123 http://us.imdb.com/M/title-exact?Frighteners,%20The%20(1996)
## 124 http://us.imdb.com/M/title-exact?Lone%20Star%20(1996)
## 125 http://us.imdb.com/M/title-exact?Phenomenon%20(1996)
## 126 http://us.imdb.com/M/title-exact?Spitfire%20Grill,%20The%20(1996)
## 127 http://us.imdb.com/M/title-exact?Godfather,%20The%20(1972)
## 128 http://us.imdb.com/M/title-exact?Police%20Story%20III:%20Supercop%20(1992)
## 129 http://us.imdb.com/M/title-exact?Bound%20(1996)
## 130 http://us.imdb.com/M/title-exact?Kansas%20City%20(1996)
## 131 http://us.imdb.com/M/title-exact?Breakfast%20at%20Tiffany's%20(1961)
## 132 http://us.imdb.com/M/title-exact?Wizard%20of%20Oz,%20The%20(1939)
## 133 http://us.imdb.com/M/title-exact?Gone%20with%20the%20Wind%20(1939)
## 134 http://us.imdb.com/M/title-exact?Citizen%20Kane%20(1941)
## 135 http://us.imdb.com/M/title-exact?2001:%20A%20Space%20Odyssey%20(1968)
## 136 http://us.imdb.com/M/title-exact?Mr.%20Smith%20Goes%20to%20Washington%20(1939)
## 137 http://us.imdb.com/M/title-exact?Big%20Night%20(1996)
## 138 http://us.imdb.com/M/title-exact?D3:%20The%20Mighty%20Ducks%20(1996)
## 139 http://us.imdb.com/M/title-exact?Love%20Bug,%20The%20(1969)
## 140 http://us.imdb.com/M/title-exact?Homeward%20Bound:%20The%20Incredible%20Journey%20(1993)
## 141 http://us.imdb.com/M/title-exact?20,000%20Leagues%20Under%20the%20Sea%20(1954)
## 142 http://us.imdb.com/M/title-exact?Bedknobs%20and%20Broomsticks%20(1971)
## 143 http://us.imdb.com/M/title-exact?Sound%20of%20Music,%20The%20(1965)
## 144 http://us.imdb.com/M/title-exact?Die%20Hard%20(1988)
## 145 http://us.imdb.com/M/title-exact?Lawnmower%20Man,%20The%20(1992)
## 146 http://us.imdb.com/M/title-exact?Unhook%20the%20Stars%20(1996)
## 147 http://us.imdb.com/M/title-exact?Long%20Kiss%20Goodnight,%20The%20(1996)
## 148 http://us.imdb.com/M/title-exact?Ghost%20and%20the%20Darkness,%20The%20(1996)
## 149 http://us.imdb.com/M/title-exact?Jude%20(1996)
## 150 http://us.imdb.com/M/title-exact?Swingers%20(1996)
## 151 http://us.imdb.com/M/title-exact?Willy%20Wonka%20and%20the%20Chocolate%20Factory%20(1971)
## 152 http://us.imdb.com/M/title-exact?Sleeper%20(1973)
## 153 http://us.imdb.com/M/title-exact?Fish%20Called%20Wanda,%20A%20(1988)
## 154 http://us.imdb.com/M/title-exact?Life%20of%20Brian%20(1979)
## 155 http://us.imdb.com/M/title-exact?Dirty%20Dancing%20(1987)
## 156 http://us.imdb.com/M/title-exact?Reservoir%20Dogs%20(1992)
## 157 http://us.imdb.com/M/title-exact?Platoon%20(1986)
## 158 http://us.imdb.com/M/title-exact?Weekend%20at%20Bernie's%20(1989)
## 159 http://us.imdb.com/M/title-exact?Basic%20Instinct%20(1992)
## 160 http://us.imdb.com/M/title-exact?Glengarry%20Glen%20Ross%20(1992)
## 161 http://us.imdb.com/M/title-exact?Top%20Gun%20(1986)
## 162 http://us.imdb.com/M/title-exact?On%20Golden%20Pond%20(1981)
## 163 http://us.imdb.com/M/title-exact?Return%20of%20the%20Pink%20Panther,%20The%20(1974)
## 164 http://us.imdb.com/M/title-exact?Abyss,%20The%20(1989)
## 165 http://us.imdb.com/M/title-exact?Jean%20de%20Florette%20(1986)
## 166 http://us.imdb.com/M/title-exact?Manon%20des%20sources%20(1986)
## 167 http://us.imdb.com/M/title-exact?Private%20Benjamin%20(1980)
## 168 http://us.imdb.com/M/title-exact?Monty%20Python%20and%20the%20Holy%20Grail%20(1974)
## 169 http://us.imdb.com/M/title-exact?Wrong%20Trousers,%20The%20(1993)
## 170 http://us.imdb.com/M/title-exact?Nuovo%20cinema%20Paradiso%20(1988)
## 171 http://us.imdb.com/M/title-exact?Delicatessen%20(1991)
## 172 http://us.imdb.com/M/title-exact?Empire%20Strikes%20Back,%20The%20(1980)
## 173 http://us.imdb.com/M/title-exact?Princess%20Bride,%20The%20(1987)
## 174 http://us.imdb.com/M/title-exact?Raiders%20of%20the%20Lost%20Ark%20(1981)
## 175 http://us.imdb.com/M/title-exact?Brazil%20(1985)
## 176 http://us.imdb.com/M/title-exact?Aliens%20(1986)
## 177 http://us.imdb.com/M/title-exact?Buono,%20il%20brutto,%20il%20cattivo,%20Il%20(1966)
## 178 http://us.imdb.com/M/title-exact?12%20Angry%20Men%20(1957)
## 179 http://us.imdb.com/M/title-exact?Clockwork%20Orange,%20A%20(1971)
## 180 http://us.imdb.com/M/title-exact?Apocalypse%20Now%20(1979)
## 181 http://us.imdb.com/M/title-exact?Return%20of%20the%20Jedi%20(1983)
## 182 http://us.imdb.com/M/title-exact?GoodFellas%20(1990)
## 183 http://us.imdb.com/M/title-exact?Alien%20(1979)
## 184 http://us.imdb.com/M/title-exact?Army%20of%20Darkness%20(1993)
## 185 http://us.imdb.com/M/title-exact?Psycho%20(1960)
## 186 http://us.imdb.com/M/title-exact?Blues%20Brothers,%20The%20(1980)
## 187 http://us.imdb.com/M/title-exact?Godfather:%20Part%20II,%20The%20(1974)
## 188 http://us.imdb.com/M/title-exact?Full%20Metal%20Jacket%20(1987)
## 189 http://us.imdb.com/M/title-exact?Grand%20Day%20Out,%20A%20(1992)
## 190 http://us.imdb.com/M/title-exact?Henry%20V%20(1989)
## 191 http://us.imdb.com/M/title-exact?Amadeus%20(1984)
## 192 http://us.imdb.com/M/title-exact?Raging%20Bull%20(1980)
## 193 http://us.imdb.com/M/title-exact?Right%20Stuff,%20The%20(1983)
## 194 http://us.imdb.com/M/title-exact?Sting,%20The%20(1973)
## 195 http://us.imdb.com/M/title-exact?Terminator,%20The%20(1984)
## 196 http://us.imdb.com/M/title-exact?Dead%20Poets%20Society%20(1989)
## 197 http://us.imdb.com/M/title-exact?Graduate,%20The%20(1967)
## 198 http://us.imdb.com/M/title-exact?Nikita%20(1990)
## 199 http://us.imdb.com/M/title-exact?Bridge%20on%20the%20River%20Kwai,%20The%20(1957)
## 200 http://us.imdb.com/M/title-exact?Shining,%20The%20(1980)
## 201 http://us.imdb.com/M/title-exact?Evil%20Dead%20II%20(1987)
## 202 http://us.imdb.com/M/title-exact?Groundhog%20Day%20(1993)
## 203 http://us.imdb.com/M/title-exact?Unforgiven%20(1992)
## 204 http://us.imdb.com/M/title-exact?Back%20to%20the%20Future%20(1985)
## 205 http://us.imdb.com/M/title-exact?Patton%20(1970)
## 206 http://us.imdb.com/M/title-exact?Akira%20(1988)
## 207 http://us.imdb.com/M/title-exact?Cyrano%20de%20Bergerac%20(1990)
## 208 http://us.imdb.com/M/title-exact?Young%20Frankenstein%20(1974)
## 209 http://us.imdb.com/M/title-exact?This%20Is%20Spinal%20Tap%20(1984)
## 210 http://us.imdb.com/M/title-exact?Indiana%20Jones%20and%20the%20Last%20Crusade%20(1989)
## 211 http://us.imdb.com/M/title-exact?MASH%20(1970)
## 212 http://us.imdb.com/M/title-exact?Unbearable%20Lightness%20of%20Being,%20The%20(1988)
## 213 http://us.imdb.com/M/title-exact?Room%20with%20a%20View,%20A%20(1986)
## 214 http://us.imdb.com/M/title-exact?Pink%20Floyd%20-%20The%20Wall%20(1982)
## 215 http://us.imdb.com/M/title-exact?Field%20of%20Dreams%20(1989)
## 216 http://us.imdb.com/M/title-exact?When%20Harry%20Met%20Sally...%20(1989)
## 217 http://us.imdb.com/M/title-exact?Bram%20Stoker's%20Dracula%20(1992)
## 218 http://us.imdb.com/M/title-exact?Cape%20Fear%20(1991)
## 219 http://us.imdb.com/M/title-exact?Nightmare%20on%20Elm%20Street,%20A%20(1984)
## 220 http://us.imdb.com/M/title-exact?Mirror%20Has%20Two%20Faces,%20The%20(1996)
## 221 http://us.imdb.com/M/title-exact?Breaking%20the%20Waves%20(1996)
## 222 http://us.imdb.com/M/title-exact?Star%20Trek:%20First%20Contact%20(1996)
## 223 http://us.imdb.com/M/title-exact?Sling%20Blade%20(1996)
## 224 http://us.imdb.com/M/title-exact?Ridicule%20(1996)
## 225 http://us.imdb.com/M/title-exact?101%20Dalmatians%20(1996)
## 226 http://us.imdb.com/M/title-exact?Die%20Hard%202%20(1990)
## 227 http://us.imdb.com/M/title-exact?Star%20Trek%20VI:%20The%20Undiscovered%20Country%20(1991)
## 228 http://us.imdb.com/M/title-exact?Star%20Trek:%20The%20Wrath%20of%20Khan%20(1982)
## 229 http://us.imdb.com/M/title-exact?Star%20Trek%20III:%20The%20Search%20for%20Spock%20(1984)
## 230 http://us.imdb.com/M/title-exact?Star%20Trek%20IV:%20The%20Voyage%20Home%20(1986)
## 231 http://us.imdb.com/M/title-exact?Batman%20Returns%20(1992)
## 232 http://us.imdb.com/M/title-exact?Young%20Guns%20(1988)
## 233 http://us.imdb.com/M/title-exact?Under%20Siege%20(1992)
## 234 http://us.imdb.com/M/title-exact?Jaws%20(1975)
## 235 http://us.imdb.com/M/title-exact?Mars%20Attacks!%20(1996)
## 236 http://us.imdb.com/M/title-exact?Citizen%20Ruth%20(1996)
## 237 http://us.imdb.com/M/title-exact?Jerry%20Maguire%20(1996)
## 238 http://us.imdb.com/M/title-exact?Raising%20Arizona%20(1987)
## 239 http://us.imdb.com/M/title-exact?Sneakers%20(1992)
## 240 http://us.imdb.com/M/title-exact?Beavis%20and%20Butt-head%20Do%20America%20(1996)
## 241 http://us.imdb.com/M/title-exact?Last%20of%20the%20Mohicans,%20The%20(1992)
## 242 http://us.imdb.com/M/title-exact?Kolya%20(1996)
## 243 http://us.imdb.com/M/title-exact?Jungle2Jungle%20(1997)
## 244 http://us.imdb.com/M/title-exact?Smilla%27s%20Sense%20of%20Snow%20(1997)
## 245 http://us.imdb.com/M/title-exact?Devil%27s%20Own%2C%20The%20(1997)
## 246 http://us.imdb.com/M/title-exact?Chasing+Amy+(1997)
## 247 http://us.imdb.com/M/title-exact?Turbo%3A%20A%20Power%20Rangers%20Movie%20%281997%29
## 248 http://us.imdb.com/M/title-exact?Grosse%20Pointe%20Blank%20%281997%29
## 249 http://us.imdb.com/M/title-exact?Austin%20Powers%3A%20International%20Man%20of%20Mystery%20%281997%29
## 250 http://us.imdb.com/M/title-exact?Fifth%20Element%2C%20The%20%281997%29
## 251 http://us.imdb.com/M/title-exact?Shall%20we%20DANSU%3F%20%281996%29
## 252 http://us.imdb.com/M/title-exact?Lost%20World%3A%20Jurassic%20Park%2C%20The%20%281997%29
## 253 http://us.imdb.com/M/title-exact?Pillow%20Book%2C%20The%20%281995%29
## 254 http://us.imdb.com/M/title-exact?Batman+%26+Robin+(1997)
## 255 http://us.imdb.com/M/title-exact?My+Best+Friend%27s+Wedding+(1997)
## 256 http://us.imdb.com/M/title-exact?Chacun+cherche+son+chat+(1996)
## 257 http://us.imdb.com/M/title-exact?Men+in+Black+(1997)
## 258 http://us.imdb.com/Title?Contact+(1997/I)
## 259 http://us.imdb.com/M/title-exact?George+of+the+Jungle+(1997)
## 260 http://us.imdb.com/M/title-exact?Event+Horizon+(1997)
## 261 http://us.imdb.com/M/title-exact?Air+Bud+(1997)
## 262 http://us.imdb.com/M/title-exact?In+the+Company+of+Men+(1997)
## 263 http://us.imdb.com/M/title-exact?Steel+(1997)
## 264 http://us.imdb.com/M/title-exact?Mimic+(1997)
## 265 http://us.imdb.com/M/title-exact?Hunt+for+Red+October%2C+The+(1990)
## 266 http://us.imdb.com/M/title-exact?Kull+the+Conqueror+(1997)
## 267
## 268 http://us.imdb.com/M/title-exact?Chasing+Amy+(1997)
## 269 http://us.imdb.com/M/title-exact?Full+Monty%2C+The+(1997)
## 270 http://us.imdb.com/M/title-exact?Gattaca+(1997)
## 271 http://us.imdb.com/M/title-exact?Starship+Troopers+(1997)
## 272 http://us.imdb.com/M/title-exact?imdb-title-119217
## 273 http://us.imdb.com/M/title-exact?Heat%20(1995)
## 274 http://us.imdb.com/M/title-exact?Sabrina%20(1995)
## 275 http://us.imdb.com/M/title-exact?Sense%20and%20Sensibility%20(1995)
## 276 http://us.imdb.com/M/title-exact?Leaving%20Las%20Vegas%20(1995)
## 277 http://us.imdb.com/M/title-exact?Restoration%20(1995)
## 278 http://us.imdb.com/M/title-exact?Bed%20of%20Roses%20(1996)
## 279 http://us.imdb.com/M/title-exact?Once%20Upon%20a%20Time... When%20We%20Were%20Colored%20(1995)
## 280 http://us.imdb.com/M/title-exact?Up%20Close%20and%20Personal%20(1996)
## 281 http://us.imdb.com/M/title-exact?River%20Wild,%20The%20(1994)
## 282 http://us.imdb.com/M/title-exact?Time%20to%20Kill,%20A%20(1996)
## 283 http://us.imdb.com/M/title-exact?Emma%20(1996)
## 284 http://us.imdb.com/M/title-exact?Tin%20Cup%20(1996)
## 285 http://us.imdb.com/M/title-exact?Secrets%20&%20Lies%20(1996)
## 286 http://us.imdb.com/M/title-exact?English%20Patient,%20The%20(1996)
## 287 http://us.imdb.com/M/title-exact?Marvin's%20Room%20(1996)
## 288 http://us.imdb.com/M/title-exact?Scream%20(1996)
## 289 http://us.imdb.com/M/title-exact?Evita%20(1996)
## 290 http://us.imdb.com/M/title-exact?Fierce%20Creatures%20(1997)
## 291 http://us.imdb.com/M/title-exact?Absolute%20Power%20(1997)
## 292 http://us.imdb.com/M/title-exact?Rosewood%20(1997)
## 293 http://us.imdb.com/M/title-exact?Donnie%20Brasco%20(1997)
## 294 http://us.imdb.com/Title?Liar+Liar+(1997)
## 295 http://us.imdb.com/M/title-exact?Breakdown%20%281997%29
## 296 http://us.imdb.com/M/title-exact?Promesse%2C%20La%20%281996%29
## 297 http://us.imdb.com/M/title-exact?Ulee%27s+Gold+(1997)
## 298 http://us.imdb.com/M/title-exact?Face/Off+(1997)
## 299 http://us.imdb.com/M/title-exact?Hoodlum+(1997)
## 300 http://us.imdb.com/M/title-exact?Air+Force+One+(1997)
## 301 http://us.imdb.com/Title?In+%26+Out+(1997)
## 302 http://us.imdb.com/M/title-exact?L%2EA%2E+Confidential+(1997)
## 303 http://us.imdb.com/M/title-exact?Ulee%27s+Gold+(1997)
## 304 http://us.imdb.com/M/title-exact?Fly%20Away%20Home%20(1996)
## 305 http://us.imdb.com/M/title-exact?Ice+Storm%2C+The+(1997)
## 306 http://us.imdb.com/M/title-exact?Her+Majesty%2C+Mrs%2E+Brown+(1997)
## 307 http://us.imdb.com/M/title-exact?Devil's+Advocate,+The+(1997)
## 308 http://us.imdb.com/M/title-exact?Fairytale:+A+True+Story+(1997)
## 309 http://us.imdb.com/M/title-exact?Liar+(1997)
## 310 http://us.imdb.com/M/title-exact?Rainmaker,+The+(1997)
## 311 http://us.imdb.com/M/title-exact?Wings+of+the+Dove%2C+The+(1997)
## 312 http://us.imdb.com/M/title-exact?Midnight+in+the+Garden+of+Good+and+Evil+(1997)
## 313 http://us.imdb.com/M/title-exact?imdb-title-120338
## 314 http://us.imdb.com/M/title-exact?imdb-title-118539
## 315 http://us.imdb.com/Title?Apt+Pupil+(1998)
## 316 http://us.imdb.com/Title?As+Good+As+It+Gets+(1997)
## 317 http://us.imdb.com/M/title-exact?In%20the%20Name%20of%20the%20Father%20(1993)
## 318 http://us.imdb.com/M/title-exact?Schindler's%20List%20(1993)
## 319 http://us.imdb.com/M/title-exact?Everyone%20Says%20I%20Love%20You%20(1996)
## 320 http://us.imdb.com/M/title-exact?Paradise%20Lost%3a%20The%20Child%20Murders%20at%20Robin%20Hood%20Hills%20(1996)
## 321 http://us.imdb.com/M/title-exact?Mother%20(1996/I)
## 322 http://us.imdb.com/M/title-exact?Murder%20at%201600%20(1997)
## 323 http://us.imdb.com/M/title-exact?Dante's%20Peak%20(1997)
## 324 http://us.imdb.com/Title?Lost+Highway+(1997)
## 325 http://us.imdb.com/M/title-exact?Crash%20(1996)
## 326 http://us.imdb.com/M/title-exact?G%2EI%2E+Jane+(1997)
## 327 http://us.imdb.com/M/title-exact?Cop+Land+(1997)
## 328 http://us.imdb.com/M/title-exact?Conspiracy+Theory+(1997)
## 329 http://us.imdb.com/Title?Desperate+Measures+(1998)
## 330 http://us.imdb.com/M/title-exact?187+(1997)
## 331 http://us.imdb.com/M/title-exact?Edge%2C+The+(1997/I)
## 332 http://us.imdb.com/M/title-exact?Kiss+the+Girls+(1997)
## 333 http://us.imdb.com/M/title-exact?Game%2C+The+(1997)
## 334 http://us.imdb.com/Title?U+Turn+(1997)
## 335 http://us.imdb.com/M/title-exact?How+to+Be+a+Player+(1997)
## 336 http://us.imdb.com/M/title-exact?Playing+God+(1997)
## 337 http://us.imdb.com/M/title-exact?House+of+Yes,+The+(1997)
## 338 http://us.imdb.com/M/title-exact?Bean+(1997)
## 339 http://us.imdb.com/M/title-exact?Mad+City+(1997)
## 340 http://us.imdb.com/M/title-exact?Boogie+Nights+(1997)
## 341 http://us.imdb.com/M/title-exact?Critical+Care+(1997)
## 342 http://us.imdb.com/M/title-exact?Man+Who+Knew+Too+Little%2C+The+(1997)
## 343 http://us.imdb.com/M/title-exact?Alien%3A+Resurrection+(1997)
## 344 http://us.imdb.com/M/title-exact?imdb-title-118632
## 345 http://us.imdb.com/M/title-exact?imdb-title-118954
## 346 http://us.imdb.com/M/title-exact?imdb-title-119396
## 347 http://us.imdb.com/M/title-exact?imdb-title-120885
## 348 http://us.imdb.com/Title?Desperate+Measures+(1998)
## 349 http://us.imdb.com/M/title-exact?imdb-title-120696
## 350 http://us.imdb.com/Title?Fallen+(1998)
## 351 http://us.imdb.com/M/title-exact?imdb-title-119959
## 352 http://us.imdb.com/M/title-exact?imdb-title-120185
## 353 http://us.imdb.com/M/title-exact?imdb-title-118956
## 354 http://us.imdb.com/M/title-exact?Wedding+Singer%2C+The+(1998)
## 355 http://us.imdb.com/M/title-exact?Sphere+(1998)
## 356 http://us.imdb.com/M/title-exact?Client,%20The%20(1994)
## 357 http://us.imdb.com/M/title-exact?One%20Flew%20Over%20the%20Cuckoo's%20Nest%20(1975)
## 358 http://us.imdb.com/M/title-exact?Spawn+(1997/I)
## 359 http://us.imdb.com/M/title-exact?Assignment%2C+The+(1997)
## 360 http://us.imdb.com/M/title-exact?Wonderland+(1997)
## 361 http://us.imdb.com/M/title-exact?Incognito+(1997)
## 362 http://us.imdb.com/M/title-exact?Blues+Brothers+2000+(1998)
## 363 http://us.imdb.com/M/title-exact?Sudden%20Death%20(1995)
## 364 http://us.imdb.com/M/title-exact?Ace%20Ventura:%20When%20Nature%20Calls%20(1995)
## 365 http://us.imdb.com/M/title-exact?Powder%20(1995)
## 366 http://us.imdb.com/M/title-exact?Dangerous%20Minds%20(1995)
## 367 http://us.imdb.com/M/title-exact?Clueless%20(1995)
## 368 http://us.imdb.com/M/title-exact?Bio-Dome%20(1996)
## 369 http://us.imdb.com/M/title-exact?Black%20Sheep%20(1996)
## 370 http://us.imdb.com/M/title-exact?Mary%20Reilly%20(1996)
## 371 http://us.imdb.com/M/title-exact?Bridges%20of%20Madison%20County,%20The%20(1995)
## 372 http://us.imdb.com/M/title-exact?Jeffrey%20(1995)
## 373 http://us.imdb.com/M/title-exact?Judge%20Dredd%20(1995)
## 374 http://us.imdb.com/M/title-exact?Mighty%20Morphin%20Power%20Rangers:%20The%20Movie%20(1995)
## 375 http://us.imdb.com/M/title-exact?Showgirls%20(1995)
## 376 http://us.imdb.com/M/title-exact?Houseguest%20(1994)
## 377 http://us.imdb.com/M/title-exact?Heavyweights%20(1994)
## 378 http://us.imdb.com/M/title-exact?Miracle%20on%2034th%20Street%20(1994)
## 379 http://us.imdb.com/M/title-exact?Tales%20From%20the%20Crypt%20Presents:%20Demon%20Knight%20(1995)
## 380 http://us.imdb.com/M/title-exact?Star%20Trek:%20Generations%20(1994)
## 381 http://us.imdb.com/M/title-exact?Muriel's%20Wedding%20(1994)
## 382 http://us.imdb.com/M/title-exact?Adventures%20of%20Priscilla,%20Queen%20of%20the%20Desert,%20The%20(1994)
## 383 http://us.imdb.com/M/title-exact?Flintstones,%20The%20(1994)
## 384 http://us.imdb.com/M/title-exact?Naked%20Gun%2033%201/3:%20The%20Final%20Insult%20(1994)
## 385 http://us.imdb.com/M/title-exact?True%20Lies%20(1994)
## 386 http://us.imdb.com/M/title-exact?Addams%20Family%20Values%20(1993)
## 387 http://us.imdb.com/M/title-exact?Age%20of%20Innocence,%20The%20(1993)
## 388 http://us.imdb.com/M/title-exact?Beverly%20Hills%20Cop%20III%20(1994)
## 389 http://us.imdb.com/Title?Black+Beauty+(1994/I)
## 390 http://us.imdb.com/M/title-exact?Fear%20of%20a%20Black%20Hat%20(1993)
## 391 http://us.imdb.com/M/title-exact?Last%20Action%20Hero%20(1993)
## 392 http://us.imdb.com/M/title-exact?Man%20Without%20a%20Face,%20The%20(1993)
## 393 http://us.imdb.com/M/title-exact?Mrs.%20Doubtfire%20(1993)
## 394 http://us.imdb.com/M/title-exact?Radioland%20Murders%20(1994)
## 395 http://us.imdb.com/M/title-exact?Robin%20Hood:%20Men%20in%20Tights%20(1993)
## 396 http://us.imdb.com/M/title-exact?Serial%20Mom%20(1994)
## 397 http://us.imdb.com/M/title-exact?Striking%20Distance%20(1993)
## 398 http://us.imdb.com/M/title-exact?Super%20Mario%20Bros.%20(1993)
## 399 http://us.imdb.com/M/title-exact?Three%20Musketeers,%20The%20(1993)
## 400 http://us.imdb.com/M/title-exact?Little%20Rascals,%20The%20(1994)
## 401 http://us.imdb.com/M/title-exact?Brady%20Bunch%20Movie,%20The%20(1995)
## 402 http://us.imdb.com/M/title-exact?Ghost%20(1990)
## 403 http://us.imdb.com/M/title-exact?Batman%20(1989)
## 404 http://us.imdb.com/M/title-exact?Pinocchio%20(1940)
## 405 http://us.imdb.com/M/title-exact?Mission:%20Impossible%20(1996)
## 406 http://us.imdb.com/M/title-exact?Thinner%20(1996)
## 407 http://us.imdb.com/M/title-exact?Spy%20Hard%20(1996)
## 408 http://us.imdb.com/M/title-exact?Close%20Shave,%20A%20(1995)
## 409 http://us.imdb.com/M/title-exact?Jack%20(1996)
## 410 http://us.imdb.com/M/title-exact?Kingpin%20(1996)
## 411 http://us.imdb.com/M/title-exact?Nutty%20Professor,%20The%20(1996)
## 412 http://us.imdb.com/M/title-exact?Very%20Brady%20Sequel,%20A%20(1996)
## 413 http://us.imdb.com/M/title-exact?Tales%20from%20the%20Crypt%20Presents:%20Bordello%20of%20Blood%20(1996)
## 414 http://us.imdb.com/M/title-exact?My%20Favorite%20Year%20(1982)
## 415 http://us.imdb.com/M/title-exact?Apple%20Dumpling%20Gang,%20The%20(1975)
## 416 http://us.imdb.com/M/title-exact?Old%20Yeller%20(1957)
## 417 http://us.imdb.com/M/title-exact?Parent%20Trap,%20The%20(1961)
## 418 http://us.imdb.com/M/title-exact?Cinderella%20(1950)
## 419 http://us.imdb.com/M/title-exact?Mary%20Poppins%20(1964)
## 420 http://us.imdb.com/M/title-exact?Alice%20in%20Wonderland%20(1951)
## 421 http://us.imdb.com/Title?Romeo+%2B+Juliet+(1996)
## 422 http://us.imdb.com/M/title-exact?Aladdin%20and%20the%20King%20of%20Thieves%20(1996)%20(V)
## 423 http://us.imdb.com/M/title-exact?E%2ET%2E%20the%20Extra-Terrestrial%20%281982%29
## 424 http://us.imdb.com/M/title-exact?Children%20of%20the%20Corn%3A%20The%20Gathering%20%281996%29
## 425 http://us.imdb.com/M/title-exact?Bob%20Roberts%20(1992)
## 426 http://us.imdb.com/M/title-exact?Transformers:%20The%20Movie,%20The%20(1986)
## 427 http://us.imdb.com/M/title-exact?To%20Kill%20a%20Mockingbird%20(1962)
## 428 http://us.imdb.com/M/title-exact?Harold%20and%20Maude%20(1971)
## 429 http://us.imdb.com/M/title-exact?Day%20the%20Earth%20Stood%20Still,%20The%20(1951)
## 430 http://us.imdb.com/M/title-exact?Duck%20Soup%20(1933)
## 431 http://us.imdb.com/M/title-exact?Highlander%20(1986)
## 432 http://us.imdb.com/M/title-exact?Fantasia%20(1940)
## 433 http://us.imdb.com/M/title-exact?Heathers%20(1989)
## 434 http://us.imdb.com/M/title-exact?Forbidden%20Planet%20(1956)
## 435 http://us.imdb.com/M/title-exact?Butch%20Cassidy%20and%20the%20Sundance%20Kid%20(1969)
## 436 http://us.imdb.com/M/title-exact?American%20Werewolf%20in%20London,%20An%20(1981)
## 437 http://us.imdb.com/M/title-exact?Amityville%201992:%20It's%20About%20Time%20(1992)
## 438 http://us.imdb.com/M/title-exact?Amityville%203-D%20(1983)
## 439 http://us.imdb.com/M/title-exact?Amityville:%20A%20New%20Generation%20(1993)
## 440 http://us.imdb.com/M/title-exact?Amityville%20II:%20The%20Possession%20(1982)
## 441 http://us.imdb.com/M/title-exact?Amityville%20Horror,%20The%20(1979)
## 442 http://us.imdb.com/M/title-exact?Amityville%20Curse,%20The%20(1990)
## 443 http://us.imdb.com/M/title-exact?Birds,%20The%20(1963)
## 444 http://us.imdb.com/M/title-exact?Blob,%20The%20(1958)
## 445 http://us.imdb.com/M/title-exact?Body%20Snatcher,%20The%20(1945)
## 446 http://us.imdb.com/M/title-exact?Burnt%20Offerings%20(1976)
## 447 http://us.imdb.com/M/title-exact?Carrie%20(1976)
## 448 http://us.imdb.com/M/title-exact?Omen,%20The%20(1976)
## 449 http://us.imdb.com/M/title-exact?Star%20Trek:%20The%20Motion%20Picture%20(1979)
## 450 http://us.imdb.com/M/title-exact?Star%20Trek%20V:%20The%20Final%20Frontier%20(1989)
## 451 http://us.imdb.com/M/title-exact?Grease%20(1978)
## 452 http://us.imdb.com/M/title-exact?Jaws%202%20(1978)
## 453 http://us.imdb.com/M/title-exact?Jaws%203-D%20(1983)
## 454 http://us.imdb.com/M/title-exact?Bastard%20Out%20of%20Carolina%20(1996)
## 455 http://us.imdb.com/M/title-exact?Police%20Story%204:%20First%20Strike%20(1996)
## 456 http://us.imdb.com/M/title-exact?Beverly%20Hills%20Ninja%20(1997)
## 457 http://us.imdb.com/M/title-exact?Free+Willy+3%3A+The+Rescue+(1997)
## 458 http://us.imdb.com/M/title-exact?Nixon%20(1995)
## 459 http://us.imdb.com/M/title-exact?Cry,%20the%20Beloved%20Country%20(1995)
## 460 http://us.imdb.com/M/title-exact?Crossing%20Guard,%20The%20(1995)
## 461 http://us.imdb.com/M/title-exact?Smoke%20(1995)
## 462 http://us.imdb.com/M/title-exact?Como%20agua%20para%20chocolate%20(1992)
## 463 http://us.imdb.com/M/title-exact?Secret%20of%20Roan%20Inish,%20The%20(1994)
## 464 http://us.imdb.com/M/title-exact?Vanya%20on%2042nd%20Street%20(1994)
## 465 http://us.imdb.com/M/title-exact?Jungle%20Book,%20The%20(1994)
## 466 http://us.imdb.com/M/title-exact?Red%20Rock%20West%20(1992)
## 467 http://us.imdb.com/M/title-exact?Bronx%20Tale,%20A%20(1993)
## 468 http://us.imdb.com/M/title-exact?Rudy%20(1993)
## 469 http://us.imdb.com/M/title-exact?Short%20Cuts%20(1993)
## 470 http://us.imdb.com/M/title-exact?Tombstone%20(1993)
## 471 http://us.imdb.com/M/title-exact?Courage%20Under%20Fire%20(1996)
## 472 http://us.imdb.com/M/title-exact?Dragonheart%20(1996)
## 473 http://us.imdb.com/M/title-exact?James%20and%20the%20Giant%20Peach%20(1996)
## 474 http://us.imdb.com/M/title-exact?Dr.%20Strangelove%20or:%20How%20I%20Learned%20to%20Stop%20Worrying%20and%20Love%20the%20Bomb%20(1963)
## 475 http://us.imdb.com/Title?Trainspotting+(1996)
## 476 http://us.imdb.com/M/title-exact?First%20Wives%20Club,%20The%20(1996)
## 477 http://us.imdb.com/M/title-exact?Matilda%20(1996)
## 478 http://us.imdb.com/M/title-exact?Philadelphia%20Story,%20The%20(1940)
## 479 http://us.imdb.com/M/title-exact?Vertigo%20(1958)
## 480 http://us.imdb.com/M/title-exact?North%20by%20Northwest%20(1959)
## 481 http://us.imdb.com/M/title-exact?Apartment,%20The%20(1960)
## 482 http://us.imdb.com/M/title-exact?Some%20Like%20It%20Hot%20(1959)
## 483 http://us.imdb.com/M/title-exact?Casablanca%20(1942)
## 484 http://us.imdb.com/M/title-exact?Maltese%20Falcon,%20The%20(1941)
## 485 http://us.imdb.com/M/title-exact?My%20Fair%20Lady%20(1964)
## 486 http://us.imdb.com/M/title-exact?Sabrina%20(1954)
## 487 http://us.imdb.com/M/title-exact?Roman%20Holiday%20(1953)
## 488 http://us.imdb.com/M/title-exact?Sunset%20Boulevard%20(1950)
## 489 http://us.imdb.com/M/title-exact?Notorious%20(1946)
## 490 http://us.imdb.com/M/title-exact?To%20Catch%20a%20Thief%20(1955)
## 491 http://us.imdb.com/M/title-exact?Adventures%20of%20Robin%20Hood,%20The%20(1938)
## 492 http://us.imdb.com/M/title-exact?East%20of%20Eden%20(1955)
## 493 http://us.imdb.com/M/title-exact?Thin%20Man,%20The%20(1934)
## 494 http://us.imdb.com/M/title-exact?His%20Girl%20Friday%20(1940)
## 495 http://us.imdb.com/M/title-exact?Around%20the%20World%20in%2080%20Days%20(1956)
## 496 http://us.imdb.com/M/title-exact?It's%20a%20Wonderful%20Life%20(1946)
## 497 http://us.imdb.com/M/title-exact?Bringing%20Up%20Baby%20(1938)
## 498 http://us.imdb.com/M/title-exact?African%20Queen,%20The%20(1951)
## 499 http://us.imdb.com/M/title-exact?Cat%20on%20a%20Hot%20Tin%20Roof%20(1958)
## 500 http://us.imdb.com/M/title-exact?Fly%20Away%20Home%20(1996)
## 501 http://us.imdb.com/M/title-exact?Dumbo%20(1941)
## 502 http://us.imdb.com/M/title-exact?Bananas%20(1971)
## 503 http://us.imdb.com/M/title-exact?Candidate,%20The%20(1972)
## 504 http://us.imdb.com/M/title-exact?Bonnie%20and%20Clyde%20(1967)
## 505 http://us.imdb.com/M/title-exact?Dial%20M%20for%20Murder%20(1954)
## 506 http://us.imdb.com/M/title-exact?Rebel%20Without%20a%20Cause%20(1955)
## 507 http://us.imdb.com/M/title-exact?Streetcar%20Named%20Desire,%20A%20(1951)
## 508 http://us.imdb.com/M/title-exact?People%20vs.%20Larry%20Flynt,%20The%20(1996)
## 509 http://us.imdb.com/M/title-exact?My%20Left%20Foot%20(1989)
## 510 http://us.imdb.com/M/title-exact?Shichinin%20no%20samurai%20(1954)
## 511 http://us.imdb.com/M/title-exact?Lawrence%20of%20Arabia%20(1962)
## 512 http://us.imdb.com/Title?Himmel+%FCber+Berlin,+Der+(1987)
## 513 http://us.imdb.com/M/title-exact?Third%20Man,%20The%20(1949)
## 514 http://us.imdb.com/M/title-exact?Annie%20Hall%20(1977)
## 515 http://us.imdb.com/M/title-exact?Boot,%20Das%20(1981)
## 516 http://us.imdb.com/M/title-exact?Local%20Hero%20(1983)
## 517 http://us.imdb.com/M/title-exact?Manhattan%20(1979)
## 518 http://us.imdb.com/M/title-exact?Miller's%20Crossing%20(1990)
## 519 http://us.imdb.com/M/title-exact?Treasure%20of%20the%20Sierra%20Madre,%20The%20(1948)
## 520 http://us.imdb.com/M/title-exact?Great%20Escape,%20The%20(1963)
## 521 http://us.imdb.com/M/title-exact?Deer%20Hunter,%20The%20(1978)
## 522 http://us.imdb.com/M/title-exact?Down%20by%20Law%20(1986)
## 523 http://us.imdb.com/M/title-exact?Cool%20Hand%20Luke%20(1967)
## 524 http://us.imdb.com/M/title-exact?Great%20Dictator,%20The%20(1940)
## 525 http://us.imdb.com/M/title-exact?Big%20Sleep,%20The%20(1946)
## 526 http://us.imdb.com/M/title-exact?Ben-Hur%20(1959)
## 527 http://us.imdb.com/M/title-exact?Gandhi%20(1982)
## 528 http://us.imdb.com/M/title-exact?Killing%20Fields,%20The%20(1984)
## 529 http://us.imdb.com/M/title-exact?Mitt%20liv%20som%20hund%20(1985)
## 530 http://us.imdb.com/M/title-exact?Man%20Who%20Would%20Be%20King,%20The%20(1975)
## 531 http://us.imdb.com/M/title-exact?Shine%20(1996)
## 532 http://us.imdb.com/M/title-exact?Kama%20Sutra%20(1996)
## 533 http://us.imdb.com/M/title-exact?Daytrippers%2C%20The%20(1996)
## 534 http://us.imdb.com/M/title-exact?Traveller%20%281997%29
## 535 http://us.imdb.com/M/title-exact?Addicted%20to%20Love%20%281997%29
## 536 http://us.imdb.com/M/title-exact?Ponette%20%281996%29
## 537 http://us.imdb.com/M/title-exact?My+Own+Private+Idaho+(1991)
## 538 http://us.imdb.com/M/title-exact?Anastasia+(1997)
## 539 http://us.imdb.com/M/title-exact?imdb-title-119715
## 540 http://us.imdb.com/M/title-exact?Money%20Train%20(1995)
## 541 http://us.imdb.com/M/title-exact?Mortal%20Kombat%20(1995)
## 542 http://us.imdb.com/M/title-exact?Pocahontas%20(1995)
## 543 http://us.imdb.com/M/title-exact?Mis%E9rables%2C%20Les%20%281995%29
## 544 http://us.imdb.com/M/title-exact?Things%20to%20Do%20in%20Denver%20when%20You're%20Dead%20(1995)
## 545 http://us.imdb.com/M/title-exact?Vampire%20in%20Brooklyn%20(1995)
## 546 http://us.imdb.com/M/title-exact?Broken%20Arrow%20(1996)
## 547 http://us.imdb.com/M/title-exact?Young%20Poisoner's%20Handbook,%20The%20(1995)
## 548 http://us.imdb.com/M/title-exact?NeverEnding%20Story%20III,%20The%20(1994)
## 549 http://us.imdb.com/M/title-exact?Rob%20Roy%20(1995)
## 550 http://us.imdb.com/M/title-exact?Die%20Hard:%20With%20a%20Vengeance%20(1995)
## 551 http://us.imdb.com/M/title-exact?Lord%20of%20Illusions%20(1995)
## 552 http://us.imdb.com/M/title-exact?Species%20(1995)
## 553 http://us.imdb.com/M/title-exact?Walk%20in%20the%20Clouds,%20A%20(1995)
## 554 http://us.imdb.com/M/title-exact?Waterworld%20(1995)
## 555 http://us.imdb.com/M/title-exact?White%20Man's%20Burden%20(1995)
## 556 http://us.imdb.com/M/title-exact?Wild%20Bill%20(1995)
## 557 http://us.imdb.com/M/title-exact?Farinelli:%20il%20castrato%20(1994)
## 558 http://us.imdb.com/M/title-exact?Heavenly%20Creatures%20(1994)
## 559 http://us.imdb.com/M/title-exact?Interview%20with%20the%20Vampire%20(1994)
## 560 http://us.imdb.com/M/title-exact?Kid%20in%20King%20Arthur's%20Court,%20A%20(1995)
## 561 http://us.imdb.com/M/title-exact?Mary%20Shelley's%20Frankenstein%20(1994)
## 562 http://us.imdb.com/M/title-exact?Quick%20and%20the%20Dead,%20The%20(1995)
## 563 http://us.imdb.com/M/title-exact?%22Langoliers,%20The%22%20(1995)%20(mini)
## 564 http://us.imdb.com/M/title-exact?Tales%20from%20the%20Hood%20(1995)
## 565 http://us.imdb.com/M/title-exact?Village%20of%20the%20Damned%20(1995)
## 566 http://us.imdb.com/M/title-exact?Clear%20and%20Present%20Danger%20(1994)
## 567 http://us.imdb.com/M/title-exact?Wes%20Craven's%20New%20Nightmare%20(1994)
## 568 http://us.imdb.com/M/title-exact?Speed%20(1994/I)
## 569 http://us.imdb.com/M/title-exact?Wolf%20(1994)
## 570 http://us.imdb.com/M/title-exact?Wyatt%20Earp%20(1994)
## 571 http://us.imdb.com/M/title-exact?Another%20Stakeout%20(1993)
## 572 http://us.imdb.com/M/title-exact?Blown%20Away%20(1994)
## 573 http://us.imdb.com/M/title-exact?Body%20Snatchers%20(1993)
## 574 http://us.imdb.com/M/title-exact?Boxing%20Helena%20(1993)
## 575 http://us.imdb.com/M/title-exact?City%20Slickers%20II:%20The%20Legend%20of%20Curly's%20Gold%20(1994)
## 576 http://us.imdb.com/M/title-exact?Cliffhanger%20(1993)
## 577 http://us.imdb.com/M/title-exact?Coneheads%20(1993)
## 578 http://us.imdb.com/M/title-exact?Demolition%20Man%20(1993)
## 579 http://us.imdb.com/M/title-exact?Fatal%20Instinct%20(1993)
## 580 http://us.imdb.com/M/title-exact?Englishman%20Who%20Went%20Up%20a%20Hill,%20But%20Came%20Down%20a%20Mountain,%20The%20(1995)
## 581 http://us.imdb.com/M/title-exact?Kalifornia%20(1993)
## 582 http://us.imdb.com/M/title-exact?Piano,%20The%20(1993)
## 583 http://us.imdb.com/M/title-exact?Romeo%20Is%20Bleeding%20(1993)
## 584 http://us.imdb.com/M/title-exact?Secret%20Garden,%20The%20(1993)
## 585 http://us.imdb.com/M/title-exact?Son%20in%20Law%20(1993)
## 586 http://us.imdb.com/M/title-exact?Terminal%20Velocity%20(1994)
## 587 http://us.imdb.com/M/title-exact?Hour%20of%20the%20Pig,%20The%20(1993)
## 588 http://us.imdb.com/M/title-exact?Beauty%20and%20the%20Beast%20(1991)
## 589 http://us.imdb.com/M/title-exact?Wild%20Bunch,%20The%20(1969)
## 590 http://us.imdb.com/M/title-exact?Hellraiser:%20Bloodline%20(1996)
## 591 http://us.imdb.com/M/title-exact?Primal%20Fear%20(1996)
## 592 http://us.imdb.com/M/title-exact?True%20Crime%20(1995)
## 593 http://us.imdb.com/M/title-exact?Stalingrad%20(1993)
## 594 http://us.imdb.com/M/title-exact?Heavy%20(1995)
## 595 http://us.imdb.com/M/title-exact?Fan,%20The%20(1996)
## 596 http://us.imdb.com/M/title-exact?Hunchback%20of%20Notre%20Dame,%20The%20(1996)
## 597 http://us.imdb.com/M/title-exact?Eraser%20(1996)
## 598 http://us.imdb.com/M/title-exact?Big%20Squeeze,%20The%20(1996)
## 599 http://us.imdb.com/M/title-exact?Project%20S%20(1993)
## 600 http://us.imdb.com/M/title-exact?Robinson%20Crusoe%20(1996)
## 601 http://us.imdb.com/M/title-exact?For%20Whom%20the%20Bell%20Tolls%20(1943)
## 602 http://us.imdb.com/M/title-exact?American%20in%20Paris,%20An%20(1951)
## 603 http://us.imdb.com/M/title-exact?Rear%20Window%20(1954)
## 604 http://us.imdb.com/M/title-exact?It%20Happened%20One%20Night%20(1934)
## 605 http://us.imdb.com/M/title-exact?Meet%20Me%20in%20St.%20Louis%20(1944)
## 606 http://us.imdb.com/M/title-exact?All%20About%20Eve%20(1950)
## 607 http://us.imdb.com/M/title-exact?Rebecca%20(1940)
## 608 http://us.imdb.com/M/title-exact?Spellbound%20(1945)
## 609 http://us.imdb.com/M/title-exact?Father%20of%20the%20Bride%20(1950)
## 610 http://us.imdb.com/M/title-exact?Gigi%20(1958)
## 611 http://us.imdb.com/M/title-exact?Laura%20(1944)
## 612 http://us.imdb.com/M/title-exact?Lost%20Horizon%20(1937)
## 613 http://us.imdb.com/M/title-exact?My%20Man%20Godfrey%20(1936)
## 614 http://us.imdb.com/M/title-exact?Giant%20(1956)
## 615 http://us.imdb.com/M/title-exact?39%20Steps,%20The%20(1935)
## 616 http://us.imdb.com/M/title-exact?Night%20of%20the%20Living%20Dead%20(1968)
## 617 http://us.imdb.com/M/title-exact?Blaue%20Engel,%20Der%20(1930)
## 618 http://us.imdb.com/M/title-exact?Picnic%20(1955)
## 619 http://us.imdb.com/M/title-exact?Extreme%20Measures%20(1996)
## 620 http://us.imdb.com/M/title-exact?Chamber,%20The%20(1996)
## 621 http://us.imdb.com/M/title-exact?Davy%20Crockett%2C%20King%20of%20the%20Wild%20Frontier%20%281955%29
## 622 http://us.imdb.com/M/title-exact?Swiss%20Family%20Robinson%20(1960)
## 623 http://us.imdb.com/M/title-exact?Angels%20in%20the%20Outfield%20(1994)
## 624 http://us.imdb.com/M/title-exact?Three%20Caballeros,%20The%20(1945)
## 625 http://us.imdb.com/M/title-exact?Sword%20in%20the%20Stone,%20The%20(1963)
## 626 http://us.imdb.com/Title?So+Dear+to+My+Heart+(1949)
## 627 http://us.imdb.com/Title?Robin+Hood%3A+Prince+of+Thieves+(1991)
## 628 http://us.imdb.com/M/title-exact?Sleepers%20(1996)
## 629 http://us.imdb.com/M/title-exact?Victor/Victoria%20%281982%29
## 630 http://us.imdb.com/M/title-exact?Great%20Race,%20The%20(1965)
## 631 http://us.imdb.com/M/title-exact?Crying%20Game,%20The%20(1992)
## 632 http://us.imdb.com/M/title-exact?Sophie's%20Choice%20(1982)
## 633 http://us.imdb.com/M/title-exact?Christmas%20Carol,%20A%20(1938)
## 634 http://us.imdb.com/M/title-exact?Microcosmos%3A%20Le%20peuple%20de%20l%27herbe%20%281996%29
## 635 http://us.imdb.com/M/title-exact?Fog,%20The%20(1980)
## 636 http://us.imdb.com/M/title-exact?Escape%20from%20New%20York%20(1981)
## 637 http://us.imdb.com/M/title-exact?Howling,%20The%20(1981)
## 638 http://us.imdb.com/M/title-exact?Retour%20de%20Martin%20Guerre,%20Le%20(1982)
## 639 http://us.imdb.com/M/title-exact?Blechtrommel,%20Die%20(1979)
## 640 http://us.imdb.com/M/title-exact?Cook%20the%20Thief%20His%20Wife%20&%20Her%20Lover,%20The%20(1989)
## 641 http://us.imdb.com/M/title-exact?Paths%20of%20Glory%20(1957)
## 642 http://us.imdb.com/M/title-exact?Grifters,%20The%20(1990)
## 643 http://us.imdb.com/M/title-exact?Innocent,%20The%20(1994)%20(TV)
## 644 http://us.imdb.com/M/title-exact?Thin%20Blue%20Line,%20The%20(1988)
## 645 http://us.imdb.com/M/title-exact?Paris%20Is%20Burning%20(1990)
## 646 http://us.imdb.com/M/title-exact?C'era%20una%20volta%20il%20west%20(1969)
## 647 http://us.imdb.com/M/title-exact?Ran%20(1985)
## 648 http://us.imdb.com/M/title-exact?Quiet%20Man,%20The%20(1952)
## 649 http://us.imdb.com/M/title-exact?Once%20Upon%20a%20Time%20in%20America%20(1984)
## 650 http://us.imdb.com/M/title-exact?Sjunde%20inseglet,%20Det%20(1957)
## 651 http://us.imdb.com/M/title-exact?Glory%20(1989)
## 652 http://us.imdb.com/M/title-exact?Rosencrantz%20and%20Guildenstern%20Are%20Dead%20(1990)
## 653 http://us.imdb.com/M/title-exact?Touch%20of%20Evil%20(1958)
## 654 http://us.imdb.com/M/title-exact?Chinatown%20(1974)
## 655 http://us.imdb.com/M/title-exact?Stand%20by%20Me%20(1986)
## 656 http://us.imdb.com/M/title-exact?M%20(1931)
## 657 http://us.imdb.com/M/title-exact?Manchurian%20Candidate,%20The%20(1962)
## 658 http://us.imdb.com/M/title-exact?Pump%20Up%20the%20Volume%20(1990)
## 659 http://us.imdb.com/M/title-exact?Arsenic%20and%20Old%20Lace%20(1944)
## 660 http://us.imdb.com/M/title-exact?Fried%20Green%20Tomatoes%20at%20the%20Whistle%20Stop%20Cafe%20(1991)
## 661 http://us.imdb.com/M/title-exact?High%20Noon%20(1952)
## 662 http://us.imdb.com/M/title-exact?Somewhere%20in%20Time%20(1980)
## 663 http://us.imdb.com/M/title-exact?Being%20There%20(1979)
## 664 http://us.imdb.com/M/title-exact?Paris,%20Texas%20(1984)
## 665 http://us.imdb.com/M/title-exact?Alien%203%20(1992)
## 666 http://us.imdb.com/M/title-exact?Andy%20Warhol's%20Dracula%20(1974)
## 667 http://us.imdb.com/M/title-exact?Audrey%20Rose%20(1977)
## 668 http://us.imdb.com/M/title-exact?Blood%20Beach%20(1981)
## 669 http://us.imdb.com/M/title-exact?Body%20Parts%20(1991)
## 670 http://us.imdb.com/M/title-exact?Body%20Snatchers%20(1993)
## 671 http://us.imdb.com/M/title-exact?Bride%20of%20Frankenstein%20(1935)
## 672 http://us.imdb.com/M/title-exact?Candyman%20(1992)
## 673 http://us.imdb.com/M/title-exact?Cape%20Fear%20(1962)
## 674 http://us.imdb.com/M/title-exact?Cat%20People%20(1982)
## 675 http://us.imdb.com/M/title-exact?Nosferatu,%20eine%20Symphonie%20des%20Grauens%20(1922)
## 676 http://us.imdb.com/M/title-exact?Crucible,%20The%20(1996)
## 677 http://us.imdb.com/M/title-exact?Fire%20on%20the%20Mountain%20(1996)
## 678 http://us.imdb.com/M/title-exact?Volcano%20%281997%29
## 679 http://us.imdb.com/M/title-exact?Conan+the+Barbarian+(1981)
## 680 http://us.imdb.com/M/title-exact?Kull+the+Conqueror+(1997)
## 681 http://us.imdb.com/M/title-exact?Wishmaster+(1997)
## 682 http://us.imdb.com/M/title-exact?I+Know+What+You+Did+Last+Summer+(1997)
## 683 http://us.imdb.com/M/title-exact?Rocket+Man+(1997)
## 684 http://us.imdb.com/M/title-exact?In%20the%20Line%20of%20Fire%20(1993)
## 685 http://us.imdb.com/M/title-exact?Executive%20Decision%20(1996)
## 686 http://us.imdb.com/M/title-exact?Perfect%20World,%20A%20(1993)
## 687 http://us.imdb.com/M/title-exact?McHale's%20Navy%20(1997)
## 688 http://us.imdb.com/M/title-exact?Leave+It+To+Beaver+(1997)
## 689 http://us.imdb.com/M/title-exact?Jackal%2C+The+(1997)
## 690 http://us.imdb.com/M/title-exact?Seven+Years+in+Tibet+(1997)
## 691 http://us.imdb.com/M/title-exact?imdb-title-118929
## 692 http://us.imdb.com/M/title-exact?American%20President,%20The%20(1995)
## 693 http://us.imdb.com/M/title-exact?Casino%20(1995)
## 694 http://us.imdb.com/Title?Persuasion+(1995/I)
## 695 http://us.imdb.com/M/title-exact?Kicking%20and%20Screaming%20(1995)
## 696 http://us.imdb.com/M/title-exact?City%20Hall%20(1996)
## 697 http://us.imdb.com/M/title-exact?Basketball%20Diaries,%20The%20(1995)
## 698 http://us.imdb.com/M/title-exact?Browning%20Version,%20The%20(1994)
## 699 http://us.imdb.com/M/title-exact?Little%20Women%20(1994)
## 700 http://us.imdb.com/M/title-exact?Miami%20Rhapsody%20(1995)
## 701 http://us.imdb.com/M/title-exact?Macht%20der%20Bilder:%20Leni%20Riefenstahl,%20Die%20(1993)
## 702 http://us.imdb.com/M/title-exact?Barcelona%20(1994)
## 703 http://us.imdb.com/M/title-exact?Widows'%20Peak%20(1994)
## 704 http://us.imdb.com/M/title-exact?House%20of%20the%20Spirits,%20The%20(1993)
## 705 http://us.imdb.com/M/title-exact?Singin'%20in%20the%20Rain%20(1952)
## 706 http://us.imdb.com/M/title-exact?Bad%20Moon%20(1996)
## 707 http://us.imdb.com/M/title-exact?Enchanted%20April%20(1991)
## 708 http://us.imdb.com/M/title-exact?sex,%20lies,%20and%20videotape%20(1989)
## 709 http://us.imdb.com/M/title-exact?Strictly%20Ballroom%20(1992)
## 710 http://us.imdb.com/Title?Better+Off+Dead...+(1985)
## 711 http://us.imdb.com/M/title-exact?Substance%20of%20Fire,%20The%20(1996)
## 712 http://us.imdb.com/M/title-exact?Tin%20Men%20(1987)
## 713 http://us.imdb.com/M/title-exact?Othello%20(1995)
## 714 http://us.imdb.com/M/title-exact?Carrington%20(1995)
## 715 http://us.imdb.com/M/title-exact?To%20Die%20For%20(1995)
## 716 http://us.imdb.com/M/title-exact?Home%20for%20the%20Holidays%20(1995)
## 717 http://us.imdb.com/M/title-exact?Juror,%20The%20(1996)
## 718 http://us.imdb.com/M/title-exact?In%20the%20Bleak%20Midwinter%20(1995)
## 719 http://us.imdb.com/M/title-exact?Canadian%20Bacon%20(1994)
## 720 http://us.imdb.com/M/title-exact?First%20Knight%20(1995)
## 721 http://us.imdb.com/M/title-exact?Mallrats%20(1995)
## 722 http://us.imdb.com/M/title-exact?Nine%20Months%20(1995)
## 723 http://us.imdb.com/M/title-exact?Boys%20on%20the%20Side%20(1995)
## 724 http://us.imdb.com/M/title-exact?Circle%20of%20Friends%20(1995)
## 725 http://us.imdb.com/M/title-exact?Exit%20to%20Eden%20(1994)
## 726 http://us.imdb.com/M/title-exact?Fluke%20(1995)
## 727 http://us.imdb.com/M/title-exact?Immortal%20Beloved%20(1994)
## 728 http://us.imdb.com/M/title-exact?Junior%20(1994)
## 729 http://us.imdb.com/M/title-exact?Nell%20(1994)
## 730 http://us.imdb.com/Title?Reine+Margot,+La+(1994)
## 731 http://us.imdb.com/M/title-exact?Corrina,%20Corrina%20(1994)
## 732 http://us.imdb.com/M/title-exact?Dave%20(1993)
## 733 http://us.imdb.com/M/title-exact?Go%20Fish%20(1994)
## 734 http://us.imdb.com/M/title-exact?Made%20in%20America%20(1993)
## 735 http://us.imdb.com/M/title-exact?Philadelphia%20(1993)
## 736 http://us.imdb.com/M/title-exact?Shadowlands%20(1993)
## 737 http://us.imdb.com/M/title-exact?Sirens%20(1994)
## 738 http://us.imdb.com/M/title-exact?Threesome%20(1994)
## 739 http://us.imdb.com/M/title-exact?Pretty%20Woman%20(1990)
## 740 http://us.imdb.com/M/title-exact?Jane%20Eyre%20(1996)
## 741 http://us.imdb.com/M/title-exact?Last%20Supper,%20The%20(1995)
## 742 http://us.imdb.com/M/title-exact?Ransom%20(1996)
## 743 http://us.imdb.com/M/title-exact?Crow%3A%20City%20of%20Angels%2C%20The%20%281996%29
## 744 http://us.imdb.com/M/title-exact?Michael%20Collins%20(1996)
## 745 http://us.imdb.com/M/title-exact?Ruling%20Class,%20The%20(1972)
## 746 http://us.imdb.com/M/title-exact?Real%20Genius%20(1985)
## 747 http://us.imdb.com/M/title-exact?Benny%20&%20Joon%20(1993)
## 748 http://us.imdb.com/M/title-exact?Saint%2C%20The%20(1997)
## 749 http://us.imdb.com/M/title-exact?Matchmaker%2C+The+(1997)
## 750 http://us.imdb.com/M/title-exact?imdb-title-118607
## 751 http://us.imdb.com/M/title-exact?imdb-title-120347
## 752 http://us.imdb.com/M/title-exact?Replacement+Killers%2C+The+(1998)
## 753 http://us.imdb.com/M/title-exact?Utomlyonnye%20Solntsem%20(1994)
## 754 http://us.imdb.com/M/title-exact?Red+Corner+(1997)
## 755 http://us.imdb.com/M/title-exact?Jumanji%20(1995)
## 756 http://us.imdb.com/M/title-exact?Father%20of%20the%20Bride%20Part%20II%20(1995)
## 757 http://us.imdb.com/M/title-exact?Across%20The%20Sea%20of%20Time%20(1995)
## 758 http://us.imdb.com/M/title-exact?Lawnmower%20Man%202:%20Beyond%20Cyberspace%20(1996)
## 759 http://us.imdb.com/M/title-exact?Fair%20Game%20(1995)
## 760 http://us.imdb.com/M/title-exact?Screamers%20(1995)
## 761 http://us.imdb.com/M/title-exact?Nick%20of%20Time%20(1995)
## 762 http://us.imdb.com/M/title-exact?Beautiful%20Girls%20(1996)
## 763 http://us.imdb.com/M/title-exact?Happy%20Gilmore%20(1996)
## 764 http://us.imdb.com/M/title-exact?If%20Lucy%20Fell%20(1996)
## 765 http://us.imdb.com/M/title-exact?Boomerang%20(1992)
## 766 http://us.imdb.com/M/title-exact?Man%20of%20the%20Year%20(1995)
## 767 http://us.imdb.com/M/title-exact?Addiction,%20The%20(1995)
## 768 http://us.imdb.com/M/title-exact?Casper%20(1995)
## 769 http://us.imdb.com/M/title-exact?Congo%20(1995)
## 770 http://us.imdb.com/M/title-exact?Devil%20in%20a%20Blue%20Dress%20(1995)
## 771 http://us.imdb.com/M/title-exact?Johnny%20Mnemonic%20(1995)
## 772 http://us.imdb.com/M/title-exact?Kids%20(1995)
## 773 http://us.imdb.com/M/title-exact?Mute%20Witness%20(1994)
## 774 http://us.imdb.com/M/title-exact?Prophecy,%20The%20(1995)
## 775 http://us.imdb.com/M/title-exact?Something%20to%20Talk%20About%20(1995)
## 776 http://us.imdb.com/M/title-exact?Three%20Wishes%20(1995)
## 777 http://us.imdb.com/M/title-exact?Castle%20Freak%20(1995)
## 778 http://us.imdb.com/M/title-exact?Don%20Juan%20DeMarco%20and%20the%20Centerfold%20(1995)
## 779 http://us.imdb.com/M/title-exact?Drop%20Zone%20(1994)
## 780 http://us.imdb.com/M/title-exact?Dumb%20&%20Dumber%20(1994)
## 781 http://us.imdb.com/M/title-exact?French%20Kiss%20(1995)
## 782 http://us.imdb.com/M/title-exact?Little%20Odessa%20(1994)
## 783 http://us.imdb.com/M/title-exact?Milk%20Money%20(1994)
## 784 http://us.imdb.com/Title?Beyond+Bedlam+(1993)
## 785 http://us.imdb.com/M/title-exact?Only%20You%20(1994)
## 786 http://us.imdb.com/M/title-exact?Perez%20Family,%20The%20(1995)
## 787 http://us.imdb.com/M/title-exact?Roommates%20(1995)
## 788 http://us.imdb.com/M/title-exact?Relative%20Fear%20(1994)
## 789 http://us.imdb.com/M/title-exact?Swimming%20with%20Sharks%20(1995)
## 790 http://us.imdb.com/M/title-exact?Tommy%20Boy%20(1995)
## 791 http://us.imdb.com/M/title-exact?Baby-Sitters%20Club,%20The%20(1995)
## 792 http://us.imdb.com/M/title-exact?Bullets%20Over%20Broadway%20(1994)
## 793 http://us.imdb.com/M/title-exact?Crooklyn%20(1994)
## 794 http://us.imdb.com/M/title-exact?It%20Could%20Happen%20to%20You%20(1994)
## 795 http://us.imdb.com/M/title-exact?Richie%20Rich%20(1994)
## 796 http://us.imdb.com/M/title-exact?Speechless%20(1994)
## 797 http://us.imdb.com/M/title-exact?Timecop%20(1994)
## 798 http://us.imdb.com/M/title-exact?Bad%20Company%20(1995)
## 799 http://us.imdb.com/M/title-exact?Boys%20Life%20(1995)
## 800 http://us.imdb.com/M/title-exact?In%20the%20Mouth%20of%20Madness%20(1995)
## 801 http://us.imdb.com/M/title-exact?Air%20Up%20There,%20The%20(1994)
## 802 http://us.imdb.com/M/title-exact?Hard%20Target%20(1993)
## 803 http://us.imdb.com/M/title-exact?Heaven%20&%20Earth%20(1993)
## 804 http://us.imdb.com/M/title-exact?Jimmy%20Hollywood%20(1994)
## 805 http://us.imdb.com/M/title-exact?Manhattan%20Murder%20Mystery%20(1993)
## 806 http://us.imdb.com/M/title-exact?Menace%20II%20Society%20(1993)
## 807 http://us.imdb.com/M/title-exact?Poetic%20Justice%20(1993)
## 808 http://us.imdb.com/M/title-exact?Program,%20The%20(1993)
## 809 http://us.imdb.com/M/title-exact?Rising%20Sun%20(1993)
## 810 http://us.imdb.com/M/title-exact?Shadow,%20The%20(1994)
## 811 http://us.imdb.com/M/title-exact?Thirty-Two%20Short%20Films%20About%20Glenn%20Gould%20(1993)
## 812 http://us.imdb.com/M/title-exact?Andre%20(1994)
## 813 http://us.imdb.com/M/title-exact?Celluloid%20Closet,%20The%20(1995)
## 814 http://us.imdb.com/M/title-exact?Great%20Day%20in%20Harlem,%20A%20(1994)
## 815 http://us.imdb.com/M/title-exact?One%20Fine%20Day%20(1996)
## 816 http://us.imdb.com/M/title-exact?Candyman:%20Farewell%20to%20the%20Flesh%20(1995)
## 817 http://us.imdb.com/M/title-exact?Frisk%20(1995)
## 818 http://us.imdb.com/M/title-exact?Girl%206%20(1996)
## 819 http://us.imdb.com/M/title-exact?Eddie%20(1996)
## 820 http://us.imdb.com/M/title-exact?Space%20Jam%20(1996)
## 821 http://us.imdb.com/M/title-exact?Mrs.%20Winterbourne%20(1996)
## 822 http://us.imdb.com/M/title-exact?Faces%20(1968)
## 823 http://us.imdb.com/M/title-exact?Mulholland%20Falls%20(1996)
## 824 http://us.imdb.com/M/title-exact?Great%20White%20Hype,%20The%20(1996)
## 825 http://us.imdb.com/M/title-exact?Arrival,%20The%20(1996)
## 826 http://us.imdb.com/M/title-exact?Phantom,%20The%20(1996)
## 827 http://us.imdb.com/M/title-exact?Daylight%20(1996)
## 828 http://us.imdb.com/M/title-exact?Alaska%20(1996)
## 829 http://us.imdb.com/M/title-exact?Fled%20(1996)
## 830 http://us.imdb.com/M/title-exact?Power%2098%20(1995)
## 831 http://us.imdb.com/M/title-exact?Escape%20from%20L.A.%20(1996)
## 832 http://us.imdb.com/M/title-exact?Bogus%20(1996)
## 833 http://us.imdb.com/M/title-exact?Bulletproof%20(1996)
## 834 http://us.imdb.com/M/title-exact?Halloween:%20The%20Curse%20of%20Michael%20Myers%20(1995)
## 835 http://us.imdb.com/M/title-exact?Gay%20Divorcee%2C%20The%20%281934%29
## 836 http://us.imdb.com/M/title-exact?Ninotchka%20(1939)
## 837 http://us.imdb.com/M/title-exact?Meet%20John%20Doe%20(1941)
## 838 http://us.imdb.com/M/title-exact?In%20the%20Line%20of%20Duty%202%20(1987)
## 839 http://us.imdb.com/M/title-exact?Loch%20Ness%20(1995)
## 840 http://us.imdb.com/M/title-exact?Last%20Man%20Standing%20(1996/I)
## 841 http://us.imdb.com/M/title-exact?Glimmer%20Man,%20The%20(1996)
## 842 http://us.imdb.com/M/title-exact?Pollyanna%20(1960)
## 843 http://us.imdb.com/M/title-exact?Shaggy%20Dog,%20The%20(1959)
## 844 http://us.imdb.com/M/title-exact?Freeway%20(1996)
## 845 http://us.imdb.com/M/title-exact?That%20Thing%20You%20Do!%20(1996)
## 846 http://us.imdb.com/M/title-exact?To%20Gillian%20on%20Her%2037th%20Birthday%20(1996)
## 847 http://us.imdb.com/M/title-exact?Looking%20for%20Richard%20(1996)
## 848 http://us.imdb.com/M/title-exact?Murder,%20My%20Sweet%20(1944)
## 849 http://us.imdb.com/M/title-exact?Days%20of%20Thunder%20(1990)
## 850 http://us.imdb.com/M/title-exact?Perfect%20Candidate,%20A%20(1996)
## 851 http://us.imdb.com/M/title-exact?Deux%20ou%20trois%20choses%20que%20je%20sais%20d'elle%20(1966)
## 852 http://us.imdb.com/M/title-exact?Bloody%20Child%2C%20The%20%281996%29
## 853 http://us.imdb.com/M/title-exact?Braindead%20(1992)
## 854 http://us.imdb.com/M/title-exact?Bad%20Taste%20(1987)
## 855 http://us.imdb.com/M/title-exact?Diva%20(1981)
## 856 http://us.imdb.com/M/title-exact?Night%20on%20Earth%20(1991)
## 857 http://us.imdb.com/M/title-exact?Paris%20Was%20a%20Woman%20(1995)
## 858 http://us.imdb.com/M/title-exact?Amityville:%20Dollhouse%20(1996)
## 859 http://us.imdb.com/M/title-exact?April%20Fool's%20Day%20(1986)
## 860 http://us.imdb.com/M/title-exact?Believers,%20The%20(1987)
## 861 http://us.imdb.com/M/title-exact?Nosferatu%20a%20Venezia%20(1986)
## 862 http://us.imdb.com/M/title-exact?Jingle%20All%20the%20Way%20(1996)
## 863 http://us.imdb.com/M/title-exact?Giardino%20dei%20Finzi-Contini,%20Il%20(1970)
## 864 http://us.imdb.com/M/title-exact?My%20Fellow%20Americans%20(1996)
## 865 http://us.imdb.com/M/title-exact?Ice+Storm%2C+The+(1997)
## 866 http://us.imdb.com/M/title-exact?Michael%20(1996)
## 867 http://us.imdb.com/M/title-exact?Whole%20Wide%20World,%20The%20(1996)
## 868 http://us.imdb.com/M/title-exact?Hearts%20and%20Minds%20(1996)
## 869 http://us.imdb.com/M/title-exact?Fools%20Rush%20In%20(1997)
## 870 http://us.imdb.com/M/title-exact?Touch%20(1997)
## 871 http://us.imdb.com/M/title-exact?Vegas%20Vacation%20(1997)
## 872 http://us.imdb.com/M/title-exact?Love%20Jones%20(1997)
## 873 http://us.imdb.com/M/title-exact?Picture+Perfect+(1997)
## 874 http://us.imdb.com/M/title-exact?Career+Girls+(1997)
## 875 http://us.imdb.com/M/title-exact?She%27s+So+Lovely+(1997)
## 876 http://us.imdb.com/M/title-exact?Money+Talks+(1997)
## 877 http://us.imdb.com/M/title-exact?Excess+Baggage+(1997)
## 878 http://us.imdb.com/M/title-exact?That%20Darn%20Cat%20(1997)
## 879 http://us.imdb.com/M/title-exact?Peacemaker%2C+The+(1997)
## 880 http://us.imdb.com/M/title-exact?Soul+Food+(1997)
## 881 http://us.imdb.com/M/title-exact?Money+Talks+(1997)
## 882 http://us.imdb.com/M/title-exact?Washington+Square+(1997)
## 883 http://us.imdb.com/M/title-exact?Telling+Lies+in+America+(1997)
## 884 http://us.imdb.com/M/title-exact?Year+of+the+Horse+(1997)
## 885 http://us.imdb.com/M/title-exact?Phantoms+(1998)
## 886 http://us.imdb.com/M/title-exact?Life+Less+Ordinary,+A+(1997)
## 887 http://us.imdb.com/M/title-exact?Eve's+Bayou+(1997)
## 888 http://us.imdb.com/M/title-exact?One+Night+Stand+(1997)
## 889 http://us.imdb.com/M/title-exact?Tango+Lesson,+The+(1997)
## 890 http://us.imdb.com/M/title-exact?Mortal+Kombat%3A+Annihilation+(1997)
## 891 http://us.imdb.com/M/title-exact?imdb-title-118698
## 892 http://us.imdb.com/M/title-exact?imdb-title-119137
## 893 http://us.imdb.com/M/title-exact?imdb-title-119142
## 894 http://us.imdb.com/M/title-exact?imdb-title-119303
## 895 http://us.imdb.com/M/title-exact?imdb-title-120082
## 896 http://us.imdb.com/M/title-exact?Sweet+Hereafter%2C+The+(1997)
## 897 http://us.imdb.com/M/title-exact?imdb-title-128755
## 898 http://us.imdb.com/M/title-exact?imdb-title-119925
## 899 http://us.imdb.com/M/title-exact?imdb-title-120521
## 900 http://us.imdb.com/M/title-exact?imdb-title-119485
## 901 http://us.imdb.com/M/title-exact?imdb-title-119718
## 902 http://us.imdb.com/M/title-exact?imdb-title-118715
## 903 http://us.imdb.com/M/title-exact?imdb-title-118566
## 904 http://us.imdb.com/M/title-exact?imdb-title-119590
## 905 http://us.imdb.com/M/title-exact?imdb-title-119223
## 906 http://us.imdb.com/M/title-exact?imdb-title-119843
## 907 http://us.imdb.com/M/title-exact?imdb-title-120881
## 908 http://us.imdb.com/M/title-exact?imdb-title-120693
## 909 http://us.imdb.com/M/title-exact?imdb-title-118892
## 910 http://us.imdb.com/Title?Nil+By+Mouth+(1997)
## 911 http://us.imdb.com/M/title-exact?imdb-title-119594
## 912 http://us.imdb.com/Title?U.S.+Marshals+(1998)
## 913 http://us.imdb.com/Title?Love+and+Death+on+Long+Island+(1997)
## 914 http://us.imdb.com/Title?Wild+Things+(1998)
## 915 http://us.imdb.com/Title?Primary+Colors+(1998)
## 916 http://us.imdb.com/Title?Lost+in+Space+(1998)
## 917 http://us.imdb.com/Title?Mercury+Rising+(1998)
## 918 http://us.imdb.com/Title?City+of+Angels+(1998)
## 919 http://us.imdb.com/Title?Cit%E9+des+enfants+perdus,+La+(1995)
## 920 http://us.imdb.com/M/title-exact?Two%20Bits%20(1995)
## 921 http://us.imdb.com/M/title-exact?Ba%20Wang%20Bie%20Ji%20(1993)
## 922 http://us.imdb.com/M/title-exact?Dead%20Man%20(1995)
## 923 http://us.imdb.com/M/title-exact?Da%20Hong%20Deng%20Long%20Gao%20Gao%20Gua%20(1991)
## 924 http://us.imdb.com/M/title-exact?White%20Squall%20(1996)
## 925 http://us.imdb.com/Title?Unforgettable+(1996)
## 926 http://us.imdb.com/M/title-exact?Down%20Periscope%20(1996)
## 927 http://us.imdb.com/M/title-exact?Flor%20de%20mi%20secreto,%20La%20(1995)
## 928 http://us.imdb.com/M/title-exact?Craft,%20The%20(1996)
## 929 http://us.imdb.com/M/title-exact?Harriet%20the%20Spy%20(1996)
## 930 http://us.imdb.com/M/title-exact?Chain%20Reaction%20(1996)
## 931 http://us.imdb.com/M/title-exact?Island%20of%20Dr.%20Moreau,%20The%20(1996)
## 932 http://us.imdb.com/M/title-exact?First%20Kid%20(1996)
## 933 http://us.imdb.com/M/title-exact?Funeral,%20The%20(1996)
## 934 http://us.imdb.com/M/title-exact?Preacher's%20Wife,%20The%20(1996)
## 935 http://us.imdb.com/M/title-exact?Paradise%20Road%20%281997%29
## 936 http://us.imdb.com/M/title-exact?Brassed%20Off%20%281996%29
## 937 http://us.imdb.com/M/title-exact?Thousand+Acres%2C+A+(1997)
## 938 http://us.imdb.com/M/title-exact?Smile+Like+Yours%2C+A+(1997)
## 939 http://us.imdb.com/M/title-exact?Murder%20in%20the%20First%20(1995)
## 940 http://us.imdb.com/M/title-exact?Airheads%20(1994)
## 941 http://us.imdb.com/M/title-exact?With%20Honors%20(1994)
## 942 http://us.imdb.com/M/title-exact?What's%20Love%20Got%20to%20Do%20with%20It%20(1993)
## 943 http://us.imdb.com/M/title-exact?Killing%20Zoe%20(1994)
## 944 http://us.imdb.com/M/title-exact?Renaissance%20Man%20(1994)
## 945 http://us.imdb.com/M/title-exact?Charade%20(1963)
## 946 http://us.imdb.com/M/title-exact?Fox%20and%20the%20Hound,%20The%20(1981)
## 947 http://us.imdb.com/M/title-exact?Grand%20bleu,%20Le%20(1988)
## 948 http://us.imdb.com/M/title-exact?Booty%20Call%20(1997)
## 949 http://us.imdb.com/M/title-exact?How%20to%20Make%20an%20American%20Quilt%20(1995)
## 950 http://us.imdb.com/M/title-exact?Georgia%20(1995)
## 951 http://us.imdb.com/M/title-exact?Indian%20in%20the%20Cupboard,%20The%20(1995)
## 952 http://us.imdb.com/M/title-exact?Blue%20in%20the%20Face%20(1995)
## 953 http://us.imdb.com/M/title-exact?Unstrung%20Heroes%20(1995)
## 954 http://us.imdb.com/M/title-exact?Unzipped%20(1995)
## 955 http://us.imdb.com/M/title-exact?Before%20Sunrise%20(1995)
## 956 http://us.imdb.com/M/title-exact?Nobody's%20Fool%20(1994)
## 957 http://us.imdb.com/M/title-exact?Tui%20Shou%20(1992)
## 958 http://us.imdb.com/M/title-exact?Huozhe%20(1994)
## 959 http://us.imdb.com/M/title-exact?Dazed%20and%20Confused%20(1993)
## 960 http://us.imdb.com/M/title-exact?Naked%20(1993)
## 961 http://us.imdb.com/M/title-exact?Orlando%20(1993)
## 962 http://us.imdb.com/M/title-exact?Ruby%20in%20Paradise%20(1993)
## 963 http://us.imdb.com/M/title-exact?Some%20Folks%20Call%20It%20a%20Sling%20Blade%20(1993)
## 964 http://us.imdb.com/M/title-exact?Month%20by%20The%20Lake,%20A%20(1995)
## 965 http://us.imdb.com/M/title-exact?Funny%20Face%20(1957)
## 966 http://us.imdb.com/M/title-exact?Affair%20to%20Remember,%20An%20(1957)
## 967 http://us.imdb.com/M/title-exact?Little%20Lord%20Fauntleroy%20(1936)
## 968 http://us.imdb.com/M/title-exact?Inspector%20General,%20The%20(1949)
## 969 http://us.imdb.com/M/title-exact?Winnie%20the%20Pooh%20and%20the%20Blustery%20Day%20%281968%29
## 970 http://us.imdb.com/M/title-exact?Hear%20My%20Song%20(1991)
## 971 http://us.imdb.com/M/title-exact?Mediterraneo%20(1991)
## 972 http://us.imdb.com/M/title-exact?Passion%20Fish%20(1992)
## 973 http://us.imdb.com/M/title-exact?Grateful%20Dead%20(1995)
## 974 http://us.imdb.com/Title?Eye+for+an+Eye+(1996)
## 975 http://us.imdb.com/M/title-exact?Fear%20(1996)
## 976 http://us.imdb.com/M/title-exact?Solo%20(1996)
## 977 http://us.imdb.com/M/title-exact?Substitute,%20The%20(1996)
## 978 http://us.imdb.com/M/title-exact?Heaven's%20Prisoners%20(1996)
## 979 http://us.imdb.com/M/title-exact?Trigger%20Effect,%20The%20(1996)
## 980 http://us.imdb.com/M/title-exact?Mother%20Night%20(1996)
## 981 http://us.imdb.com/M/title-exact?Dangerous%20Ground%20(1997)
## 982 http://us.imdb.com/M/title-exact?Maximum%20Risk%20(1996)
## 983 http://us.imdb.com/M/title-exact?Rich%20Man's%20Wife,%20The%20(1996)
## 984 http://us.imdb.com/M/title-exact?Shadow%20Conspiracy%20(1997)
## 985 http://us.imdb.com/Title?Blood+%26+Wine+(1997)
## 986 http://us.imdb.com/M/title-exact?Turbulence%20(1997)
## 987 http://us.imdb.com/M/title-exact?Underworld%20(1997)
## 988 http://us.imdb.com/M/title-exact?Beautician%20and%20the%20Beast,%20The%20(1997)
## 989 http://us.imdb.com/M/title-exact?Cats%20Don%27t%20Dance%20(1997)
## 990 http://us.imdb.com/M/title-exact?Anna%20Karenina%20%281997%29
## 991 http://us.imdb.com/Title?Keys+to+Tulsa+(1997)
## 992 http://us.imdb.com/M/title-exact?Head+Above+Water+(1996)
## 993 http://us.imdb.com/M/title-exact?Hercules+(1997)
## 994 http://us.imdb.com/M/title-exact?Last+Time+I+Committed+Suicide%2C+The+(1997)
## 995 http://us.imdb.com/M/title-exact?Kiss+Me%2C+Guido+(1997)
## 996 http://us.imdb.com/M/title-exact?Big%20Green,%20The%20(1995)
## 997 http://us.imdb.com/M/title-exact?Stuart%20Saves%20His%20Family%20(1995)
## 998 http://us.imdb.com/M/title-exact?Cabin%20Boy%20(1994)
## 999 http://us.imdb.com/M/title-exact?Clean%20Slate%20(1994)
## 1000 http://us.imdb.com/M/title-exact?Lightning%20Jack%20(1994)
## 1001 http://us.imdb.com/M/title-exact?Stupids,%20The%20(1996)
## 1002 http://us.imdb.com/M/title-exact?Pest,%20The%20(1997)
## 1003 http://us.imdb.com/M/title-exact?That%20Darn%20Cat%20(1997)
## 1004 http://us.imdb.com/M/title-exact?Geronimo:%20An%20American%20Legend%20(1993)
## 1005 http://us.imdb.com/M/title-exact?Podwojne%20zycie%20Weroniki%20(1991)
## 1006 http://us.imdb.com/M/title-exact?Bis%20ans%20Ende%20der%20Welt%20(1991)
## 1007 http://us.imdb.com/M/title-exact?Waiting%20for%20Guffman%20(1996)
## 1008 http://us.imdb.com/M/title-exact?I%20Shot%20Andy%20Warhol%20(1996)
## 1009 http://us.imdb.com/M/title-exact?Stealing%20Beauty%20(1996)
## 1010 http://us.imdb.com/M/title-exact?Basquiat%20(1996)
## 1011 http://us.imdb.com/M/title-exact?2%20Days%20in%20the%20Valley%20(1996)
## 1012 http://us.imdb.com/M/title-exact?Private%20Parts%20(1997)
## 1013 http://us.imdb.com/M/title-exact?Anaconda%20%281997%29
## 1014 http://us.imdb.com/M/title-exact?Romy%20and%20Michele%27s%20High%20School%20Reunion%20%281997%29
## 1015 http://us.imdb.com/M/title-exact?Shiloh%20%281997%29
## 1016 http://us.imdb.com/M/title-exact?Con%20Air%20%281997%29
## 1017 http://us.imdb.com/M/title-exact?Trees%20Lounge%20(1996)
## 1018 http://us.imdb.com/Title?%A1%C1tame%21+(1990)
## 1019 http://us.imdb.com/M/title-exact?Die%20xue%20shuang%20xiong%20(1989)
## 1020 http://us.imdb.com/M/title-exact?Gaslight%20(1944)
## 1021 http://us.imdb.com/M/title-exact?8%201/2%20(1963)
## 1022 http://us.imdb.com/M/title-exact?Fast,+Cheap+&+Out+of+Control+(1997)
## 1023 http://us.imdb.com/M/title-exact?Fathers%27%20Day%20%281997%29
## 1024 http://us.imdb.com/M/title-exact?Mrs%2E+Dalloway+(1997)
## 1025 http://us.imdb.com/M/title-exact?Fire+Down+Below+(1997)
## 1026 http://us.imdb.com/M/title-exact?Lay+of+the+Land%2C+The+(1997)
## 1027 http://us.imdb.com/M/title-exact?Shooter,%20The%20(1995)
## 1028 http://us.imdb.com/M/title-exact?Grumpier%20Old%20Men%20(1995)
## 1029 http://us.imdb.com/M/title-exact?Jury%20Duty%20(1995)
## 1030 http://us.imdb.com/M/title-exact?Beverly%20Hillbillies,%20The%20(1993)
## 1031 http://us.imdb.com/M/title-exact?Lassie%20(1994)
## 1032 http://us.imdb.com/M/title-exact?Little%20Big%20League%20(1994)
## 1033 http://us.imdb.com/M/title-exact?Homeward%20Bound%20II:%20Lost%20in%20San%20Francisco%20(1996)
## 1034 http://us.imdb.com/M/title-exact?Quest,%20The%20(1996/I)
## 1035 http://us.imdb.com/M/title-exact?Cool%20Runnings%20(1993)
## 1036 http://us.imdb.com/M/title-exact?Drop%20Dead%20Fred%20(1991)
## 1037 http://us.imdb.com/M/title-exact?Grease%202%20(1982)
## 1038 http://us.imdb.com/M/title-exact?Switchback+(1997)
## 1039 http://us.imdb.com/M/title-exact?Hamlet%20(1996)
## 1040 http://us.imdb.com/M/title-exact?Two%20if%20by%20Sea%20(1996)
## 1041 http://us.imdb.com/M/title-exact?Forget%20Paris%20(1995)
## 1042 http://us.imdb.com/M/title-exact?Just%20Cause%20(1995)
## 1043 http://us.imdb.com/M/title-exact?Rent-a-Kid%20(1995)
## 1044 http://us.imdb.com/M/title-exact?Paper,%20The%20(1994)
## 1045 http://us.imdb.com/M/title-exact?Fearless%20(1993)
## 1046 http://us.imdb.com/M/title-exact?Malice%20(1993)
## 1047 http://us.imdb.com/M/title-exact?Multiplicity%20(1996)
## 1048 http://us.imdb.com/M/title-exact?She's%20the%20One%20(1996)
## 1049 http://us.imdb.com/Title?House+Arrest+(1996/I)
## 1050 http://us.imdb.com/M/title-exact?Ghost%20and%20Mrs.%20Muir,%20The%20(1947)
## 1051 http://us.imdb.com/M/title-exact?Associate,%20The%20(1996)
## 1052 http://us.imdb.com/M/title-exact?Dracula:%20Dead%20and%20Loving%20It%20(1995)
## 1053 http://us.imdb.com/M/title-exact?Now%20and%20Then%20(1995)
## 1054 http://us.imdb.com/M/title-exact?Mr.%20Wrong%20(1996)
## 1055 http://us.imdb.com/M/title-exact?Simple%20Twist%20of%20Fate,%20A%20(1994)
## 1056 http://us.imdb.com/M/title-exact?Cronos%20(1992)
## 1057 http://us.imdb.com/M/title-exact?Pallbearer,%20The%20(1996)
## 1058 http://us.imdb.com/M/title-exact?War,%20The%20(1994)
## 1059 http://us.imdb.com/M/title-exact?Don't%20Be%20a%20Menace%20(1996)
## 1060 http://us.imdb.com/M/title-exact?Adventures%20of%20Pinocchio,%20The%20(1996)
## 1061 http://us.imdb.com/M/title-exact?Evening%20Star,%20The%20(1996)
## 1062 http://us.imdb.com/M/title-exact?imdb-title-119815
## 1063 http://us.imdb.com/M/title-exact?Little%20Princess,%20A%20(1995)
## 1064 http://us.imdb.com/M/title-exact?Crossfire%20(1947)
## 1065 http://us.imdb.com/M/title-exact?Koyaanisqatsi%20(1983)
## 1066 http://us.imdb.com/M/title-exact?Balto%20(1995)
## 1067 http://us.imdb.com/M/title-exact?Bottle%20Rocket%20(1996)
## 1068 http://us.imdb.com/M/title-exact?Uomo%20delle%20stelle,%20L'%20(1995)
## 1069 http://us.imdb.com/M/title-exact?Amateur%20(1994)
## 1070 http://us.imdb.com/M/title-exact?Living%20in%20Oblivion%20(1995)
## 1071 http://us.imdb.com/Title?Party+Girl+(1995/I)
## 1072 http://us.imdb.com/M/title-exact?Pyromaniac's%20Love%20Story,%20A%20(1995)
## 1073 http://us.imdb.com/Title?Shallow+Grave+(1994)
## 1074 http://us.imdb.com/M/title-exact?Reality%20Bites%20(1994)
## 1075 http://us.imdb.com/M/title-exact?Man%20of%20No%20Importance,%20A%20(1994)
## 1076 http://us.imdb.com/M/title-exact?Pagemaster,%20The%20(1994)
## 1077 http://us.imdb.com/M/title-exact?Love%20and%20a%20.45%20(1994)
## 1078 http://us.imdb.com/M/title-exact?Oliver%20&%20Company%20(1988)
## 1079 http://us.imdb.com/M/title-exact?Joe's%20Apartment%20(1996)
## 1080 http://us.imdb.com/Title?Cort%E1zar+(1994)
## 1081 http://us.imdb.com/M/title-exact?Curdled%20(1996)
## 1082 http://us.imdb.com/M/title-exact?Female%20Perversions%20(1996)
## 1083 http://us.imdb.com/M/title-exact?Albino%20Alligator%20(1996)
## 1084 http://us.imdb.com/M/title-exact?Anne%20Frank%20Remembered%20(1995)
## 1085 http://us.imdb.com/M/title-exact?Carried%20Away%20(1996)
## 1086 http://us.imdb.com/M/title-exact?It's%20My%20Party%20(1995)
## 1087 http://us.imdb.com/M/title-exact?Bloodsport%202%20%281995%29
## 1088 http://us.imdb.com/M/title-exact?Double%20Team%20%281997%29
## 1089 http://us.imdb.com/M/title-exact?Speed%202%3A%20Cruise%20Control%20%281997%29
## 1090 http://us.imdb.com/M/title-exact?Sliver%20(1993)
## 1091 http://us.imdb.com/M/title-exact?Pete's%20Dragon%20(1977)
## 1092 http://us.imdb.com/M/title-exact?Dear%20God%20(1996)
## 1093 http://us.imdb.com/M/title-exact?Live%20Nude%20Girls%20(1995)
## 1094 http://us.imdb.com/M/title-exact?Thin%20Line%20Between%20Love%20and%20Hate,%20A%20(1996)
## 1095 http://us.imdb.com/M/title-exact?High%20School%20High%20(1996)
## 1096 http://us.imdb.com/Title?Commandments+(1997)
## 1097 http://us.imdb.com/M/title-exact?Haine,%20La%20(1995)
## 1098 http://us.imdb.com/M/title-exact?Flirting%20With%20Disaster%20(1996)
## 1099 http://us.imdb.com/M/title-exact?Pao%20Da%20Shuang%20Deng%20(1994)
## 1100 http://us.imdb.com/M/title-exact?What%20Happened%20Was...%20(1994)
## 1101 http://us.imdb.com/M/title-exact?Six%20Degrees%20of%20Separation%20(1993)
## 1102 http://us.imdb.com/M/title-exact?Two%20Much%20(1996)
## 1103 http://us.imdb.com/Title?Trust+(1990)
## 1104 http://us.imdb.com/M/title-exact?C%27est%20arriv%E9%20pr%E8s%20de%20chez%20vous%20%281992%29
## 1105 http://us.imdb.com/M/title-exact?imdb-title-120670
## 1106 http://us.imdb.com/Title?Newton+Boys,+The+(1998)
## 1107 http://us.imdb.com/M/title-exact?Beyond%20Rangoon%20(1995)
## 1108 http://us.imdb.com/M/title-exact?Feast%20of%20July%20(1995)
## 1109 http://us.imdb.com/M/title-exact?Death%20and%20the%20Maiden%20(1994)
## 1110 http://us.imdb.com/M/title-exact?Tank%20Girl%20(1995)
## 1111 http://us.imdb.com/M/title-exact?Double%20Happiness%20(1994)
## 1112 http://us.imdb.com/M/title-exact?Cobb%20(1994)
## 1113 http://us.imdb.com/M/title-exact?Mrs.%20Parker%20and%20the%20Vicious%20Circle%20(1994)
## 1114 http://us.imdb.com/M/title-exact?Faithful%20(1996)
## 1115 http://us.imdb.com/M/title-exact?Twelfth%20Night:%20Or%20What%20You%20Will%20(1996)
## 1116 http://us.imdb.com/M/title-exact?Mark%20of%20Zorro,%20The%20(1940)
## 1117 http://us.imdb.com/M/title-exact?Surviving%20Picasso%20(1996)
## 1118 http://us.imdb.com/M/title-exact?Up%20in%20Smoke%20(1978)
## 1119 http://us.imdb.com/M/title-exact?Some%20Kind%20of%20Wonderful%20(1987)
## 1120 http://us.imdb.com/M/title-exact?I'm%20Not%20Rappaport%20(1996)
## 1121 http://us.imdb.com/M/title-exact?Parapluies%20de%20Cherbourg,%20Les%20(1964)
## 1122 http://us.imdb.com/M/title-exact?They%20Made%20Me%20a%20Criminal%20(1939)
## 1123 http://us.imdb.com/M/title-exact?Last%20Time%20I%20Saw%20Paris,%20The%20(1954)
## 1124 http://us.imdb.com/M/title-exact?Farewell%20to%20Arms,%20A%20(1932)
## 1125 http://us.imdb.com/M/title-exact?Innocents,%20The%20(1961)
## 1126 http://us.imdb.com/M/title-exact?Old%20Man%20and%20the%20Sea,%20The%20(1958)
## 1127 http://us.imdb.com/Title?Truman+Show,+The+(1998)
## 1128 http://us.imdb.com/M/title-exact?Heidi%20Fleiss:%20Hollywood%20Madam%20(1995)%20(TV)
## 1129 http://us.imdb.com/M/title-exact?Chongqing%20Senlin%20(1994)
## 1130 http://us.imdb.com/M/title-exact?Jupiter's%20Wife%20(1994)
## 1131 http://us.imdb.com/M/title-exact?Safe%20(1995)
## 1132 http://us.imdb.com/M/title-exact?Feeling%20Minnesota%20(1996)
## 1133 http://us.imdb.com/M/title-exact?Escape%20to%20Witch%20Mountain%20(1975)
## 1134 http://us.imdb.com/M/title-exact?Get%20on%20the%20Bus%20(1996)
## 1135 http://us.imdb.com/M/title-exact?Doors,%20The%20(1991)
## 1136 http://us.imdb.com/M/title-exact?Ghosts%20of%20Mississippi%20(1996)
## 1137 http://us.imdb.com/M/title-exact?Beautiful%20Thing%20(1996)
## 1138 http://us.imdb.com/M/title-exact/Independence%20(1997)
## 1139 http://us.imdb.com/M/title-exact?Hackers%20(1995)
## 1140 http://us.imdb.com/M/title-exact?Road%20to%20Wellville,%20The%20(1994)
## 1141 http://us.imdb.com/M/title-exact?War%20Room,%20The%20(1993)
## 1142 http://us.imdb.com/M/title-exact?When%20We%20Were%20Kings%20(1996)
## 1143 http://us.imdb.com/Title?Hard+Eight+(1996)
## 1144 http://us.imdb.com/M/title-exact?Quiet%20Room%2C%20The%20(1996)
## 1145 http://us.imdb.com/M/title-exact?Blue%20Chips%20(1994)
## 1146 http://us.imdb.com/M/title-exact?Calendar%20Girl%20(1993)
## 1147 http://us.imdb.com/M/title-exact?My%20Family%20(1995)
## 1148 http://us.imdb.com/M/title-exact?Tom%20&%20Viv%20(1994)
## 1149 http://us.imdb.com/M/title-exact?Walkabout%20(1971)
## 1150 http://us.imdb.com/M/title-exact?Last%20Dance%20(1996)
## 1151 http://us.imdb.com/M/title-exact?Original%20Gangstas%20(1996)
## 1152 http://us.imdb.com/M/title-exact?In%20Love%20and%20War%20(1996)
## 1153 http://us.imdb.com/M/title-exact?Backbeat%20(1993)
## 1154 http://us.imdb.com/M/title-exact?Alphaville%20(1965)
## 1155 http://us.imdb.com/M/title-exact?Rendez-vous%20de%20Paris,%20Les%20(1995)
## 1156 http://us.imdb.com/M/title-exact?Cyclo%20(1995)
## 1157 http://us.imdb.com/M/title-exact?Relic,%20The%20(1997)
## 1158 http://us.imdb.com/M/title-exact?Fille%20seule,%20La%20(1995)
## 1159 http://us.imdb.com/M/title-exact?Stalker%20(1979)
## 1160 http://us.imdb.com/Title?Love%21+Valour%21+Compassion%21+(1997)
## 1161 http://us.imdb.com/M/title-exact?Palookaville%20(1996)
## 1162 http://us.imdb.com/M/title-exact?Phat%20Beach%20(1996)
## 1163 http://us.imdb.com/M/title-exact?Portrait%20of%20a%20Lady%2C%20The%20%281996%29
## 1164 http://us.imdb.com/M/title-exact?Zeus%20and%20Roxanne%20(1997)
## 1165 http://us.imdb.com/M/title-exact?Big%20Bully%20(1996)
## 1166 http://us.imdb.com/M/title-exact?Love%20&%20Human%20Remains%20(1993)
## 1167 http://us.imdb.com/M/title-exact?Sum%20of%20Us,%20The%20(1994)
## 1168 http://us.imdb.com/M/title-exact?Little%20Buddha%20(1993)
## 1169 http://us.imdb.com/M/title-exact?Fresh%20(1994)
## 1170 http://us.imdb.com/M/title-exact?Spanking%20the%20Monkey%20(1994)
## 1171 http://us.imdb.com/M/title-exact?Roseaux%20sauvages%2C%20Les%20%281994%29
## 1172 http://us.imdb.com/M/title-exact?Women,%20The%20(1939)
## 1173 http://us.imdb.com/M/title-exact?Bliss%20(1997)
## 1174 http://us.imdb.com/M/title-exact?Caught%20(1996)
## 1175 http://us.imdb.com/M/title-exact?Hugo+Pool+(1997)
## 1176 http://us.imdb.com/M/title-exact?Welcome+To+Sarajevo+(1997)
## 1177 http://us.imdb.com/M/title-exact?Dunston%20Checks%20In%20(1996)
## 1178 http://us.imdb.com/M/title-exact?Major%20Payne%20(1994)
## 1179 http://us.imdb.com/M/title-exact?Man%20of%20the%20House%20(1995)
## 1180 http://us.imdb.com/M/title-exact?I%20Love%20Trouble%20(1994)
## 1181 http://us.imdb.com/M/title-exact?Low%20Down%20Dirty%20Shame,%20A%20(1994)
## 1182 http://us.imdb.com/M/title-exact?Cops%20and%20Robbersons%20(1994)
## 1183 http://us.imdb.com/M/title-exact?Cowboy%20Way,%20The%20(1994)
## 1184 http://us.imdb.com/M/title-exact?Endless%20Summer%202,%20The%20(1994)
## 1185 http://us.imdb.com/M/title-exact?In%20the%20Army%20Now%20(1994)
## 1186 http://us.imdb.com/M/title-exact?Inkwell,%20The%20(1994)
## 1187 http://us.imdb.com/M/title-exact?Switchblade%20Sisters%20(1975)
## 1188 http://us.imdb.com/M/title-exact?Young%20Guns%20II%20(1990)
## 1189 http://us.imdb.com/M/title-exact?Prefontaine%20(1997)
## 1190 http://us.imdb.com/M/title-exact?That%20Old%20Feeling%20(1997)
## 1191 http://us.imdb.com/M/title-exact?Letter+From+Death+Row%2C+A+(1998)
## 1192 http://us.imdb.com/M/title-exact?Boys%20of%20St.%20Vincent,%20The%20(1993)
## 1193 http://us.imdb.com/M/title-exact?Pred%20dozhdot%20(1994)
## 1194 http://us.imdb.com/M/title-exact?Once%20Were%20Warriors%20(1994)
## 1195 http://us.imdb.com/M/title-exact?Fresa%20y%20chocolate%20(1993)
## 1196 http://us.imdb.com/M/title-exact?Nuits%20fauves,%20Les%20(1992)
## 1197 http://us.imdb.com/M/title-exact?Family%20Thing,%20A%20(1996)
## 1198 http://us.imdb.com/M/title-exact?Plein%20soleil%20(1960)
## 1199 http://us.imdb.com/M/title-exact?Dellamorte%20Dellamore%20(1994)
## 1200 http://us.imdb.com/M/title-exact?Kim%20(1950)
## 1201 http://us.imdb.com/M/title-exact?Marlene%20Dietrich:%20Shadow%20and%20Light%20(1996)%20(TV)
## 1202 http://us.imdb.com/M/title-exact?Bewegte%20Mann,%20Der%20(1994)
## 1203 http://us.imdb.com/M/title-exact?Top%20Hat%20(1935)
## 1204 http://us.imdb.com/M/title-exact?To%20Be%20or%20Not%20to%20Be%20(1942)
## 1205 http://us.imdb.com/M/title-exact?Secret%20Agent,%20The%20(1996)
## 1206 http://us.imdb.com/M/title-exact?Amos%20&%20Andrew%20(1993)
## 1207 http://us.imdb.com/M/title-exact?Jade%20(1995)
## 1208 http://us.imdb.com/M/title-exact?Kiss%20of%20Death%20(1995)
## 1209 http://us.imdb.com/M/title-exact?Mixed%20Nuts%20(1994)
## 1210 http://us.imdb.com/M/title-exact?Virtuosity%20(1995)
## 1211 http://us.imdb.com/M/title-exact?Blue%20Sky%20(1994)
## 1212 http://us.imdb.com/M/title-exact?Flesh%20and%20Bone%20(1993)
## 1213 http://us.imdb.com/M/title-exact?Guilty%20as%20Sin%20(1993)
## 1214 http://us.imdb.com/M/title-exact?Ai%20no%20Corrida%20(1976)
## 1215 http://us.imdb.com/M/title-exact?Barb%20Wire%20(1996)
## 1216 http://us.imdb.com/M/title-exact?Kissed%20%281996%29
## 1217 http://us.imdb.com/Title?Assassins+(1995)
## 1218 http://us.imdb.com/M/title-exact?Friday%20(1995)
## 1219 http://us.imdb.com/M/title-exact?Goofy%20Movie,%20A%20(1995)
## 1220 http://us.imdb.com/M/title-exact?Higher%20Learning%20(1995)
## 1221 http://us.imdb.com/M/title-exact?When%20a%20Man%20Loves%20a%20Woman%20(1994)
## 1222 http://us.imdb.com/M/title-exact?Judgment%20Night%20(1993)
## 1223 http://us.imdb.com/M/title-exact?King%20of%20the%20Hill%20(1993)
## 1224 http://us.imdb.com/M/title-exact?Scout,%20The%20(1994)
## 1225 http://us.imdb.com/M/title-exact?Angus%20(1995)
## 1226 http://us.imdb.com/M/title-exact?Night%20Falls%20on%20Manhattan%20(1997)
## 1227 http://us.imdb.com/M/title-exact?Awfully%20Big%20Adventure,%20An%20(1995)
## 1228 http://us.imdb.com/M/title-exact?Under%20Siege%202:%20Dark%20Territory%20(1995)
## 1229 http://us.imdb.com/M/title-exact?Poison%20Ivy%20II%20(1995)
## 1230 http://us.imdb.com/Title?Pr%EAt-%E0-Porter+(1994)
## 1231 http://us.imdb.com/M/title-exact?Marked%20for%20Death%20(1990)
## 1232 http://us.imdb.com/M/title-exact?Madonna:%20Truth%20or%20Dare%20(1991)
## 1233 http://us.imdb.com/Title?N%E9nette+et+Boni+(1996)
## 1234 http://us.imdb.com/Title?Chairman+of+the+Board+(1998)
## 1235 http://us.imdb.com/M/title-exact?imdb-title-109266
## 1236 http://us.imdb.com/M/title-exact?imdb-title-119845
## 1237 http://us.imdb.com/M/title-exact?imdb-title-117994
## 1238 http://us.imdb.com/M/title-exact?imdb-title-118230
## 1239 http://us.imdb.com/M/title-exact?Cutthroat%20Island%20(1995)
## 1240 http://us.imdb.com/M/title-exact?Kokaku%20Kidotai%20(1995)
## 1241 http://us.imdb.com/M/title-exact?Van%2C%20The%20(1996)
## 1242 http://us.imdb.com/M/title-exact?Vieille%20qui%20marchait%20dans%20la%20mer,%20La%20(1991)
## 1243 http://us.imdb.com/M/title-exact?Night+Flier+(1997)
## 1244 http://us.imdb.com/M/title-exact?Metro%20(1997)
## 1245 http://us.imdb.com/M/title-exact?Gridlock'd%20(1997)
## 1246 http://us.imdb.com/Title?Bushwhacked+(1995/I)
## 1247 http://us.imdb.com/Title?Bad+Girls+(1994/I)
## 1248 http://us.imdb.com/M/title-exact?Blink%20(1994)
## 1249 http://us.imdb.com/M/title-exact?For%20Love%20or%20Money%20(1993)
## 1250 http://us.imdb.com/M/title-exact?Best%20of%20the%20Best%203:%20No%20Turning%20Back%20(1995)
## 1251 http://us.imdb.com/M/title-exact?Mille%20et%20une%20recettes%20du%20cuisinier%20amoureux%2C%20Les%20%281996%29
## 1252 http://us.imdb.com/M/title-exact?M%E9pris%2C+Le+(1963)
## 1253 http://us.imdb.com/M/title-exact?Tie%20That%20Binds,%20The%20(1995)
## 1254 http://us.imdb.com/M/title-exact?Gone%20Fishin'%20(1997)
## 1255 http://us.imdb.com/M/title-exact?Broken%20English%20%281996%29
## 1256 http://us.imdb.com/M/title-exact?Designated%20Mourner%2C%20The%20%281997%29
## 1257 http://us.imdb.com/M/title-exact?Designated%20Mourner%2C%20The%20%281997%29
## 1258 http://us.imdb.com/M/title-exact?Trial%20and%20Error%20%281997%29
## 1259 http://us.imdb.com/M/title-exact?Pie%20in%20the%20Sky%20(1995)
## 1260 http://us.imdb.com/M/title-exact?Total%20Eclipse%20(1995)
## 1261 http://us.imdb.com/M/title-exact?Run%20of%20the%20Country,%20The%20(1995)
## 1262 http://us.imdb.com/M/title-exact?Walking%20and%20Talking%20(1996)
## 1263 http://us.imdb.com/M/title-exact?Foxfire%20(1996)
## 1264 http://us.imdb.com/M/title-exact?Nothing%20to%20Lose%20(1994)
## 1265 http://us.imdb.com/M/title-exact?Star+Maps+(1997)
## 1266 http://us.imdb.com/M/title-exact?Pane%20e%20Cioccolata%20(1973)
## 1267 http://us.imdb.com/M/title-exact?Clockers%20(1995)
## 1268 http://us.imdb.com/M/title-exact?Lunes%20de%20fiel%20(1992)
## 1269 http://us.imdb.com/M/title-exact?Love%20in%20the%20Afternoon%20(1957)
## 1270 http://us.imdb.com/M/title-exact?Life%20with%20Mikey%20(1993)
## 1271 http://us.imdb.com/M/title-exact?North%20(1994)
## 1272 http://us.imdb.com/M/title-exact?Talking%20About%20Sex%20(1994)
## 1273 http://us.imdb.com/M/title-exact?Color%20of%20Night%20(1994)
## 1274 http://us.imdb.com/M/title-exact?Robocop%203%20(1993)
## 1275 http://us.imdb.com/M/title-exact?Killer%20(1994)
## 1276 http://us.imdb.com/M/title-exact?Sunset%20Park%20(1996)
## 1277 http://us.imdb.com/M/title-exact?Set%20It%20Off%20(1996)
## 1278 http://us.imdb.com/M/title-exact?Selena%20(1997)
## 1279 http://us.imdb.com/M/title-exact?Wild+America+(1997)
## 1280 http://us.imdb.com/M/title-exact?Gang+Related+(1997)
## 1281 http://us.imdb.com/M/title-exact?Manny%20&%20Lo%20(1996)
## 1282 http://us.imdb.com/M/title-exact?Grass%20Harp,%20The%20(1995)
## 1283 http://us.imdb.com/M/title-exact?Out+to+Sea+(1997)
## 1284 http://us.imdb.com/M/title-exact?Before%20and%20After%20(1996)
## 1285 http://us.imdb.com/M/title-exact?Princess%20Caraboo%20(1994)
## 1286 http://us.imdb.com/M/title-exact?Shall%20We%20Dance?%20(1937)
## 1287 http://us.imdb.com/M/title-exact?Ed%20(1996)
## 1288 http://us.imdb.com/M/title-exact?Denise%20Calls%20Up%20(1995)
## 1289 http://us.imdb.com/M/title-exact?Jack%20and%20Sarah%20(1995)
## 1290 http://us.imdb.com/M/title-exact?Country%20Life%20(1994)
## 1291 http://us.imdb.com/M/title-exact?Celtic%20Pride%20(1996)
## 1292 http://us.imdb.com/M/title-exact?Simple+Wish%2C+A+(1997)
## 1293 http://us.imdb.com/M/title-exact?imdb-title-120478
## 1294 http://us.imdb.com/Title?Ayn+Rand%3A+A+Sense+of+Life+(1997)
## 1295 http://us.imdb.com/M/title-exact?Kicked+in+the+Head+(1997)
## 1296 http://us.imdb.com/M/title-exact?Indian+Summer+(1996)
## 1297 http://us.imdb.com/M/title-exact?Love%20Affair%20(1994)
## 1298 http://us.imdb.com/M/title-exact?Band%20Wagon,%20The%20(1953)
## 1299 http://us.imdb.com/M/title-exact?Penny%20Serenade%20(1941)
## 1300 http://us.imdb.com/Title?%27Til+There+Was+You+(1997)
## 1301 http://us.imdb.com/M/title-exact?Stripes+(1981)
## 1302 http://us.imdb.com/M/title-exact?Late%20Bloomers%20%281996%29
## 1303 http://us.imdb.com/M/title-exact?Getaway,%20The%20(1994)
## 1304 http://us.imdb.com/Title?New+York+Cop+(1996)
## 1305 http://us.imdb.com/M/title-exact?National%20Lampoon's%20Senior%20Trip%20(1995)
## 1306 http://us.imdb.com/M/title-exact?Delta%20of%20Venus%20(1994)
## 1307 http://us.imdb.com/M/title-exact?Carmen%20Miranda:%20Bananas%20Is%20My%20Business%20(1994)
## 1308 http://us.imdb.com/M/title-exact?Babyfever%20(1994)
## 1309 http://us.imdb.com/M/title-exact?Very%20Natural%20Thing,%20A%20(1974)
## 1310 http://us.imdb.com/M/title-exact?Walk%20in%20the%20Sun,%20A%20(1945)
## 1311 http://us.imdb.com/M/title-exact?Waiting%20to%20Exhale%20(1995)
## 1312 http://us.imdb.com/M/title-exact?Pompatus%20of%20Love,%20The%20(1996)
## 1313 http://us.imdb.com/M/title-exact?Palmetto+(1998)
## 1314 http://us.imdb.com/M/title-exact?Surviving%20the%20Game%20(1994)
## 1315 http://us.imdb.com/M/title-exact?Inventing%20the%20Abbotts%20%281997%29
## 1316 http://us.imdb.com/M/title-exact?imdb-title-119314
## 1317 http://us.imdb.com/M/title-exact?Journey%20of%20August%20King,%20The%20(1995)
## 1318 http://us.imdb.com/Title?Catwalk+(1995/I)
## 1319 http://us.imdb.com/M/title-exact?Neon%20Bible,%20The%20(1995)
## 1320 http://us.imdb.com/M/title-exact?Homage%20(1995)
## 1321 http://us.imdb.com/Title?Open+Season+(1996)
## 1322 http://us.imdb.com/Title?M%E9tisse+(1993)
## 1323 http://us.imdb.com/M/title-exact?Wu%20Kui%20(1994)
## 1324 http://us.imdb.com/M/title-exact?Loaded%20(1994)
## 1325 http://us.imdb.com/M/title-exact?August%20(1996)
## 1326 http://us.imdb.com/M/title-exact?Boys%20(1996)
## 1327 http://us.imdb.com/Title?Captives+(1994)
## 1328 http://us.imdb.com/M/title-exact?Of%20Love%20and%20Shadows%20(1994)
## 1329 http://us.imdb.com/Title?Low+Life,+The+(1994/I)
## 1330 http://us.imdb.com/Title?Un+%E9t%E9+inoubliable+(1994)
## 1331 http://us.imdb.com/M/title-exact?Last%20Klezmer%3A%20Leopold%20Kozlowski%2C%20His%20Life%20and%20Music%2C%20The%20%281995%29
## 1332 http://us.imdb.com/M/title-exact?En%20compagnie%20d'Antonin%20Artaud%20(1993)
## 1333 http://us.imdb.com/M/title-exact?Sibak%20(1994)
## 1334 http://us.imdb.com/Title?Somebody+to+Love+(1996)
## 1335 http://us.imdb.com/M/title-exact?American%20Buffalo%20(1996)
## 1336 http://us.imdb.com/M/title-exact?Kazaam%20(1996)
## 1337 http://us.imdb.com/M/title-exact?Larger%20Than%20Life%20(1996)
## 1338 http://us.imdb.com/Title?Two+Deaths+(1995)
## 1339 http://us.imdb.com/M/title-exact?Stefano%20Quantestorie%20%281993%29
## 1340 http://us.imdb.com/M/title-exact?Crude%20Oasis,%20The%20(1995)
## 1341 http://us.imdb.com/M/title-exact?Hedd%20Wyn%20(1992)
## 1342 http://us.imdb.com/M/title-exact?Convento,%20O%20(1995)
## 1343 http://us.imdb.com/M/title-exact?Lotto%20Land%20(1995)
## 1344 http://us.imdb.com/M/title-exact?Story%20of%20Xinghua,%20The%20(1993)
## 1345 http://us.imdb.com/M/title-exact?Tianguo%20Niezi%20(1994)
## 1346 http://us.imdb.com/M/title-exact?Dingo%20(1992)
## 1347 http://us.imdb.com/M/title-exact?Narayama%20Bushiko%20%281958%29
## 1348 http://us.imdb.com/Title?Un+week-end+sur+deux+(1990)
## 1349 http://us.imdb.com/M/title-exact?Mille%20bolle%20blu%20(1993)
## 1350 http://us.imdb.com/Title?Wuya+yu+maque+(1949)
## 1351 http://us.imdb.com/M/title-exact?Lover's%20Knot%20(1996)
## 1352 http://us.imdb.com/M/title-exact?Schatten%20der%20Engel%20(1976)
## 1353 http://us.imdb.com/M/title-exact?06%20(1994)
## 1354 http://us.imdb.com/M/title-exact?Venice/Venice%20(1992)
## 1355 http://us.imdb.com/M/title-exact?Infinity%20(1996)
## 1356 http://us.imdb.com/M/title-exact?Ed%27s%20Next%20Move%20%281996%29
## 1357 http://us.imdb.com/M/title-exact?For%20the%20Moment%20(1994)
## 1358
## 1359
## 1360 http://us.imdb.com/M/title-exact?Vie%20sexuelle%20des%20Belges,%20La%20(1994)
## 1361 http://us.imdb.com/M/title-exact?Search%20for%20One-eye%20Jimmy,%20The%20(1996)
## 1362 http://us.imdb.com/M/title-exact?American%20Strays%20(1996)
## 1363 http://us.imdb.com/M/title-exact?Leopard%20Son,%20The%20(1996)
## 1364 http://us.imdb.com/M/title-exact?Bird%20of%20Prey%20(1996)
## 1365 http://us.imdb.com/M/title-exact?Johnny%20100%20Pesos%20(1993)
## 1366 http://us.imdb.com/M/title-exact?JLG/JLG%20-%20autoportrait%20de%20d%E9cembre%20%281994%29
## 1367 http://us.imdb.com/M/title-exact?Faust%20%281994%29
## 1368 http://us.imdb.com/M/title-exact?Mina%20Tannenbaum%20(1994)
## 1369 http://us.imdb.com/M/title-exact?Cristo%20proibito%2C%20Il%20%281950%29
## 1370 http://us.imdb.com/M/title-exact?J'ai%20pas%20sommeil%20(1994)
## 1371 http://us.imdb.com/M/title-exact?Machine,%20La%20(1994)
## 1372 http://us.imdb.com/Title?Stranger,+The+(1994/II)
## 1373 http://us.imdb.com/M/title-exact?Good%20Morning%20(1971)
## 1374 http://us.imdb.com/M/title-exact?Falling%20in%20Love%20Again%20(1980)
## 1375 http://us.imdb.com/M/title-exact?Cement%20Garden,%20The%20(1993)
## 1376 http://us.imdb.com/M/title-exact?Meet%20Wally%20Sparks%20(1997)
## 1377 http://us.imdb.com/M/title-exact?Hotel%20de%20Love%20(1996)
## 1378 http://us.imdb.com/M/title-exact?Rhyme%20%26%20Reason%20(1997)
## 1379 http://us.imdb.com/M/title-exact?Love%20and%20Other%20Catastrophes%20%281996%29
## 1380 http://us.imdb.com/Title?Hollow+Reed+(1996)
## 1381 http://us.imdb.com/M/title-exact?Losing%20Chase%20%281996%29
## 1382 http://us.imdb.com/M/title-exact?Bonheur%2C%20Le%20%281965%29
## 1383 http://us.imdb.com/M/title-exact?Second%20Jungle%20Book%3A%20Mowgli%20%26%20Baloo%2C%20The%20%281997%29
## 1384 http://us.imdb.com/M/title-exact?Squeeze%20%281996%29
## 1385 http://us.imdb.com/M/title-exact?Roseanna%27s+Grave+(1997)
## 1386 http://us.imdb.com/M/title-exact?Tetsuo+II%3A+Body+Hammer+(1992)
## 1387 http://us.imdb.com/M/title-exact?Fall+(1997)
## 1388 http://us.imdb.com/M/title-exact?Gabbeh+(1996)
## 1389 http://us.imdb.com/M/title-exact?Mondo+(1996)
## 1390 http://us.imdb.com/M/title-exact?Innocent+Sleep%2C+The+(1995)
## 1391 http://us.imdb.com/M/title-exact?For+Ever+Mozart+(1996)
## 1392 http://us.imdb.com/M/title-exact?Locusts%2C+The+(1997)
## 1393 http://us.imdb.com/M/title-exact?Stag+(1997)
## 1394 http://us.imdb.com/M/title-exact?Swept+from+the+Sea+(1997)
## 1395 http://us.imdb.com/Title?Hurricane+Streets+(1998)
## 1396 http://us.imdb.com/M/title-exact?Stonewall%20(1995)
## 1397 http://us.imdb.com/M/title-exact?Of%20Human%20Bondage%20(1934)
## 1398 http://us.imdb.com/M/title-exact?Anna%20(1996)
## 1399 http://us.imdb.com/M/title-exact?imdb-title-120222
## 1400 http://us.imdb.com/M/title-exact?Picture%20Bride%20(1995)
## 1401 http://us.imdb.com/M/title-exact?M.%20Butterfly%20(1993)
## 1402 http://us.imdb.com/M/title-exact?Io%20speriamo%20che%20me%20la%20cavo%20(1993)
## 1403 http://us.imdb.com/M/title-exact?Caro%20diario%20(1994)
## 1404 http://us.imdb.com/M/title-exact?Withnail%20and%20I%20(1987)
## 1405 http://us.imdb.com/M/title-exact?Boy%27s%20Life%202%20(1997)
## 1406 http://us.imdb.com/M/title-exact?When%20Night%20is%20Falling%20(1995)
## 1407 http://us.imdb.com/M/title-exact?Specialist,%20The%20(1994)
## 1408 http://us.imdb.com/M/title-exact?Gordy%20(1995)
## 1409 http://us.imdb.com/M/title-exact?Swan%20Princess,%20The%20(1994)
## 1410 http://us.imdb.com/M/title-exact?Harlem%20(1993)
## 1411 http://us.imdb.com/M/title-exact?Barbarella%20(1968)
## 1412 http://us.imdb.com/M/title-exact?Land%20Before%20Time%20III%3A%20The%20Time%20of%20the%20Great%20Giving%20%281995%29%20%28V%29
## 1413 http://us.imdb.com/M/title-exact?Street%20Fighter%20(1994)
## 1414 http://us.imdb.com/M/title-exact?Coldblooded%20(1995)
## 1415 http://us.imdb.com/M/title-exact?Next%20Karate%20Kid,%20The%20(1994)
## 1416 http://us.imdb.com/M/title-exact?No%20Escape%20(1994)
## 1417 http://us.imdb.com/M/title-exact?Turning%2C%20The%20%281992%29
## 1418 http://us.imdb.com/M/title-exact?Joy+Luck+Club%2C+The+(1993)
## 1419 http://us.imdb.com/M/title-exact?Highlander%20III:%20The%20Sorcerer%20(1994)
## 1420 http://us.imdb.com/M/title-exact?imdb-title-119195
## 1421 http://us.imdb.com/M/title-exact?Mi%20vida%20loca%20(1993)
## 1422 http://us.imdb.com/M/title-exact?Suture%20(1993)
## 1423 http://us.imdb.com/M/title-exact?Walking%20Dead,%20The%20(1995)
## 1424 http://us.imdb.com/M/title-exact?I%20Like%20It%20Like%20That%20(1994)
## 1425 http://us.imdb.com/M/title-exact?I'll%20Do%20Anything%20(1994)
## 1426 http://us.imdb.com/M/title-exact?Grace%20of%20My%20Heart%20(1996)
## 1427 http://us.imdb.com/M/title-exact?Drunks%20(1995)
## 1428 http://us.imdb.com/M/title-exact?SubUrbia%20(1997)
## 1429 http://us.imdb.com/Title?Sliding+Doors+(1998)
## 1430 http://us.imdb.com/M/title-exact?imdb-title-119352
## 1431 http://us.imdb.com/Title?Legal+Deceit+(1997)
## 1432 http://us.imdb.com/Title?Mighty,+The+(1998)
## 1433 http://us.imdb.com/M/title-exact?imdb-title-119655
## 1434 http://us.imdb.com/M/title-exact?imdb-title-120122
## 1435 http://us.imdb.com/M/title-exact?Steal%20Big,%20Steal%20Little%20(1995)
## 1436 http://us.imdb.com/M/title-exact?Mr.%20Jones%20(1993)
## 1437 http://us.imdb.com/M/title-exact?House%20Party%203%20(1994)
## 1438 http://us.imdb.com/M/title-exact?Panther%20(1995)
## 1439 http://us.imdb.com/M/title-exact?Jason's%20Lyric%20(1994)
## 1440 http://us.imdb.com/M/title-exact?Above%20the%20Rim%20(1994)
## 1441 http://us.imdb.com/M/title-exact?Moonlight%20and%20Valentino%20(1995)
## 1442 http://us.imdb.com/M/title-exact?Scarlet%20Letter,%20The%20(1995)
## 1443 http://us.imdb.com/M/title-exact?8%20Seconds%20(1994)
## 1444 http://us.imdb.com/Title?That+Darn+Cat%21+(1965)
## 1445 http://us.imdb.com/M/title-exact?Ladybird%20Ladybird%20(1994)
## 1446 http://us.imdb.com/M/title-exact?Bye%20Bye,%20Love%20(1995)
## 1447 http://us.imdb.com/M/title-exact?Century%20(1993)
## 1448 http://us.imdb.com/Title?Ma+saison+pr%E9f%E9r%E9e+(1993)
## 1449 http://us.imdb.com/M/title-exact?Pather%20Panchali%20(1955)
## 1450 http://us.imdb.com/M/title-exact?Golden%20Earrings%20%281947%29
## 1451 http://us.imdb.com/M/title-exact?Foreign%20Correspondent%20(1940)
## 1452 http://us.imdb.com/M/title-exact?Lady%20of%20Burlesque%20(1943)
## 1453 http://us.imdb.com/M/title-exact?Angel%20on%20My%20Shoulder%20(1946)
## 1454 http://us.imdb.com/M/title-exact?Angel%20and%20the%20Badman%20(1947)
## 1455 http://us.imdb.com/M/title-exact?Outlaw,%20The%20(1943)
## 1456 http://us.imdb.com/M/title-exact?Beat%20the%20Devil%20(1954)
## 1457 http://us.imdb.com/M/title-exact?Love%20Is%20All%20There%20Is%20(1996)
## 1458 http://us.imdb.com/M/title-exact?Damsel%20in%20Distress,%20A%20(1937)
## 1459 http://us.imdb.com/M/title-exact?Madame%20Butterfly%20(1995)
## 1460 http://us.imdb.com/M/title-exact?Sleepover%20(1995)
## 1461 http://us.imdb.com/M/title-exact?Here%20Comes%20Cookie%20(1935)
## 1462 http://us.imdb.com/M/title-exact?Voleurs,%20Les%20(1996)
## 1463 http://us.imdb.com/M/title-exact?imdb-title-118764
## 1464 http://us.imdb.com/Title?Stars+Fell+on+Henrietta,+The+(1995)
## 1465 http://us.imdb.com/M/title-exact?Last%20Summer%20in%20the%20Hamptons%20(1995)
## 1466 http://us.imdb.com/M/title-exact?Margaret's%20Museum%20(1995)
## 1467 http://us.imdb.com/M/title-exact?Saint%20of%20Fort%20Washington,%20The%20(1993)
## 1468 http://us.imdb.com/M/title-exact?Cure,%20The%20(1995)
## 1469 http://us.imdb.com/M/title-exact?Tom%20and%20Huck%20(1995)
## 1470 http://us.imdb.com/M/title-exact?Gumby:%20The%20Movie%20(1995)
## 1471 http://us.imdb.com/M/title-exact?Hideaway%20(1995)
## 1472 http://us.imdb.com/M/title-exact?Visiteurs,%20Les%20(1993)
## 1473 http://us.imdb.com/M/title-exact?Little%20Princess,%20The%20(1939)
## 1474 http://us.imdb.com/M/title-exact?Nina%20Takes%20a%20Lover%20(1994)
## 1475 http://us.imdb.com/M/title-exact?Bhaji%20on%20the%20Beach%20(1993)
## 1476 http://us.imdb.com/M/title-exact?Raw%20Deal%20(1948)
## 1477 http://us.imdb.com/M/title-exact?Nightwatch%20(1997)
## 1478 http://us.imdb.com/M/title-exact?Dead%20Presidents%20(1995)
## 1479 http://us.imdb.com/Title?Reckless+(1995/I)
## 1480 http://us.imdb.com/M/title-exact?Herbie%20Rides%20Again%20(1974)
## 1481 http://us.imdb.com/M/title-exact?S.F.W.%20(1994)
## 1482 http://us.imdb.com/M/title-exact?Gate%20of%20Heavenly%20Peace,%20The%20(1995)
## 1483 http://us.imdb.com/Title?Man+in+the+Iron+Mask,+The+(1998/I)
## 1484 http://us.imdb.com/M/title-exact?Jerky%20Boys,%20The%20(1994)
## 1485 http://us.imdb.com/M/title-exact?Colonel%20Chabert,%20Le%20(1994)
## 1486 http://us.imdb.com/M/title-exact?Girl%20in%20the%20Cadillac%20(1995)
## 1487 http://us.imdb.com/M/title-exact?Even%20Cowgirls%20Get%20the%20Blues%20(1993)
## 1488 http://us.imdb.com/M/title-exact?Germinal%20(1993)
## 1489 http://us.imdb.com/M/title-exact?Chasers%20(1994)
## 1490 http://us.imdb.com/M/title-exact?Fausto%20%281993%29
## 1491 http://us.imdb.com/M/title-exact?Tough%20and%20Deadly%20(1995)
## 1492 http://us.imdb.com/Title?Okno+v+Parizh+(1994)
## 1493 http://us.imdb.com/M/title-exact?Modern%20Affair,%20A%20(1995)
## 1494 http://us.imdb.com/M/title-exact?Mostro,%20Il%20(1994)
## 1495 http://us.imdb.com/Title?Flirt+(1995/I)
## 1496 http://us.imdb.com/M/title-exact?Carpool%20(1996)
## 1497 http://us.imdb.com/M/title-exact?Line%20King,%20The%20(1996)
## 1498 http://us.imdb.com/M/title-exact?Farmer%20&%20Chase%20(1995)
## 1499 http://us.imdb.com/M/title-exact?Grosse%20fatigue%20(1994)
## 1500 http://us.imdb.com/M/title-exact?Santa%20with%20Muscles%20(1996)
## 1501 http://us.imdb.com/M/title-exact?Kavkazsky%20Plennik%20(1996)
## 1502 http://us.imdb.com/Title?Naked+in+New+York+(1994)
## 1503 http://us.imdb.com/M/title-exact?Gold%20Diggers:%20The%20Secret%20of%20Bear%20Mountain%20(1995)
## 1504 http://us.imdb.com/M/title-exact?Bewegte%20Mann%2C%20Der%20%281994%29
## 1505 http://us.imdb.com/M/title-exact?Killer:%20A%20Journal%20of%20Murder%20(1995)
## 1506 http://us.imdb.com/M/title-exact?Nelly%20%26%20Monsieur%20Arnaud%20%281995%29
## 1507 http://us.imdb.com/M/title-exact?Trois%20vies%20et%20une%20seule%20mort%20(1996)
## 1508 http://us.imdb.com/M/title-exact?Babysitter,%20The%20(1995)
## 1509 http://us.imdb.com/M/title-exact?Getting%20Even%20with%20Dad%20(1994)
## 1510 http://us.imdb.com/M/title-exact?Mad%20Dog%20Time%20(1996)
## 1511 http://us.imdb.com/M/title-exact?Children%20of%20the%20Revolution%20%281996%29
## 1512 http://us.imdb.com/M/title-exact?Apur%20Sansar%20(1959)
## 1513 http://us.imdb.com/M/title-exact?Sprung%20%281997%29
## 1514 http://us.imdb.com/M/title-exact?Dream+With+the+Fishes+(1997)
## 1515 http://us.imdb.com/M/title-exact?Wings%20of%20Courage%20(1995)
## 1516 http://us.imdb.com/M/title-exact?Wedding%20Gift,%20The%20(1994)%20(TV)
## 1517 http://us.imdb.com/M/title-exact?Race%20the%20Sun%20(1996)
## 1518 http://us.imdb.com/M/title-exact?Losing%20Isaiah%20(1995)
## 1519 http://us.imdb.com/M/title-exact?New%20Jersey%20Drive%20(1995)
## 1520 http://us.imdb.com/M/title-exact?Fear,%20The%20(1995)
## 1521 http://us.imdb.com/M/title-exact?Mr.%20Wonderful%20(1993)
## 1522 http://us.imdb.com/M/title-exact?Trial%20by%20Jury%20(1994)
## 1523 http://us.imdb.com/M/title-exact?Good%20Man%20in%20Africa,%20A%20(1994)
## 1524 http://us.imdb.com/Title?Kaspar+Hauser+(1993)
## 1525 http://us.imdb.com/Title?Object+of+My+Affection,+The+(1998)
## 1526 http://us.imdb.com/M/title-exact?Witness+(1985)
## 1527 http://us.imdb.com/M/title-exact?imdb-title-120820
## 1528 http://us.imdb.com/M/title-exact?Nowhere%20%281997%29
## 1529 http://us.imdb.com/M/title-exact?Underground%20(1995)
## 1530 http://us.imdb.com/M/title-exact?Jefferson%20in%20Paris%20(1995)
## 1531 http://us.imdb.com/M/title-exact?Far%20From%20Home:%20The%20Adventures%20of%20Yellow%20Dog%20(1995)
## 1532 http://us.imdb.com/M/title-exact?Foreign%20Student%20(1994)
## 1533 http://us.imdb.com/M/title-exact?De%20Eso%20No%20Se%20Habla%20(1993)
## 1534 http://us.imdb.com/M/title-exact?Twin%20Town%20%281997%29
## 1535 http://us.imdb.com/M/title-exact?Enfer,%20L'%20(1994)
## 1536 http://us.imdb.com/M/title-exact?Aiqing%20Wansui%20(1994)
## 1537 http://us.imdb.com/M/title-exact?Cosi%20(1996)
## 1538 http://us.imdb.com/M/title-exact?All%20Over%20Me%20%281997%29
## 1539 http://us.imdb.com/M/title-exact?Being%20Human%20(1993)
## 1540 http://us.imdb.com/M/title-exact?Amazing%20Panda%20Adventure,%20The%20(1995)
## 1541 http://us.imdb.com/M/title-exact?Beans%20of%20Egypt,%20Maine,%20The%20(1994)
## 1542 http://us.imdb.com/M/title-exact?Scarlet%20Letter,%20The%20(1926)
## 1543 http://us.imdb.com/M/title-exact?Johns%20(1996)
## 1544 http://us.imdb.com/M/title-exact?It%20Takes%20Two%20(1995)
## 1545 http://us.imdb.com/M/title-exact?Frankie%20Starlight%20(1995)
## 1546 http://us.imdb.com/M/title-exact?Cienie%20(1988)
## 1547 http://us.imdb.com/M/title-exact?Show,%20The%20(1995)
## 1548 http://us.imdb.com/M/title-exact?Courtyard,%20The%20(1995)%20(TV)
## 1549 http://us.imdb.com/M/title-exact?Dream%20Man%20(1995)
## 1550 http://us.imdb.com/M/title-exact?Destiny%20Turns%20on%20the%20Radio%20(1995)
## 1551 http://us.imdb.com/M/title-exact?Glass%20Shield,%20The%20(1994)
## 1552 http://us.imdb.com/M/title-exact?Hunted,%20The%20(1995)
## 1553 http://us.imdb.com/M/title-exact?Underneath,%20The%20(1995)
## 1554 http://us.imdb.com/M/title-exact?Safe%20Passage%20(1994)
## 1555 http://us.imdb.com/M/title-exact?Secret%20Adventures%20of%20Tom%20Thumb,%20The%20(1993)
## 1556 http://us.imdb.com/M/title-exact?Condition%20Red%20(1995)
## 1557 http://us.imdb.com/M/title-exact?Yankee%20Zulu%20(1994)
## 1558 http://us.imdb.com/M/title-exact?Aparajito%20(1956)
## 1559 http://us.imdb.com/M/title-exact?Hostile%20Intentions%20(1994)
## 1560 http://us.imdb.com/M/title-exact?Coup%20de%20torchon%20(1981)
## 1561 http://us.imdb.com/M/title-exact?Tigrero:%20A%20Film%20That%20Was%20Never%20Made%20(1994)
## 1562 http://us.imdb.com/M/title-exact?Oeil%20de%20Vichy,%20L'%20(1993)
## 1563 http://us.imdb.com/M/title-exact?Versprechen,%20Das%20(1994)
## 1564 http://us.imdb.com/M/title-exact?To%20Cross%20the%20Rubicon%20(1991)
## 1565 http://us.imdb.com/M/title-exact?Daens%20(1992)
## 1566 http://us.imdb.com/Title?Man+from+Down+Under,+The+(1943)
## 1567 http://us.imdb.com/M/title-exact?Careful%20(1992)
## 1568 http://us.imdb.com/M/title-exact?Vermont%20Is%20For%20Lovers%20(1992)
## 1569 http://us.imdb.com/M/title-exact?Vie%20est%20belle,%20La%20(1987)
## 1570 http://us.imdb.com/M/title-exact?Quartier%20Mozart%20(1992)
## 1571 http://us.imdb.com/M/title-exact?Touki%20Bouki%20(1973)
## 1572 http://us.imdb.com/M/title-exact?Wend%20Kuuni%20(1982)
## 1573 http://us.imdb.com/M/title-exact?Tre%20passi%20nel%20delirio%20(1968)
## 1574 http://us.imdb.com/M/title-exact?Pharaoh's%20Army%20(1995)
## 1575 http://us.imdb.com/M/title-exact?Yo,%20la%20Peor%20de%20Todas%20(1990)
## 1576 http://us.imdb.com/M/title-exact?Hol%20volt,%20hol%20nem%20volt%20(1987)
## 1577 http://us.imdb.com/Title?Mort+en+ce+jardin,+La+(1956)
## 1578 http://us.imdb.com/M/title-exact?Collectionneuse,%20La%20(1967)
## 1579 http://us.imdb.com/Title?B%E2ton+rouge+(1988)
## 1580 http://us.imdb.com/M/title-exact?Liebelei%20(1933)
## 1581 http://us.imdb.com/M/title-exact?Woman%20in%20Question,%20The%20(1950)
## 1582 http://us.imdb.com/M/title-exact?T-Men%20(1947)
## 1583 http://us.imdb.com/M/title-exact?Zaproszenie%20(1986)
## 1584 http://us.imdb.com/M/title-exact?Symphonie%20pastorale,%20La%20(1946)
## 1585 http://us.imdb.com/M/title-exact?American%20Dream%20(1990)
## 1586 http://us.imdb.com/M/title-exact?Lashou%20Shentan%20(1992)
## 1587 http://us.imdb.com/M/title-exact?Terror%20in%20a%20Texas%20Town%20(1958)
## 1588 http://us.imdb.com/M/title-exact?Salut%20cousin!%20(1996)
## 1589 http://us.imdb.com/Title?Schizopolis+(1996)
## 1590 http://us.imdb.com/M/title-exact?En%20avoir%20%28ou%20pas%29%20%281995%29
## 1591 http://us.imdb.com/M/title-exact?imdb-title-112913
## 1592 http://us.imdb.com/M/title-exact?imdb-title-119594
## 1593 http://us.imdb.com/M/title-exact?Death%20in%20Brunswick%20(1991)
## 1594 http://us.imdb.com/Title?Everest+(1998)
## 1595 http://us.imdb.com/M/title-exact?Shopping%20(1994)
## 1596 http://us.imdb.com/M/title-exact?Nemesis%202:%20Nebula%20(1995)
## 1597 http://us.imdb.com/M/title-exact?Romper%20Stomper%20(1992)
## 1598 http://us.imdb.com/M/title-exact?City%20of%20Industry%20(1997)
## 1599 http://us.imdb.com/M/title-exact?Someone%20Else's%20America%20(1995)
## 1600 http://us.imdb.com/M/title-exact?Guantanamera%20(1994)
## 1601 http://us.imdb.com/M/title-exact?imdb-title-119819
## 1602 http://us.imdb.com/Title?Price+Above+Rubies,+A+(1998)
## 1603 http://us.imdb.com/M/title-exact?Angela%20(1995)
## 1604 http://us.imdb.com/M/title-exact?He%20Walked%20by%20Night%20(1948)
## 1605 http://us.imdb.com/M/title-exact?Love+Serenade+(1996)
## 1606 http://us.imdb.com/M/title-exact?Liar+(1997)
## 1607 http://us.imdb.com/Title?Hurricane+Streets+(1998)
## 1608 http://us.imdb.com/M/title-exact?Buddy%20%281997%29
## 1609 http://us.imdb.com/M/title-exact?B%2EA%2EP%2ES%2E%20(1997)
## 1610 http://us.imdb.com/Title?Truth+or+Consequences,+N.M.+(1997)
## 1611 http://us.imdb.com/M/title-exact?Intimate%20Relations%20%281996%29
## 1612 http://us.imdb.com/M/title-exact?imdb-title-116845
## 1613 http://us.imdb.com/M/title-exact?Tokyo+Fist+(1995)
## 1614 http://us.imdb.com/M/title-exact?Reluctant%20Debutante,%20The%20(1958)
## 1615 http://us.imdb.com/M/title-exact?Warriors%20of%20Virtue%20%281997%29
## 1616 http://us.imdb.com/M/title-exact?Desert%20Winds%20(1995)
## 1617 http://us.imdb.com/M/title-exact?Hugo+Pool+(1997)
## 1618 http://us.imdb.com/Title?King+of+New+York+(1990)
## 1619 http://us.imdb.com/Title?Lust+och+f%E4gring+stor+(1995)
## 1620 http://us.imdb.com/M/title-exact?Sixth%20Man%2C%20The%20(1997)
## 1621 http://us.imdb.com/M/title-exact?Butterfly%20Kiss%20(1995)
## 1622 http://us.imdb.com/M/title-exact?Paris,%20France%20(1993)
## 1623 http://us.imdb.com/M/title-exact?C%E9r%E9monie%2C%20La%20%281995%29
## 1624 http://us.imdb.com/Title?Hush+(1998)
## 1625 http://us.imdb.com/M/title-exact?Nightwatch%20(1997)
## 1626 http://us.imdb.com/M/title-exact?Keiner%20liebt%20mich%20(1994)
## 1627 http://us.imdb.com/Title?Wife,+The+(1995)
## 1628 http://us.imdb.com/M/title-exact?Lamerica%20(1994)
## 1629 http://us.imdb.com/M/title-exact?Nico%20Icon%20(1995)
## 1630 http://us.imdb.com/M/title-exact?Saimt%20el%20Qusur%20(1994)
## 1631 http://us.imdb.com/Title?K%E5disbellan+(1993)
## 1632 http://us.imdb.com/M/title-exact?Tierra%20y%20libertad%20(1995)
## 1633 http://us.imdb.com/Title?%C1+k%F6ldum+klaka+(1994)
## 1634 http://us.imdb.com/M/title-exact?Etz%20Hadomim%20Tafus%20(1994)
## 1635 http://us.imdb.com/M/title-exact?Two%20Friends%20(1986)%20(TV)
## 1636 http://us.imdb.com/M/title-exact?Brothers%20in%20Trouble%20(1995)
## 1637 http://us.imdb.com/M/title-exact?Girls%20Town%20(1996)
## 1638 http://us.imdb.com/M/title-exact?Normal%20Life%20(1996)
## 1639 http://us.imdb.com/M/title-exact?Bitter%20Sugar%20(1996)
## 1640 http://us.imdb.com/Title?Huiti%E8me+jour,+Le+(1996)
## 1641 http://us.imdb.com/M/title-exact?Dadetown%20(1995)
## 1642 http://us.imdb.com/M/title-exact?Some%20Mother's%20Son%20(1996)
## 1643 http://us.imdb.com/Title?Angel+Baby+(1995/I)
## 1644 http://us.imdb.com/M/title-exact?Sudden%20Manhattan%20%281996%29
## 1645 http://us.imdb.com/M/title-exact?imdb-title-118804
## 1646 http://us.imdb.com/Title?Men+with+Guns+(1997/I)
## 1647 http://us.imdb.com/Title?Hana-bi+(1997)
## 1648 http://us.imdb.com/Title?Niagara,+Niagara+(1997)
## 1649 http://us.imdb.com/Title?Big+One,+The+(1997)
## 1650 http://us.imdb.com/M/title-exact?imdb-title-118804
## 1651 http://us.imdb.com/Title?Spanish+Prisoner,+The+(1997)
## 1652 http://us.imdb.com/M/title-exact?Feng%20Yue%20%281996%29
## 1653 http://us.imdb.com/M/title-exact?Entertaining%20Angels:%20The%20Dorothy%20Day%20Story%20(1996)
## 1654 http://us.imdb.com/Title?Chairman+of+the+Board+(1998)
## 1655 http://us.imdb.com/M/title-exact?Favor,%20The%20(1994)
## 1656 http://us.imdb.com/M/title-exact?Little+City+(1998)
## 1657 http://us.imdb.com/M/title-exact?Target%20(1995)
## 1658 http://us.imdb.com/M/title-exact?Substance%20of%20Fire,%20The%20(1996)
## 1659 http://us.imdb.com/Title?Getting+Away+With+Murder+(1996)
## 1660 http://us.imdb.com/M/title-exact?Small%20Faces%20(1995)
## 1661 http://us.imdb.com/M/title-exact?New%20Age,%20The%20(1994)
## 1662 http://us.imdb.com/M/title-exact?Rough%20Magic%20%281995%29
## 1663 http://us.imdb.com/M/title-exact?Nothing%20Personal%20(1995)
## 1664 http://us.imdb.com/Title?8+Heads+in+a+Duffel+Bag+(1997)
## 1665 http://us.imdb.com/M/title-exact?Brother%27s%20Kiss%2C%20A%20%281997%29
## 1666 http://us.imdb.com/M/title-exact?Ripe%20%281996%29
## 1667 http://us.imdb.com/M/title-exact?Next%20Step%2C%20The%20%281995%29
## 1668 http://us.imdb.com/M/title-exact?Wedding%20Bell%20Blues%20%281996%29
## 1669 http://us.imdb.com/M/title-exact?MURDER+and+murder+(1996)
## 1670 http://us.imdb.com/M/title-exact?Tainted+(1998)
## 1671 http://us.imdb.com/M/title-exact?Further+Gesture%2C+A+(1996)
## 1672 http://us.imdb.com/M/title-exact?Kika%20(1993)
## 1673 http://us.imdb.com/M/title-exact?Mirage%20(1995)
## 1674 http://us.imdb.com/M/title-exact?Mamma%20Roma%20(1962)
## 1675 http://us.imdb.com/M/title-exact?Sunchaser,%20The%20(1996)
## 1676 http://us.imdb.com/M/title-exact?War%20at%20Home%2C%20The%20%281996%29
## 1677 http://us.imdb.com/M/title-exact?Sweet%20Nothing%20(1995)
## 1678 http://us.imdb.com/M/title-exact?Mat%27+i+syn+(1997)
## 1679 http://us.imdb.com/M/title-exact?B%2E+Monkey+(1998)
## 1680 http://us.imdb.com/Title?Sliding+Doors+(1998)
## 1681 http://us.imdb.com/M/title-exact?You%20So%20Crazy%20(1994)
## 1682 http://us.imdb.com/M/title-exact?Schrei%20aus%20Stein%20(1991)
Eliminamos la informacion que no aporta informacion
movie_title_df$ReleaseDate <- NULL#Eliminamos la fecha de lanzamiento
movie_title_df$video_release_date <- NULL#Toda la columna es NA
movie_title_df$IMDb_URL <- NULL#
Que se quede con datos unicos (no los queremos repetidos )
movie_title_df <- unique(movie_title_df)
Ahora con el DF de usuarios Le ponemos encabezados
names(users_df) <- c("UserID", "MovieID", "rating", "timestamp")
Elimianas las columnas que no aportan
users_df$timestamp <- NULL
veamos la estructura del objeto
str(movie_title_df)
## 'data.frame': 1682 obs. of 21 variables:
## $ MovieID : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Title : chr "Toy Story (1995)" "GoldenEye (1995)" "Four Rooms (1995)" "Get Shorty (1995)" ...
## $ unknown : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Action : int 0 1 0 1 0 0 0 0 0 0 ...
## $ Adventure : int 0 1 0 0 0 0 0 0 0 0 ...
## $ Animation : int 1 0 0 0 0 0 0 0 0 0 ...
## $ Childrens : int 1 0 0 0 0 0 0 1 0 0 ...
## $ Comedy : int 1 0 0 1 0 0 0 1 0 0 ...
## $ Crime : int 0 0 0 0 1 0 0 0 0 0 ...
## $ Documentary: int 0 0 0 0 0 0 0 0 0 0 ...
## $ Drama : int 0 0 0 1 1 1 1 1 1 1 ...
## $ Fantasy : int 0 0 0 0 0 0 0 0 0 0 ...
## $ FilmNoir : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Horror : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Musical : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Mystery : int 0 0 0 0 0 0 0 0 0 0 ...
## $ Romance : int 0 0 0 0 0 0 0 0 0 0 ...
## $ SciFi : int 0 0 0 0 0 0 1 0 0 0 ...
## $ Thriller : int 0 1 1 0 1 0 0 0 0 0 ...
## $ War : int 0 0 0 0 0 0 0 0 0 1 ...
## $ Western : int 0 0 0 0 0 0 0 0 0 0 ...
Creemos una funcion que nos ayude a clusterizar con kmeans
clusterMovies <- function(df, kclust = 10){
df <- df[,c(-1,-2)]#elimino el identificador y el titulo
mclust <- kmeans(df,
centers = kclust,
nstart = 20)#inicie con 20
return(mclust)
}
Funcion que detecte las peliculas que un usuario vio y valoro busca en este DF este ID (pelicula), que usuarios vieron esta pelicula
getUserInfo <- function(df, id){
#subconjunto de este dato
myUser <- subset(df, UserID == id, select = c(MovieID, rating))
cluster <- 0
activeUser <- data.frame(myUser[order(myUser$MovieID),],
cluster)#cluster original del usuario
return(activeUser)
}
setUserMovieCluster <- function(m_title_df, mclust, activeUser){
#haz un DF y dime a que cluster pertenece esta pelicula
df_aux <- data.frame(cbind(m_title_df$MovieID,
clustNum = mclust$cluster))
#los nombres de las columnas son :
names(df_aux) <- c("MovieID", "Cluster")
#cohincidencias que existe entre el DF original y el Df creado ya con el cluster
activeUser$cluster <- df_aux[match(activeUser$MovieID, df_aux$MovieID),2]
return(activeUser)
}
Calcula el promedio para cada cluster
getAverageClusterRating <- function(mclust, activeUser, minRating = 3){
#mete en un DF donde vallas por valoracion por cada cluster que halla encontrado y haciendo la media
like <- aggregate(activeUser$rating,
by=list(cluster=activeUser$cluster),
mean)
if(max(like$x)<minRating){
like <- as.vector(0)
} else {
like <- as.vector(t(max(subset(like, x>=minRating, select=cluster))))
}
return(like)
}
Obtener las peliculas recomendadas
getRecommendedMovies <- function(like, mclust, m_title_df){
df_aux <- data.frame(cbind(m_title_df$MovieID,
clusterNum = mclust$cluster)
)
names(df_aux) = c("MovieID", "Cluster")
if(like==0){
recommend <- m_title_df[sample.int(n = nrow(m_title_df),
size = 100),1]
} else {
recommend <- as.vector(
t(subset(df_aux,
Cluster == like,
select = MovieID
)
)
)
}
}
Una funcion que use las funciones anteriores Df de el peliculas ,Df de usuarios y toma el usuario
getRecommendations <- function(movie_df, user_df, userID){
#que divida las peliculas
mclust <- clusterMovies(movie_df)
#informacion del usuario actual
activeUser <- getUserInfo(user_df, userID)
#anadir informacion de la pelicula
activeUser <- setUserMovieCluster(movie_df, mclust, activeUser)
# Cluster de peliculas y informacion de usuario
like <- getAverageClusterRating(mclust, activeUser)
#Recomendaciones entre gustos del usuario ,el cluster y el DF inicial
recomendation <- getRecommendedMovies(like, mclust, movie_df)
#eliminamos las películas que el usuario ya ha visto
recomendation <- recomendation[-activeUser$MovieID]
#añadimos el título de la película*hago un cluse )
movieTitle <- movie_df[match(recomendation, movie_df$MovieID),2]
recomendation <- data.frame(recomendation, movieTitle)
return(recomendation)
}
sugerir Peliculas
suggestMovies <- function(movie_df, user_df, user_id, num_movies){
suggestions <- getRecommendations(movie_df, user_df, user_id)
suggestions <- suggestions[1:num_movies,]
writeLines("Tal vez te gustaría ver también las siguientes películas:")
#Imprima el nombre de la pelicula
write.table(suggestions[2], row.names = F, col.names = F)
}
Ejecutamos las funciones
suggestMovies(movie_title_df, users_df, 308, 10)
## Tal vez te gustaría ver también las siguientes películas:
## "Braveheart (1995)"
## "Crimson Tide (1995)"
## "Platoon (1986)"
## "Bridge on the River Kwai, The (1957)"
## "Last of the Mohicans, The (1992)"
## "Devil's Own, The (1997)"
## "Schindler's List (1993)"
## "Courage Under Fire (1996)"
## "Casablanca (1942)"
## "Rob Roy (1995)"
le pedimos al sistema de recoemndacion
ab<-na.omit(movie_title_df[match(movie_title_df$MovieID,
users_df[users_df$UserID==196,]$MovieID),2])
#ab
library(recommenderlab)
data("MovieLense")
data_frame <- MovieLense[rowCounts(MovieLense)>50,]#usuarios
nota: se puede hacer con validacion cruzada
train <- data_frame[1:100]#selecionamos los primeros 1001 usuarios
test <- data_frame[101:110]# seleccionamos de validacion del 100 al 110
hacemos la recomendacion hibrida
hybrid_recom <- HybridRecommender(#ha un sistema hibido
Recommender(train, method = "UBCF"),#Lo que valoran los usuarios
Recommender(train, method = "RANDOM"), # y uno aleatorio
weights = c(0.25, 0.75)#decidimos que peso se le da a cada caso
)
Predigamos para los valores de test
recomend<-as(predict(hybrid_recom, test, 3), "list")
head(recomend)[1]
## $`177`
## [1] "Fallen (1998)" "Spice World (1997)" "Incognito (1997)"
1.- Distancia euclidea 2.-Distancia del coseno 3.-Correlacion de pearson
#install.packages("lsa")
library(lsa)
## Loading required package: SnowballC
##
## Attaching package: 'lsa'
## The following object is masked from 'package:FNN':
##
## entropy
mtcars <- read.csv("../../r-course-master/data/tema8/mtcars.csv")
head(mtcars)
## X mpg cyl disp hp drat wt qsec vs am gear carb
## 1 Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## 2 Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## 3 Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## 4 Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## 5 Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## 6 Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
mtcars$X <- NULL
coche1 <- mtcars[1,]# mete la fila 1 en una variable y todas las columnas
coche2 <- mtcars[2,]# mete la fila 2 en una variable y todas las columnas
Calculemos la distancia entre las 2 variables
sqrt(sum((coche1 - coche2) * (coche1 - coche2)))#Esta esla explicacion de las disntancias aentre estos 2 datos
## [1] 0.6153251
dist(coche1, coche2, method="euclidean")
## 2
## 1 0.6153251
x1 <- rnorm(100)#Tome dies filas con distribucion normal
x2 <- rnorm(100)
dist(rbind(x1,x2), #por filas( cbine es por columnas )
method = "euclidean")
## x1
## x2 16.82865
v1 <- c(1,0,1,1,0,1,1,0,0,1)
v2 <- c(0,1,1,1,0,0,1,0,1,0)
lsa::cosine(v1, v2)# el angulo entre dos vectores
## [,1]
## [1,] 0.5477226
cosine(as.vector(t(coche1)), as.vector(t(coche2)))#Esta es la forma en de calcular el coseno para las variables de coche
## [,1]
## [1,] 0.9999951
pear <- cor(mtcars, method = "pearson")
pear
## mpg cyl disp hp drat wt
## mpg 1.0000000 -0.8521620 -0.8475514 -0.7761684 0.68117191 -0.8676594
## cyl -0.8521620 1.0000000 0.9020329 0.8324475 -0.69993811 0.7824958
## disp -0.8475514 0.9020329 1.0000000 0.7909486 -0.71021393 0.8879799
## hp -0.7761684 0.8324475 0.7909486 1.0000000 -0.44875912 0.6587479
## drat 0.6811719 -0.6999381 -0.7102139 -0.4487591 1.00000000 -0.7124406
## wt -0.8676594 0.7824958 0.8879799 0.6587479 -0.71244065 1.0000000
## qsec 0.4186840 -0.5912421 -0.4336979 -0.7082234 0.09120476 -0.1747159
## vs 0.6640389 -0.8108118 -0.7104159 -0.7230967 0.44027846 -0.5549157
## am 0.5998324 -0.5226070 -0.5912270 -0.2432043 0.71271113 -0.6924953
## gear 0.4802848 -0.4926866 -0.5555692 -0.1257043 0.69961013 -0.5832870
## carb -0.5509251 0.5269883 0.3949769 0.7498125 -0.09078980 0.4276059
## qsec vs am gear carb
## mpg 0.41868403 0.6640389 0.59983243 0.4802848 -0.55092507
## cyl -0.59124207 -0.8108118 -0.52260705 -0.4926866 0.52698829
## disp -0.43369788 -0.7104159 -0.59122704 -0.5555692 0.39497686
## hp -0.70822339 -0.7230967 -0.24320426 -0.1257043 0.74981247
## drat 0.09120476 0.4402785 0.71271113 0.6996101 -0.09078980
## wt -0.17471588 -0.5549157 -0.69249526 -0.5832870 0.42760594
## qsec 1.00000000 0.7445354 -0.22986086 -0.2126822 -0.65624923
## vs 0.74453544 1.0000000 0.16834512 0.2060233 -0.56960714
## am -0.22986086 0.1683451 1.00000000 0.7940588 0.05753435
## gear -0.21268223 0.2060233 0.79405876 1.0000000 0.27407284
## carb -0.65624923 -0.5696071 0.05753435 0.2740728 1.00000000
#Evaluación de modelos y parámetros que tan bien funciona un modelo u otro
library(recommenderlab)
library(ggplot2)
data(MovieLense)
Mismas dinamica se seleccionan los valores que se tienen con mas de 50 valoraciones y 100 vistas
rating_movies <- MovieLense[rowCounts(MovieLense)>50,
colCounts(MovieLense)>100]
Validacion cruzada
n_folds <- 4
items_to_keep = 15
rating_threshold <- 3# humbral minimo de calificacion
eval_sets <- evaluationScheme(data = rating_movies,
method = "cross-validation",#validacion cruzada
k = n_folds, #numero de veces que se hace la validacion cruzada
given = items_to_keep,#Elementos que nos queremos quedar
goodRating = rating_threshold)#
size_sets <- sapply(eval_sets@runsTrain, length)#tamano de las diferentes segmentaciones conjuntos de testing
size_sets
## [1] 420 420 420 420
#Evaluación de los Ratings
para este caso basado en items
model_type <- "IBCF"
model_params <- NULL
eval_recommender <- Recommender(data = getData(eval_sets, "train"),
method = model_type,
parameter = model_params)
items_to_recommend <- 10#numero de items a recomendar
eval_prediction <- predict(object = eval_recommender,#el modelo
newdata = getData(eval_sets, #de las semilla
"known"),
n = items_to_recommend,
type = "ratings")#las valoraciones de los usuarios
class(eval_prediction)# mariz de valoraciones
## [1] "realRatingMatrix"
## attr(,"package")
## [1] "recommenderlab"
Graficamos los sistemas de recomendacion vs los reales
qplot(rowCounts(eval_prediction)#conteo por filas
) + geom_histogram(binwidth = 20)+
ggtitle("Distribución de películas por usuario")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Evaluamos la presicion de la recomendacion
eval_accuracy <- calcPredictionAccuracy(x = eval_prediction,
data = getData(eval_sets, "unknown"),
byUser = T)
head(eval_accuracy)
## RMSE MSE MAE
## 2 1.0036682 1.0073498 0.6203865
## 8 0.8921704 0.7959680 0.7055295
## 14 1.1531288 1.3297059 0.7911716
## 24 0.8879267 0.7884138 0.6002726
## 28 1.0132547 1.0266852 0.8078669
## 38 1.8404768 3.3873547 1.3263309
Graficamos los errores cuadratricos medios
qplot(eval_accuracy[,1])
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
#Evaluación de las recomendaciones
results <- evaluate(x = eval_sets,
method = model_type,
n = seq(10,100,10))#secuencia de 10 a 10
## IBCF run fold/sample [model time/prediction time]
## 1 [0.17sec/0.01sec]
## 2 [0.14sec/0.04sec]
## 3 [0.15sec/0.04sec]
## 4 [0.16sec/0.01sec]
getConfusionMatrix(results)[[1]]# lo que importa es la presicion
## TP FP FN TN N precision recall TPR
## [1,] 3.471429 6.528571 67.53571 239.4643 317 0.3471429 0.05132702 0.05132702
## [2,] 6.807143 13.192857 64.20000 232.8000 317 0.3403571 0.09955412 0.09955412
## [3,] 9.735714 20.264286 61.27143 225.7286 317 0.3245238 0.14093090 0.14093090
## [4,] 12.357143 27.642857 58.65000 218.3500 317 0.3089286 0.17676420 0.17676420
## [5,] 14.935714 35.064286 56.07143 210.9286 317 0.2987143 0.21546191 0.21546191
## [6,] 17.685714 42.314286 53.32143 203.6786 317 0.2947619 0.25768330 0.25768330
## [7,] 20.528571 49.471429 50.47857 196.5214 317 0.2932653 0.30214066 0.30214066
## [8,] 23.278571 56.721429 47.72857 189.2714 317 0.2909821 0.34281773 0.34281773
## [9,] 25.871429 64.128571 45.13571 181.8643 317 0.2874603 0.38231415 0.38231415
## [10,] 28.621429 71.378571 42.38571 174.6143 317 0.2862143 0.42329104 0.42329104
## FPR n
## [1,] 0.02584638 10
## [2,] 0.05241861 20
## [3,] 0.08068599 30
## [4,] 0.11035236 40
## [5,] 0.14049982 50
## [6,] 0.17011279 60
## [7,] 0.19910260 70
## [8,] 0.22856543 80
## [9,] 0.25876035 90
## [10,] 0.28792267 100
Grafiquemoslo
plot(results, "prec/rec", annotate = T, main = "Precisión vs Eficacia")
results
## Evaluation results for 4 folds/samples using method 'IBCF'.
#Comparar modelos para sistemas de recomendacion
models <- list(IBCF_cos = list(name = "IBCF", params = list(method = "cosine")),#item coseno
IBCF_cor = list(name = "IBCF", params = list(method = "pearson")),#item correlacion
UBCF_cos = list(name = "UBCF", params = list(method = "cosine")),#usuario coseno
UBCF_cor = list(name = "UBCF", params = list(method = "pearson")),#usuario correlacion
random = list(name = "RANDOM", params = NULL))#random
n_recomends <- c(1:5,#Del 1 al 5 ( la de la lista )
seq(10,100,10))#de 10 al 100 y de 10 en 10
veamos los resultados de la validacion cruzada
results <- evaluate(x = eval_sets,#conjunto de validacion
method = models,#la lista previa
n = n_recomends)#
## IBCF run fold/sample [model time/prediction time]
## 1 [0.15sec/0.03sec]
## 2 [0.16sec/0.03sec]
## 3 [0.16sec/0.05sec]
## 4 [0.16sec/0.05sec]
## IBCF run fold/sample [model time/prediction time]
## 1 [0.2sec/0.01sec]
## 2 [0.17sec/0.03sec]
## 3 [0.17sec/0.05sec]
## 4 [0.21sec/0.01sec]
## UBCF run fold/sample [model time/prediction time]
## 1 [0.01sec/0.22sec]
## 2 [0sec/0.22sec]
## 3 [0sec/0.2sec]
## 4 [0sec/0.21sec]
## UBCF run fold/sample [model time/prediction time]
## 1 [0sec/0.2sec]
## 2 [0sec/0.22sec]
## 3 [0sec/0.22sec]
## 4 [0sec/0.2sec]
## RANDOM run fold/sample [model time/prediction time]
## 1 [0sec/0.05sec]
## 2 [0sec/0.04sec]
## 3 [0sec/0.05sec]
## 4 [0sec/0.03sec]
results
## List of evaluation results for 5 recommenders:
##
## $IBCF_cos
## Evaluation results for 4 folds/samples using method 'IBCF'.
##
## $IBCF_cor
## Evaluation results for 4 folds/samples using method 'IBCF'.
##
## $UBCF_cos
## Evaluation results for 4 folds/samples using method 'UBCF'.
##
## $UBCF_cor
## Evaluation results for 4 folds/samples using method 'UBCF'.
##
## $random
## Evaluation results for 4 folds/samples using method 'RANDOM'.
Grafiquemos esas diferencias (area bajo la curva )
entre mayor sea el area mejor es el modelo
plot(results, annotate = 1,
legend = "topleft") + title("Curva AUC")
## integer(0)
#True positive ,y false positive
IBCF en cos es el mejor
plot(results, "prec/rec", annotate = 1,
legend = "bottomright") + title("Precisión vs Eficacia")
## integer(0)
#Ajustar parámetros( optimizar el modelo)
vector_k <- c(5,#5 vecinos
seq(10,40,10))#de 10 al 40 y contando de 10 en 10
models <- lapply(vector_k, function(k){
list(name = "IBCF", param = list(method = "pearson", k = k))
})
names(models) <- paste0("IBCF_k_",vector_k)# caracteres
results <- evaluate(x = eval_sets,
method = models,
n=n_recomends)
## IBCF run fold/sample [model time/prediction time]
## 1 [0.2sec/0.02sec]
## 2 [0.17sec/0.02sec]
## 3 [0.19sec/0.02sec]
## 4 [0.18sec/0.02sec]
## IBCF run fold/sample [model time/prediction time]
## 1 [0.17sec/0.03sec]
## 2 [0.17sec/0.03sec]
## 3 [0.17sec/0.02sec]
## 4 [0.17sec/0.02sec]
## IBCF run fold/sample [model time/prediction time]
## 1 [0.17sec/0.04sec]
## 2 [0.17sec/0.03sec]
## 3 [0.17sec/0.03sec]
## 4 [0.17sec/0.03sec]
## IBCF run fold/sample [model time/prediction time]
## 1 [0.17sec/0.05sec]
## 2 [0.18sec/0.01sec]
## 3 [0.17sec/0.04sec]
## 4 [0.17sec/0.04sec]
## IBCF run fold/sample [model time/prediction time]
## 1 [0.17sec/0.05sec]
## 2 [0.17sec/0.03sec]
## 3 [0.17sec/0.03sec]
## 4 [0.19sec/0.03sec]
results
## List of evaluation results for 5 recommenders:
##
## $IBCF_k_5
## Evaluation results for 4 folds/samples using method 'IBCF'.
##
## $IBCF_k_10
## Evaluation results for 4 folds/samples using method 'IBCF'.
##
## $IBCF_k_20
## Evaluation results for 4 folds/samples using method 'IBCF'.
##
## $IBCF_k_30
## Evaluation results for 4 folds/samples using method 'IBCF'.
##
## $IBCF_k_40
## Evaluation results for 4 folds/samples using method 'IBCF'.
plot(results, annotate = 1, legend = "topleft") + title("Curva ROC")
## integer(0)
plot(results, "prec/rec", annotate = 1, legend = "bottomright")+title("Precisión vs Eficacia")
## integer(0)
library(caret)#diviciones
#install.packages("pROC")
#remotes::install_github("cran/DMwR")
#install.packages("caTools")
library(pROC)#
## Type 'citation("pROC")' for a citation.
##
## Attaching package: 'pROC'
## The following object is masked from 'package:colorspace':
##
## coords
## The following objects are masked from 'package:stats':
##
## cov, smooth, var
library(DMwR)
##
## Attaching package: 'DMwR'
## The following object is masked from 'package:VIM':
##
## kNN
library(caTools)#
ccdata <- read.csv("../../r-course-master/data/tema8/creditcard.csv/creditcard.csv")
head(ccdata)
## Time V1 V2 V3 V4 V5 V6
## 1 0 -1.3598071 -0.07278117 2.5363467 1.3781552 -0.33832077 0.46238778
## 2 0 1.1918571 0.26615071 0.1664801 0.4481541 0.06001765 -0.08236081
## 3 1 -1.3583541 -1.34016307 1.7732093 0.3797796 -0.50319813 1.80049938
## 4 1 -0.9662717 -0.18522601 1.7929933 -0.8632913 -0.01030888 1.24720317
## 5 2 -1.1582331 0.87773675 1.5487178 0.4030339 -0.40719338 0.09592146
## 6 2 -0.4259659 0.96052304 1.1411093 -0.1682521 0.42098688 -0.02972755
## V7 V8 V9 V10 V11 V12
## 1 0.23959855 0.09869790 0.3637870 0.09079417 -0.5515995 -0.61780086
## 2 -0.07880298 0.08510165 -0.2554251 -0.16697441 1.6127267 1.06523531
## 3 0.79146096 0.24767579 -1.5146543 0.20764287 0.6245015 0.06608369
## 4 0.23760894 0.37743587 -1.3870241 -0.05495192 -0.2264873 0.17822823
## 5 0.59294075 -0.27053268 0.8177393 0.75307443 -0.8228429 0.53819555
## 6 0.47620095 0.26031433 -0.5686714 -0.37140720 1.3412620 0.35989384
## V13 V14 V15 V16 V17 V18
## 1 -0.9913898 -0.3111694 1.4681770 -0.4704005 0.20797124 0.02579058
## 2 0.4890950 -0.1437723 0.6355581 0.4639170 -0.11480466 -0.18336127
## 3 0.7172927 -0.1659459 2.3458649 -2.8900832 1.10996938 -0.12135931
## 4 0.5077569 -0.2879237 -0.6314181 -1.0596472 -0.68409279 1.96577500
## 5 1.3458516 -1.1196698 0.1751211 -0.4514492 -0.23703324 -0.03819479
## 6 -0.3580907 -0.1371337 0.5176168 0.4017259 -0.05813282 0.06865315
## V19 V20 V21 V22 V23 V24
## 1 0.40399296 0.25141210 -0.018306778 0.277837576 -0.11047391 0.06692807
## 2 -0.14578304 -0.06908314 -0.225775248 -0.638671953 0.10128802 -0.33984648
## 3 -2.26185710 0.52497973 0.247998153 0.771679402 0.90941226 -0.68928096
## 4 -1.23262197 -0.20803778 -0.108300452 0.005273597 -0.19032052 -1.17557533
## 5 0.80348692 0.40854236 -0.009430697 0.798278495 -0.13745808 0.14126698
## 6 -0.03319379 0.08496767 -0.208253515 -0.559824796 -0.02639767 -0.37142658
## V25 V26 V27 V28 Amount Class
## 1 0.1285394 -0.1891148 0.133558377 -0.02105305 149.62 0
## 2 0.1671704 0.1258945 -0.008983099 0.01472417 2.69 0
## 3 -0.3276418 -0.1390966 -0.055352794 -0.05975184 378.66 0
## 4 0.6473760 -0.2219288 0.062722849 0.06145763 123.50 0
## 5 -0.2060096 0.5022922 0.219422230 0.21515315 69.99 0
## 6 -0.2327938 0.1059148 0.253844225 0.08108026 3.67 0
ccdata$Class <- factor(ifelse(ccdata$Class==0, "0", "1"))
table(ccdata$Class)#fraudulentas y no fraudulentas
##
## 0 1
## 284315 492
Hagamos los valores de training
t.id <- createDataPartition(ccdata$Class, p = 0.7, list = F, times = 1)
training <- ccdata[t.id,]
test <- ccdata[-t.id,]
Validemos las proporciones de fraudulentas por clase
table(training$Class)
##
## 0 1
## 199021 345
table(test$Class)
##
## 0 1
## 85294 147
algoritmo :Sintetic minoriti over sampling (SMOTE) tarjetas fraudulentas simuladas
training <- SMOTE(Class ~ .,#Clase en funcion de las demas
training,
perc.under = 100,
perc.over = 200)#margen
table(training$Class)
##
## 0 1
## 690 1035
training$Class <- as.numeric(training$Class)
trControl <- trainControl(method = "cv", # validacion cruzada
number = 10)# 10 veces
treebag lo que hace es que
model <- train(Class ~., data = training, method = "treebag",#basado en arboles
trControl = trControl)
## Warning in train.default(x, y, weights = w, ...): You are trying to do
## regression and your outcome only has two possible values Are you trying to do
## classification? If so, use a 2 level factor as your outcome column.
model
## Bagged CART
##
## 1725 samples
## 30 predictor
##
## No pre-processing
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 1552, 1552, 1552, 1553, 1553, 1553, ...
## Resampling results:
##
## RMSE Rsquared MAE
## 0.2066201 0.8199493 0.09200191
Predictores
#aqui le digo al modelo predictor ( estas son todas las variables a considerar , en este caso son todas , menos la clase)
predictors <- names(training)[names(training)!='Class']# de entrenamiento en las posiciones donde sea diferente de la clase
pred <- predict(model$finalModel,#del modelo
test[,predictors])#todas las filas menos la clase
Area under curve
auc <- roc(test$Class, pred)
## Setting levels: control = 0, case = 1
## Setting direction: controls < cases
auc
##
## Call:
## roc.default(response = test$Class, predictor = pred)
##
## Data: pred in 85294 controls (test$Class 0) < 147 cases (test$Class 1).
## Area under the curve: 0.9674
Grafiquemos el modelo
plot(auc, ylim = c(0,1), print.thres= T, #imprime el valor mas optimo
main = paste("AUC con SMOTE: ", round(auc$auc[[1]],2)) )#redoonde el valor de los valores de presicion de los valores
abline(h=1, col = "green", lwd=2)
abline(h=0, col = "red", lwd = 2)
Map Reduce Operaciones vectorizadas arrays
names.first <- c("Juan Gabriel", "Zach", "Jack", "Sansa")
names.last <- c("Gomila", "Effron", "Sparrow", "Stark")
paste(names.first, names.last)
## [1] "Juan Gabriel Gomila" "Zach Effron" "Jack Sparrow"
## [4] "Sansa Stark"
con un vector de solo un elemento
single.surname <- c("Zuccherberg")
paste(names.first, single.surname)
## [1] "Juan Gabriel Zuccherberg" "Zach Zuccherberg"
## [3] "Jack Zuccherberg" "Sansa Zuccherberg"
username <- function(first, last){
tolower(#de minuscula
paste0(#
last,
substr(first, 1, 2)))
}
#uso de la funcion
username(names.first, names.last)
## [1] "gomilaju" "effronza" "sparrowja" "starksa"
Aplicarlo a un ejemplo
auto <- read.csv("../../r-course-master/data/tema11/auto-mpg.csv")
head(auto)[1:5,]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1 1 28 4 140 90 2264 15.5 71
## 2 2 19 3 70 97 2330 13.5 72
## 3 3 36 4 107 75 2205 14.5 82
## 4 4 28 4 97 92 2288 17.0 72
## 5 5 21 6 199 90 2648 15.0 70
## car_name
## 1 chevrolet vega 2300
## 2 mazda rx2 coupe
## 3 honda accord
## 4 datsun 510 (sw)
## 5 amc gremlin
auto$dmpg <- auto$mpg * 2.0
auto$kmpg <- auto$mpg * 1.609# convertir a kilometros un vector es muy rapido y eficiente
head(auto)[1:5,]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1 1 28 4 140 90 2264 15.5 71
## 2 2 19 3 70 97 2330 13.5 72
## 3 3 36 4 107 75 2205 14.5 82
## 4 4 28 4 97 92 2288 17.0 72
## 5 5 21 6 199 90 2648 15.0 70
## car_name dmpg kmpg
## 1 chevrolet vega 2300 56 45.052
## 2 mazda rx2 coupe 38 30.571
## 3 honda accord 72 57.924
## 4 datsun 510 (sw) 56 45.052
## 5 amc gremlin 42 33.789
sum(auto$mpg)#sumar un vector
## [1] 9358.8
min(auto$mpg)#encuentre el minimo
## [1] 9
max(auto$mpg)# Encuentre el maximo
## [1] 46.6
range(auto$mpg)#Encuentre el rango
## [1] 9.0 46.6
prod(auto$mpg)#Multiplicacion (Producto)
## [1] Inf
mean(auto$mpg)#promedio
## [1] 23.51457
median(auto$mpg)#Mediana
## [1] 23
var(auto$mpg)#varianza
## [1] 61.08961
sd(auto$mpg)#Desviacion
## [1] 7.815984
Normalizar los datos ( ver las lineas 430 de codigo) la formula es :
#(auto$mpg - mean(auto$mpg))/sd(auto$mpg)
m <- matrix(seq(1,16), 4, 4)
m
## [,1] [,2] [,3] [,4]
## [1,] 1 5 9 13
## [2,] 2 6 10 14
## [3,] 3 7 11 15
## [4,] 4 8 12 16
Funcion que busca en los arrays
apply(m, 1, min )# 1 -> función aplicada al minimo de cada filas
## [1] 1 2 3 4
apply(m, 2, max)# 2 -> función aplicada al maximo por columnas
## [1] 4 8 12 16
# c(1,2) -> función aplicada a elementos
apply(m, 1, prod)# multiplica por fila
## [1] 585 1680 3465 6144
apply(m, 2, sum)#suma por columna
## [1] 10 26 42 58
Ahora al cuadrado
apply(m, c(1,2), function(x){x^2})
## [,1] [,2] [,3] [,4]
## [1,] 1 25 81 169
## [2,] 4 36 100 196
## [3,] 9 49 121 225
## [4,] 16 64 144 256
cuantiles
apply(m, 1, quantile,#cuantiles por filas
probs = c(0.4, 0.6, 0.8))#por probalidad
## [,1] [,2] [,3] [,4]
## 40% 5.8 6.8 7.8 8.8
## 60% 8.2 9.2 10.2 11.2
## 80% 10.6 11.6 12.6 13.6
colSums(m)#sumar por columnas
## [1] 10 26 42 58
rowSums(m)#Sumar por filas
## [1] 28 32 36 40
colMeans(m)#promedio por columnas
## [1] 2.5 6.5 10.5 14.5
rowMeans(m)#promedio por filas
## [1] 7 8 9 10
Una matriz tridimencional
array3D <- array(seq(1, 32), dim = c(4,#Filas
4,#Columnas
2))#Nivel o profundidad
array3D
## , , 1
##
## [,1] [,2] [,3] [,4]
## [1,] 1 5 9 13
## [2,] 2 6 10 14
## [3,] 3 7 11 15
## [4,] 4 8 12 16
##
## , , 2
##
## [,1] [,2] [,3] [,4]
## [1,] 17 21 25 29
## [2,] 18 22 26 30
## [3,] 19 23 27 31
## [4,] 20 24 28 32
sume la tercera dimencion suma de la primera cara y la suma de la segunda cara
apply(array3D, 3, sum)
## [1] 136 392
sum(1:16)
## [1] 136
apply(array3D, 3, mean)#media de la primera dimencion
## [1] 8.5 24.5
apply(array3D, c(1,2), sum)# sumar entre las caras , como suma de matrices
## [,1] [,2] [,3] [,4]
## [1,] 18 26 34 42
## [2,] 20 28 36 44
## [3,] 22 30 38 46
## [4,] 24 32 40 48
Lapply y sapply
Nota importante ( estas dos funciones trabajan con data frame , si solo trabajas con una columna tienes que convertirlo a DF) se redacta asi sapply o lapply(El DF y la funcion a aplicar)
auto <- read.csv("../../r-course-master/data/tema11/auto-mpg.csv", stringsAsFactors = F)
x <- c(1,2,3)
lapply(x, sqrt)
## [[1]]
## [1] 1
##
## [[2]]
## [1] 1.414214
##
## [[3]]
## [1] 1.732051
x
sapply(x, sqrt) class(lapply(x, sqrt))
x <- list(a = 1:10, b = c(1,10,100,1000), c = seq(5,50, by = 5))
x
## $a
## [1] 1 2 3 4 5 6 7 8 9 10
##
## $b
## [1] 1 10 100 1000
##
## $c
## [1] 5 10 15 20 25 30 35 40 45 50
Promedio por lista
lapply(x, mean)
## $a
## [1] 5.5
##
## $b
## [1] 277.75
##
## $c
## [1] 27.5
class(lapply(x,mean))
## [1] "list"
Convierte la lista a numerico (sapply)
sapply(x, mean)
## a b c
## 5.50 277.75 27.50
class(sapply(x, mean))
## [1] "numeric"
Diferencias entre lapply y saply
lapply(auto[,2:8], min)
## $mpg
## [1] 9
##
## $cylinders
## [1] 3
##
## $displacement
## [1] 68
##
## $horsepower
## [1] 46
##
## $weight
## [1] 1613
##
## $acceleration
## [1] 8
##
## $model_year
## [1] 70
sapply(auto[,2:8], min)
## mpg cylinders displacement horsepower weight acceleration
## 9 3 68 46 1613 8
## model_year
## 70
lapply(auto[,2:8], summary)
## $mpg
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 9.00 17.50 23.00 23.51 29.00 46.60
##
## $cylinders
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 3.000 4.000 4.000 5.455 8.000 8.000
##
## $displacement
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 68.0 104.2 148.5 193.4 262.0 455.0
##
## $horsepower
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 46.0 76.0 92.0 104.1 125.0 230.0
##
## $weight
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1613 2224 2804 2970 3608 5140
##
## $acceleration
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 8.00 13.82 15.50 15.57 17.18 24.80
##
## $model_year
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 70.00 73.00 76.00 76.01 79.00 82.00
sapply(auto[,2:8], summary)
## mpg cylinders displacement horsepower weight acceleration
## Min. 9.00000 3.000000 68.0000 46.0000 1613.000 8.00000
## 1st Qu. 17.50000 4.000000 104.2500 76.0000 2223.750 13.82500
## Median 23.00000 4.000000 148.5000 92.0000 2803.500 15.50000
## Mean 23.51457 5.454774 193.4259 104.1281 2970.425 15.56809
## 3rd Qu. 29.00000 8.000000 262.0000 125.0000 3608.000 17.17500
## Max. 46.60000 8.000000 455.0000 230.0000 5140.000 24.80000
## model_year
## Min. 70.00000
## 1st Qu. 73.00000
## Median 76.00000
## Mean 76.01005
## 3rd Qu. 79.00000
## Max. 82.00000
sapply(auto[,2:8], range)
## mpg cylinders displacement horsepower weight acceleration model_year
## [1,] 9.0 3 68 46 1613 8.0 70
## [2,] 46.6 8 455 230 5140 24.8 82
sapply(auto[,2:8], min)
## mpg cylinders displacement horsepower weight acceleration
## 9 3 68 46 1613 8
## model_year
## 70
#sapply(auto[,2], min)#esto falla porque R trabaja con vector
sapply(as.data.frame(auto[,2]),min,
simplify = T)#True ( numeric o matriz ) y F devuelve una lista
## auto[, 2]
## 9
class(sapply(as.data.frame(auto[,2]),min,
simplify = T))
## [1] "numeric"
Funcion a cada subconjunto por cada factor
auto$cylinders <- factor(auto$cylinders,
levels = c(3,4,5,6,8),
labels = c("3C", "4C", "5C", "6C", "8C"))
Dame la media por cada variable categotica
tapply(auto$mpg, #variable numerica
auto$cylinders, mean)#Variable categorica
## 3C 4C 5C 6C 8C
## 20.55000 29.28676 27.36667 19.98571 14.96311
tapply(auto$mpg, list(cyl = auto$cylinders), mean)
## cyl
## 3C 4C 5C 6C 8C
## 20.55000 29.28676 27.36667 19.98571 14.96311
Funcion que lo que hace es :por
by(auto,#por (data Frame )
auto$cylinders,#filtre por
function(row){# para cada fila
cor(row$mpg, row$acceleration)} )#correlacion entre vsriables
## auto$cylinders: 3C
## [1] -0.8188727
## ------------------------------------------------------------
## auto$cylinders: 4C
## [1] 0.07488465
## ------------------------------------------------------------
## auto$cylinders: 5C
## [1] 0.714897
## ------------------------------------------------------------
## auto$cylinders: 6C
## [1] -0.339605
## ------------------------------------------------------------
## auto$cylinders: 8C
## [1] 0.3212278
#split -> apply -> combine #plyr #XYply X,Y = a -> array, d -> data.frame, l -> list, _(nada) -> no output
Cargamos y etiquetamos datos
auto <- read.csv("../../r-course-master/data/tema11/auto-mpg.csv", stringsAsFactors = F)
auto$cylinders <- factor(auto$cylinders, levels = c(3,4,5,6,8),
labels = c("3C", "4C", "5C", "6C", "8C"))
#install.packages("plyr")
library(plyr)
## ------------------------------------------------------------------------------
## You have loaded plyr after dplyr - this is likely to cause problems.
## If you need functions from both plyr and dplyr, please load plyr first, then dplyr:
## library(plyr); library(dplyr)
## ------------------------------------------------------------------------------
##
## Attaching package: 'plyr'
## The following object is masked from 'package:DMwR':
##
## join
## The following objects are masked from 'package:reshape':
##
## rename, round_any
## The following objects are masked from 'package:Hmisc':
##
## is.discrete, summarize
## The following objects are masked from 'package:dplyr':
##
## arrange, count, desc, failwith, id, mutate, rename, summarise,
## summarize
## The following object is masked from 'package:purrr':
##
## compact
Estas dos son iguales y nos manda un el mismo DF
ddply(auto, "cylinders", function(df) { mean(df$mpg)})
## cylinders V1
## 1 3C 20.55000
## 2 4C 29.28676
## 3 5C 27.36667
## 4 6C 19.98571
## 5 8C 14.96311
ddply(auto, ~cylinders, function(df){ mean(df$mpg)})
## cylinders V1
## 1 3C 20.55000
## 2 4C 29.28676
## 3 5C 27.36667
## 4 6C 19.98571
## 5 8C 14.96311
Filtados multiples :para cada combinacion de
p<-ddply(auto, c("cylinders", "model_year"),
function(df){
c(mean= mean(df$mpg),
min = min(df$mpg),
max = max(df$mpg))
})
p[1:6,]
## cylinders model_year mean min max
## 1 3C 72 19.00000 19.0 19.0
## 2 3C 73 18.00000 18.0 18.0
## 3 3C 77 21.50000 21.5 21.5
## 4 3C 80 23.70000 23.7 23.7
## 5 4C 70 25.28571 24.0 27.0
## 6 4C 71 27.46154 22.0 35.0
Otra froma de escribir lo anterior
p<-ddply(auto, ~cylinders + model_year,
function(df){
c(mean= mean(df$mpg),
min = min(df$mpg),
max = max(df$mpg))
})
p[1:5,]
## cylinders model_year mean min max
## 1 3C 72 19.00000 19.0 19.0
## 2 3C 73 18.00000 18.0 18.0
## 3 3C 77 21.50000 21.5 21.5
## 4 3C 80 23.70000 23.7 23.7
## 5 4C 70 25.28571 24.0 27.0
funcion que resume (poner atencion que se escribio .() )
ddply(auto, .(cylinders), summarize, #resumir
freq = length(cylinders),#cuente cuantas veces esta esta variable
meanmpg = mean(mpg))#crea una columna que calcule la media por cada variable
## cylinders freq meanmpg
## 1 3C 4 20.55000
## 2 4C 204 29.28676
## 3 5C 3 27.36667
## 4 6C 84 19.98571
## 5 8C 103 14.96311
par(mfrow=c(3,2))
d_ply(auto, "cylinders", summarise,#resumir
hist(mpg, xlab="Millas por galeón",
main = "Histograma de frecuencias",
breaks = 5))#diviciones
sqL ______ dplyr SELECT -> select() WHERE -> filter() GROUP BY -> group_by() / summarise() ORDER BY -> arrange() JOIN -> join() “Unir” COLUMN ALIAS -> mutate() “agregar”
#install.packages("dplyr")
library(dplyr)
Obtener solo estas columnas
subset.auto <- dplyr::select(auto, mpg, horsepower, acceleration)
subset.auto[1:5,]
## mpg horsepower acceleration
## 1 28 90 15.5
## 2 19 97 13.5
## 3 36 75 14.5
## 4 28 92 17.0
## 5 21 90 15.0
auto.80 <- dplyr::filter(auto, #DF
auto$model_year>80)#este es el condicional
auto.80[1:5,]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1 3 36.0 4C 107 75 2205 14.5 82
## 2 8 32.9 4C 119 100 2615 14.8 81
## 3 12 30.7 6C 145 76 3160 19.6 81
## 4 20 29.0 4C 135 84 2525 16.0 82
## 5 22 26.6 4C 151 84 2635 16.4 81
## car_name
## 1 honda accord
## 2 datsun 200sx
## 3 volvo diesel
## 4 dodge aries se
## 5 buick skylark
mutate (agrega una columna )
auto.norm <- dplyr::mutate(auto,
mpg.norm = round((mpg-mean(mpg))/sd(mpg),2))#redondea la normalizacion de esta variable
auto.norm[1:5,]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1 1 28 4C 140 90 2264 15.5 71
## 2 2 19 3C 70 97 2330 13.5 72
## 3 3 36 4C 107 75 2205 14.5 82
## 4 4 28 4C 97 92 2288 17.0 72
## 5 5 21 6C 199 90 2648 15.0 70
## car_name mpg.norm
## 1 chevrolet vega 2300 0.57
## 2 mazda rx2 coupe -0.58
## 3 honda accord 1.60
## 4 datsun 510 (sw) 0.57
## 5 amc gremlin -0.32
summarise
dplyr::summarise(group_by(auto,#df
cylinders),#en funcion de los Cilindros
mean(mpg))#y calcula la media
## # A tibble: 5 x 2
## cylinders `mean(mpg)`
## <fct> <dbl>
## 1 3C 20.6
## 2 4C 29.3
## 3 5C 27.4
## 4 6C 20.0
## 5 8C 15.0
dplyr::summarise(group_by(auto, model_year), mean(mpg))
## # A tibble: 13 x 2
## model_year `mean(mpg)`
## <int> <dbl>
## 1 70 17.7
## 2 71 21.2
## 3 72 18.7
## 4 73 17.1
## 5 74 22.7
## 6 75 20.3
## 7 76 21.6
## 8 77 23.4
## 9 78 24.1
## 10 79 25.1
## 11 80 33.7
## 12 81 30.3
## 13 82 31.7
combinan varias lineas de codigo (paips)
auto %>%#df ( paso 1)
filter(model_year<78) %>%#filtra por el modelo 78 ( paso 3)
group_by(cylinders) %>%# agrupa por cilindros ( paso 4)
summarise(mean(mpg))#aplica la funcion summarise ( paso 5)
## mean(mpg)
## 1 20.18443
Gran cantidad de datos ( muchos datos )
#install.packages("data.table")
library(data.table)
##
## Attaching package: 'data.table'
## The following objects are masked from 'package:reshape2':
##
## dcast, melt
## The following objects are masked from 'package:xts':
##
## first, last
## The following object is masked from 'package:reshape':
##
## melt
## The following object is masked from 'package:raster':
##
## shift
## The following objects are masked from 'package:dplyr':
##
## between, first, last
## The following object is masked from 'package:purrr':
##
## transpose
auto <- read.csv("../../r-course-master/data/tema11/auto-mpg.csv", stringsAsFactors = F)
auto$cylinders <- factor(auto$cylinders,
levels = c(3,4,5,6,8),
labels = c("3C", "4C", "5C", "6C", "8C"))
Creamos un data table
auto.dt <- data.table(auto)
class(auto.dt)
## [1] "data.table" "data.frame"
cambia la redacion para la seleccion de
auto.dt[, .(mpg)]
## mpg
## 1: 28.0
## 2: 19.0
## 3: 36.0
## 4: 28.0
## 5: 21.0
## ---
## 394: 16.5
## 395: 34.5
## 396: 38.1
## 397: 30.5
## 398: 19.0
auto.dt[, .(mpg, horsepower, acceleration)]
## mpg horsepower acceleration
## 1: 28.0 90 15.5
## 2: 19.0 97 13.5
## 3: 36.0 75 14.5
## 4: 28.0 92 17.0
## 5: 21.0 90 15.0
## ---
## 394: 16.5 120 16.7
## 395: 34.5 70 14.9
## 396: 38.1 60 18.8
## 397: 30.5 63 17.0
## 398: 19.0 100 13.0
dame todos los carros con estos cilindros ( se hace referencia dentro del mismo vector , ademas no se indica que devuelva columnas )
#auto.dt[cylinders %in% c("3C", "4C", "5C")]
auto.dt[cylinders == "4C" & horsepower>100]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1: 14 27.9 4C 156 105 2800 14.4 80
## 2: 51 21.5 4C 121 110 2600 12.8 77
## 3: 131 26.0 4C 121 113 2234 12.5 70
## 4: 180 18.0 4C 121 112 2933 14.5 72
## 5: 181 25.0 4C 121 115 2671 13.5 75
## 6: 188 21.6 4C 121 115 2795 15.7 78
## 7: 241 19.0 4C 121 112 2868 15.5 73
## 8: 250 20.0 4C 130 102 3150 15.7 76
## 9: 297 23.2 4C 156 105 2745 16.7 78
## 10: 307 24.0 4C 121 110 2660 14.0 73
## car_name
## 1: dodge colt
## 2: bmw 320i
## 3: bmw 2002
## 4: volvo 145e (sw)
## 5: saab 99le
## 6: saab 99gle
## 7: volvo 144ea
## 8: volvo 245
## 9: plymouth sapporo
## 10: saab 99le
Valores aproximados Como la funcion buscar en excel
auto.dt[car_name %like% "mazda",]
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1: 2 19.0 3C 70 97 2330 13.5 72
## 2: 66 31.0 4C 91 68 1970 17.6 82
## 3: 74 31.3 4C 120 75 2542 17.5 80
## 4: 146 34.1 4C 91 68 1985 16.0 81
## 5: 251 23.7 3C 70 100 2420 12.5 80
## 6: 262 31.6 4C 120 74 2635 18.3 81
## 7: 269 46.6 4C 86 65 2110 17.9 80
## 8: 298 37.0 4C 91 68 2025 18.2 82
## 9: 361 32.8 4C 78 52 1985 19.4 78
## 10: 365 21.5 3C 80 110 2720 13.5 77
## car_name
## 1: mazda rx2 coupe
## 2: mazda glc custom
## 3: mazda 626
## 4: mazda glc 4
## 5: mazda rx-7 gs
## 6: mazda 626
## 7: mazda glc
## 8: mazda glc custom l
## 9: mazda glc deluxe
## 10: mazda rx-4
calcula la media de mpg por cilindros
auto.dt[, mean(mpg), by= cylinders]
## cylinders V1
## 1: 4C 29.28676
## 2: 3C 20.55000
## 3: 6C 19.98571
## 4: 8C 14.96311
## 5: 5C 27.36667
auto.dt[, meanmpg := mean(mpg), by = cylinders]#creando una nueva columna y que calcule la media de mpg
head(auto.dt)
## No mpg cylinders displacement horsepower weight acceleration model_year
## 1: 1 28 4C 140 90 2264 15.5 71
## 2: 2 19 3C 70 97 2330 13.5 72
## 3: 3 36 4C 107 75 2205 14.5 82
## 4: 4 28 4C 97 92 2288 17.0 72
## 5: 5 21 6C 199 90 2648 15.0 70
## 6: 6 23 4C 115 95 2694 15.0 75
## car_name meanmpg
## 1: chevrolet vega 2300 29.28676
## 2: mazda rx2 coupe 20.55000
## 3: honda accord 29.28676
## 4: datsun 510 (sw) 29.28676
## 5: amc gremlin 19.98571
## 6: audi 100ls 29.28676
auto.dt[, c("sd_mpg", "z_mpg") := list(
sd(mpg), round((mpg - mean(mpg))/sd(mpg),2)
), by = cylinders
]
auto.dt[1:5, c(1:3, 9:12), with = FALSE]#que se vea de una columna a otra y que se convieta un data table a un DF (whith=F)
## No mpg cylinders car_name meanmpg sd_mpg z_mpg
## 1: 1 28 4C chevrolet vega 2300 29.28676 5.710156 -0.23
## 2: 2 19 3C mazda rx2 coupe 20.55000 2.564501 -0.60
## 3: 3 36 4C honda accord 29.28676 5.710156 1.18
## 4: 4 28 4C datsun 510 (sw) 29.28676 5.710156 -0.23
## 5: 5 21 6C amc gremlin 19.98571 3.807322 0.27
Calculo de media ( a un conjunto de variables )
auto.dt[, lapply(.SD, mean),
.SDcols = c("mpg", "horsepower")]
## mpg horsepower
## 1: 23.51457 104.1281
setkey(auto.dt, cylinders)#cargamos la columna de cylinders del Df
tables()
#auto.dt["4C", c(1:3, 9:10), with = F]
Calcula la media , minimo y maximo y desviacion estandar por cylindros
auto.dt[,list(mean = mean(mpg), min = min(mpg),
max = max(mpg), sd = sd(mpg)),
by = cylinders]
## cylinders mean min max sd
## 1: 3C 20.55000 18.0 23.7 2.564501
## 2: 4C 29.28676 18.0 46.6 5.710156
## 3: 5C 27.36667 20.3 36.4 8.228204
## 4: 6C 19.98571 15.0 38.0 3.807322
## 5: 8C 14.96311 9.0 26.6 2.836284
setkeyv(auto.dt, c("cylinders", "model_year"))
auto.dt[.("4C"), c(1:3, 9:10), with = F][1:5,]
## No mpg cylinders car_name meanmpg
## 1: 35 25 4C saab 99e 29.28676
## 2: 45 27 4C datsun pl510 29.28676
## 3: 89 26 4C volkswagen 1131 deluxe sedan 29.28676
## 4: 131 26 4C bmw 2002 29.28676
## 5: 197 24 4C audi 100 ls 29.28676
#cuenta los elementos de hay (contar) por rubro
auto.dt[,.N, by = cylinders]
## cylinders N
## 1: 3C 4
## 2: 4C 204
## 3: 5C 3
## 4: 6C 84
## 5: 8C 103
auto.dt["3C", .N]
## [1] 4
auto.dt[, meanmpg:=NULL]
#DT[i,j,by] Los joins (buscar RV o X)
empl <- read.csv("../../r-course-master/data/tema11/employees.csv", stringsAsFactors = F)
dept <- read.csv("../../r-course-master/data/tema11/departments-1.csv", stringsAsFactors = F)
Los combertomos a data.table
empl.dt <- data.table(empl)
dept.dt <- data.table(dept)
clave es
setkey(empl.dt,#DF
"DeptId") #definel que sea este id , si no se define toma el numero 1
combine <- empl.dt[dept.dt]
combine[1:5,]
## Id FirstName LastName Phone sex HireDate JobTitle
## 1: 1001 Laurel Mendoza 1-931-665-3116 F 12-Apr-14 Finance Manager
## 2: 1010 Zenaida Mcdonald 1-297-102-4226 F 16-Jan-14 Accounting Manager
## 3: 1010 Andrew Mckinney 1-820-174-1396 F 19-Jul-14 Accounting Manager
## 4: 1010 Jaquelyn Snider 1-166-427-4633 M 31-Jan-14 Accounting Manager
## 5: 1013 Shea Turner 1-408-913-8681 M 8-Jan-14 Accounting Manager
## Salary Commission MgrId DeptId DeptName
## 1: 67324 0 1 1 Finance
## 2: 89107 0 8 1 Finance
## 3: 74212 0 1 1 Finance
## 4: 20312 0 9 1 Finance
## 5: 58110 0 4 1 Finance
dept2 <- read.csv("../../r-course-master/data/tema11/departments-2.csv", stringsAsFactors = F)
dept2.dt <- data.table(dept2)
#suma 2 filas con N/A
combine <- empl.dt[dept2.dt, allow.cartesian = T, #producto carteciano las que estan bacias las llena con N/A
nomatch = 0]#los que no tienen conjuntos entoces elimina los n/a
Juntar 2 tablas
merge(empl.dt, dept2.dt, by = "DeptId")[1:5,] #InnerJoin
## DeptId Id FirstName LastName Phone sex HireDate
## 1: 1 1001 Laurel Mendoza 1-931-665-3116 F 12-Apr-14
## 2: 1 1010 Zenaida Mcdonald 1-297-102-4226 F 16-Jan-14
## 3: 1 1010 Andrew Mckinney 1-820-174-1396 F 19-Jul-14
## 4: 1 1010 Jaquelyn Snider 1-166-427-4633 M 31-Jan-14
## 5: 1 1013 Shea Turner 1-408-913-8681 M 8-Jan-14
## JobTitle Salary Commission MgrId DeptName
## 1: Finance Manager 67324 0 1 Finance
## 2: Accounting Manager 89107 0 8 Finance
## 3: Accounting Manager 74212 0 1 Finance
## 4: Accounting Manager 20312 0 9 Finance
## 5: Accounting Manager 58110 0 4 Finance
merge(empl.dt, dept2.dt, by = "DeptId", all.x = T)[1:5,] #Left Join
## DeptId Id FirstName LastName Phone sex HireDate
## 1: 1 1001 Laurel Mendoza 1-931-665-3116 F 12-Apr-14
## 2: 1 1010 Zenaida Mcdonald 1-297-102-4226 F 16-Jan-14
## 3: 1 1010 Andrew Mckinney 1-820-174-1396 F 19-Jul-14
## 4: 1 1010 Jaquelyn Snider 1-166-427-4633 M 31-Jan-14
## 5: 1 1013 Shea Turner 1-408-913-8681 M 8-Jan-14
## JobTitle Salary Commission MgrId DeptName
## 1: Finance Manager 67324 0 1 Finance
## 2: Accounting Manager 89107 0 8 Finance
## 3: Accounting Manager 74212 0 1 Finance
## 4: Accounting Manager 20312 0 9 Finance
## 5: Accounting Manager 58110 0 4 Finance
merge(empl.dt, dept2.dt, by = "DeptId", all.y = T)[1:5,] #Right Join
## DeptId Id FirstName LastName Phone sex HireDate
## 1: 1 1001 Laurel Mendoza 1-931-665-3116 F 12-Apr-14
## 2: 1 1010 Zenaida Mcdonald 1-297-102-4226 F 16-Jan-14
## 3: 1 1010 Andrew Mckinney 1-820-174-1396 F 19-Jul-14
## 4: 1 1010 Jaquelyn Snider 1-166-427-4633 M 31-Jan-14
## 5: 1 1013 Shea Turner 1-408-913-8681 M 8-Jan-14
## JobTitle Salary Commission MgrId DeptName
## 1: Finance Manager 67324 0 1 Finance
## 2: Accounting Manager 89107 0 8 Finance
## 3: Accounting Manager 74212 0 1 Finance
## 4: Accounting Manager 20312 0 9 Finance
## 5: Accounting Manager 58110 0 4 Finance
merge(empl.dt, dept2.dt, by = "DeptId", all = T)[1:5,] # Full Join
## DeptId Id FirstName LastName Phone sex HireDate
## 1: 1 1001 Laurel Mendoza 1-931-665-3116 F 12-Apr-14
## 2: 1 1010 Zenaida Mcdonald 1-297-102-4226 F 16-Jan-14
## 3: 1 1010 Andrew Mckinney 1-820-174-1396 F 19-Jul-14
## 4: 1 1010 Jaquelyn Snider 1-166-427-4633 M 31-Jan-14
## 5: 1 1013 Shea Turner 1-408-913-8681 M 8-Jan-14
## JobTitle Salary Commission MgrId DeptName
## 1: Finance Manager 67324 0 1 Finance
## 2: Accounting Manager 89107 0 8 Finance
## 3: Accounting Manager 74212 0 1 Finance
## 4: Accounting Manager 20312 0 9 Finance
## 5: Accounting Manager 58110 0 4 Finance
#DT[i,j,by] #.SD -> guardar referencia a todas las columnas (salvo las del by) #.SDcols -> la referencia guardada a las columnas (son las que se pueden incluir o excluir en la ‘j’) #.EACHI -> para agrupar por claves #.N -> número de filas #.I -> los índices indicados en el DT
#Sueldo máximo de cada departamento….
empl.dt[dept2.dt,
max(.SD), #maximo de las variables a usar
by = .EACHI, #los departamentos
.SDcols = "Salary" ]#de la columna a la que quiero aplicar lo anterior
## DeptId V1
## 1: 1 99211
## 2: 2 98291
## 3: 3 70655
## 4: 4 99397
## 5: 5 92429
## 6: 6 NA
## 7: 7 NA
#Sueldo promedio por departamento
empl.dt[, #todas las claves
.(AvgSalary = lapply(.SD,# con el conjunto que te indique
mean)),#dame la media
by = "DeptId", .SDcols = "Salary"]# de estas variables
## DeptId AvgSalary
## 1: 1 63208.02
## 2: 2 59668.06
## 3: 3 47603.64
## 4: 4 59448.24
## 5: 5 51957.44
empl.dt[dept2.dt, list(DeptName,
AvgSalary = lapply(.SD, mean)),
by = .EACHI, .SDcols = "Salary"]
## DeptId DeptName AvgSalary
## 1: 1 Finance 63208.02
## 2: 2 HR 59668.06
## 3: 3 Marketing 47603.64
## 4: 4 IT 59448.24
## 5: 5 Service 51957.44
## 6: 6 Sales NA
## 7: 7 Quality NA
#R Google Maps
#install.packages("RgoogleMaps")
library(RgoogleMaps)
Latitud y longitud
lat <- 39.637492
lon <- 2.644557
uib.map <- GetMap(center = c(lat, lon), zoom = 17,
destfile = "../Curso Udemy/r-course-master/data/tema12/uib.pdf",
format = "pdf",# puede ser
maptype = "terrain")#satellite o terrain
PlotOnStaticMap(uib.map)
#satellite, roadmap, terrain
library(RgoogleMaps)
wages <- read.csv("../../r-course-master/data/tema12/nj-wages.csv")
wages$wgClass <- cut(wages$Avgwg,#divide
quantile(wages$Avgwg,#y dame los cuantiles de esta columna
probs = seq(0,1, 0.2)),# con probabilidades de 0 a 1 con saltos del 20 %
labels = F,
include.lowest = T)#si alguine cae en el corte lo mande abajo
head(wages)
## Zipcode ZipCodeType City State LocationType Lat Long
## 1 7675 STANDARD WESTWOOD NJ PRIMARY 40.98 -74.03
## 2 7677 STANDARD WOODCLIFF LAKE NJ PRIMARY 41.02 -74.05
## 3 7885 STANDARD WHARTON NJ PRIMARY 40.89 -74.58
## 4 7981 STANDARD WHIPPANY NJ PRIMARY 40.82 -74.41
## 5 8889 STANDARD WHITEHOUSE STATION NJ PRIMARY 40.60 -74.76
## 6 7095 STANDARD WOODBRIDGE NJ PRIMARY 40.55 -74.28
## Location Decommisioned TaxReturnsFiled EstimatedPopulation
## 1 NA-US-NJ-WESTWOOD FALSE 13245 24083
## 2 NA-US-NJ-WOODCLIFF LAKE FALSE 2945 5471
## 3 NA-US-NJ-WHARTON FALSE 5273 8999
## 4 NA-US-NJ-WHIPPANY FALSE 4585 8057
## 5 NA-US-NJ-WHITEHOUSE STATION FALSE 4691 8570
## 6 NA-US-NJ-WOODBRIDGE FALSE 10018 17272
## TotalWages Avgwg wgClass
## 1 1089095041 82226.88 5
## 2 325436960 110504.91 5
## 3 240827990 45671.91 3
## 4 292096795 63707.04 4
## 5 401312434 85549.44 5
## 6 528315021 52736.58 3
#paleta de colores
pal <- palette(rainbow(5))# 5 colores
map <- MapBackground(lat = wages$Lat, lon= wages$Long)
## user coords: 73.61933 76.12324 94.55942 97.06333
## center, zoom: 40.115 -74.715 8
PlotOnStaticMap(map, wages$Lat, wages$Long,
pch=21, #forma de los indicadores
cex = sqrt(wages$wgClass),#Raiz cuadrada de los quintiles que generamos( tamano de la bola)
bg=pal[wages$wgClass]#color
)
legend("topleft", #donde quieres la cajita
legend = paste("<=", round(tapply(wages$Avgwg,# de las ganancias
wages$wgClass,# por los cuantiles definidos con anterioridad
mean# quiero el media de los ingresos
),0# cero decimales
)
),
pch = 21,#Del mismo tipo
pt.bg = pal,#misma paleta de colores
pt.cex = 1.0, #todas del mismo tamano
bg="gray", title = "Ingresos promedio"# titulo
)
#Crimenes de Chicago se necesita pagar a google
#install.packages(c("ggmap", "maps"))
library(ggmap)
## Google's Terms of Service: https://cloud.google.com/maps-platform/terms/.
## Please cite ggmap if you use it! See citation("ggmap") for details.
library(maps)
##
## Attaching package: 'maps'
## The following object is masked from 'package:plyr':
##
## ozone
## The following object is masked from 'package:mclust':
##
## map
## The following object is masked from 'package:cluster':
##
## votes.repub
## The following object is masked from 'package:purrr':
##
## map
crimes <- read.csv("../../r-course-master/data/tema12/chicago-crime.csv")
Fecha
crimes$Date <- strptime(crimes$Date, format = "%m/%d/%y %H:%M")
mapa ( se necesita una appi )
chicago <- get_map(location = “chicago”, #nombre de la ciudad zoom = 11)
ggmap(chicago) + geom_point(data = crimes[1:500,], aes(x=Longitude, y = Latitude))
counts <- as.data.frame(table(round(crimes\(Longitude,2), round(crimes\)Latitude,2) ) ) counts\(Lon <- as.numeric(as.character(counts\)Var1)) counts\(Lat <- as.numeric(as.character(counts\)Var2)) counts\(Var1 <- NULL counts\)Var2 <- NULL
summary(counts)
ggmap(chicago) + geom_tile(data = counts, aes(x = Lon, y = Lat, alpha = Freq), fill = “red”)
#Ficheros ESRI (trabajar con formas )
#install.packages("sp")
#install.packages("rgdal")
library(sp)
library(rgdal)
## Please note that rgdal will be retired by the end of 2023,
## plan transition to sf/stars/terra functions using GDAL and PROJ
## at your earliest convenience.
##
## rgdal: version: 1.5-29, (SVN revision 1165M)
## Geospatial Data Abstraction Library extensions to R successfully loaded
## Loaded GDAL runtime: GDAL 3.2.1, released 2020/12/29
## Path to GDAL shared files: C:/Users/Antonio Constantino/Documents/R/win-library/4.1/rgdal/gdal
## GDAL binary built with GEOS: TRUE
## Loaded PROJ runtime: Rel. 7.2.1, January 1st, 2021, [PJ_VERSION: 721]
## Path to PROJ shared files: C:/Users/Antonio Constantino/Documents/R/win-library/4.1/rgdal/proj
## PROJ CDN enabled: FALSE
## Linking to sp version:1.4-6
## To mute warnings of possible GDAL/OSR exportToProj4() degradation,
## use options("rgdal_show_exportToProj4_warnings"="none") before loading sp or rgdal.
## Overwritten PROJ_LIB was C:/Users/Antonio Constantino/Documents/R/win-library/4.1/rgdal/proj
countries0.sp <- readOGR("../../r-course-master/data/tema12/natural_earth", "ne_50m_admin_0_countries" )
## OGR data source with driver: ESRI Shapefile
## Source: "C:\Users\Antonio Constantino\Desktop\Rstudio\r-course-master\data\tema12\natural_earth", layer: "ne_50m_admin_0_countries"
## with 241 features
## It has 63 fields
airports.sp <- readOGR("../../r-course-master/data/tema12/natural_earth","ne_50m_airports")
## OGR data source with driver: ESRI Shapefile
## Source: "C:\Users\Antonio Constantino\Desktop\Rstudio\r-course-master\data\tema12\natural_earth", layer: "ne_50m_airports"
## with 281 features
## It has 10 fields
Vemos que clase es esta ESRI
class(countries0.sp)
## [1] "SpatialPolygonsDataFrame"
## attr(,"package")
## [1] "sp"
class(airports.sp)
## [1] "SpatialPointsDataFrame"
## attr(,"package")
## [1] "sp"
Pinta en el mapa mundi los aeropuertos del mundo
plot(countries0.sp)
# se puede anadir que ponga color en cada pais(,col = countries0.sp@data$admin))
plot(airports.sp, add=TRUE)
Pinta en el mapa mundi como se ven la distribucion de datos
spplot(countries0.sp, c("pop_est"))
#Maps
#install.packages("maps")
library(maps)
map("world")#mundo
map("world", interior = F)#el mundo sin fronteras
map("world", fill = TRUE, #rellanealo
col = palette(rainbow(12)))#de 12 colores
map("world", "mexico",interior = F)
map("france")
map("italy")
map("world", "spain")
map("usa")
map("state")
map("state", interior=F)
map("county")
library(sp)
nj <- read.csv("../../r-course-master/data/tema12/nj-wages.csv")
class(nj)
## [1] "data.frame"
#Coordinates sirve para indicar cuales serán las dos columnas #con la info de las coordenadas (long, lat) Fijarte que esto yas e cambio
coordinates(nj) <- c("Long", "Lat")
class(nj)
## [1] "SpatialPointsDataFrame"
## attr(,"package")
## [1] "sp"
plot(nj)
Funcion que una los puntos con lineas
spatial_lines <- function(spdf, name = "dummy"){
temp <- SpatialLines(
list(
Lines(
list(Line(coordinates(spdf))), name)
)
)
return(temp)
}
sp <- spatial_lines(nj)
plot(sp)
#Conversiones entre DF, Mapas y objetos espaciales
#install.packages("maptools")
library(maptools) # carga sp
## Checking rgeos availability: FALSE
## Please note that 'maptools' will be retired by the end of 2023,
## plan transition at your earliest convenience;
## some functionality will be moved to 'sp'.
## Note: when rgeos is not available, polygon geometry computations in maptools depend on gpclib,
## which has a restricted licence. It is disabled by default;
## to enable gpclib, type gpclibPermit()
##
## Attaching package: 'maptools'
## The following object is masked from 'package:Hmisc':
##
## label
la forma global para usar estas transformaciones : SpatialXXXXXXXDataFrame
#maps -> spatial poligons -> spatial poligos data frame
nj.data <- read.csv("../../r-course-master/data/tema12/nj-county-data.csv")
rownames(nj.data) <- nj.data$name
nj.data$name <- NULL
nj.data[1:5,]
## per_capita_income median_household_income median_family_income
## hunterdon 48489 100980 121166
## morris 47342 96747 114694
## somerset 47067 97440 115214
## bergen 42006 81708 100310
## monmouth 40976 82265 102074
## population no_households area_sq_mi
## hunterdon 128349 47169 430
## morris 492276 180534 469
## somerset 323444 117759 305
## bergen 905116 335730 234
## monmouth 630380 233983 472
pedimos los rangos de latitudes y longitudes
nj.map <- map("county", "new jersey", fill = T,#que me ayude a rellenarlo
plot = F)#Aun no me des el mapa
nj.map$names
## [1] "new jersey,atlantic" "new jersey,bergen" "new jersey,burlington"
## [4] "new jersey,camden" "new jersey,cape may" "new jersey,cumberland"
## [7] "new jersey,essex" "new jersey,gloucester" "new jersey,hudson"
## [10] "new jersey,hunterdon" "new jersey,mercer" "new jersey,middlesex"
## [13] "new jersey,monmouth" "new jersey,morris" "new jersey,ocean"
## [16] "new jersey,passaic" "new jersey,salem" "new jersey,somerset"
## [19] "new jersey,sussex" "new jersey,union" "new jersey,warren"
Vector de nombres (separar nombres por la coma )
nj.county <- sapply(strsplit(nj.map$names, ","),#separa los 2 strings que tengan coma ( como un texto en columnas separado por caracter especial )
function(x) x[2])#solo devuelve el segundo valor ( el condado )
Combirtamos en un spatial poligon
nj.sp <- map2SpatialPolygons(nj.map,#objeto
IDs = nj.county,#Estos son los ID's
proj4string = CRS("+proj=longlat +ellps=WGS84"))# CRS (Como van a venir descritos los poligonos ) #world Geopositon Standar (wgs)
## Warning in showSRID(uprojargs, format = "PROJ", multiline = "NO", prefer_proj
## = prefer_proj): Discarded datum Unknown based on WGS84 ellipsoid in Proj4
## definition
Validemos que ya sea un poligono espacial
class(nj.sp)
## [1] "SpatialPolygons"
## attr(,"package")
## [1] "sp"
nj.spdf <- SpatialPolygonsDataFrame(nj.sp, nj.data)#dunatamos los daros espaciales con el DF Inicial
class(nj.spdf)
## [1] "SpatialPolygonsDataFrame"
## attr(,"package")
## [1] "sp"
Grafiquemoslo
plot(nj.spdf)
spplot(nj.spdf, "per_capita_income", main = "Renta per Cápita")
spplot(nj.spdf, "population", main = "Población")
spplot(nj.spdf, "median_family_income", main = "Ingresos promedio familiares")
spplot(nj.spdf, c("per_capita_income", "median_family_income"),
main = "Ingresos")