Está en la página 1de 8

Universidad de Chile

ENMEC357
T?picos en Econom?a y Negocios Utilizando R
Tarea 1
Profesor: Victor Mac?as E.
Ayudante: Gabriel Cabrera
Alumnos: Agust?n Goycolea
Flavio Navarrete
Catalina Vergara
01 septiembre 2018

En la parte final del informe, en el Anexo 1 se adjunta el c?digo completo utilizado para la resoluci?n
de la tarea. Adem?s, para lograr la realizaci?n total de la tarea utilizamos las siguientes librer?as:
a) library(tidyverse)
b) library(readr)
c) library(dplyr)
d) library(lubridate)
Pregunta 1
1. Identificar las 10 palabras claves (keywords) que m?s se repiten.
Para lograr el resultado requerido inicialmente utilizamos el dataset llamado Keywords, para luego
poder contar la cantidad de veces que se repite cada palabra, ordenarlo de forma descendente y
finalmente dejar solamente las 10 que mas se repiten. De esta forma se tiene como resultado la tabla
1.

Pel?cula Repeticiones
Woman Director 324
Independent film 318
duringcreditsstinger 307
based on novel 197
murder 189
aftercreditsstinger 170
violence 150
dystopia 139
sport 126
revenge 118

Tabla 1. Veces que se repiten las palabras claves.

1
Universidad de Chile

Pregunta 2

a. Las 10 pel?culas con las ingresos m?s altos.


Para esta pregunta, inicialmente tomamos el dataset de las pel?culas, para luego unirla con la tabla
keywords a trav?s de la id, luego de la union, se genera una nueva tabla, y seleccionamos solamente
las columnas referentes al t?tulo y los ingresos, finalmente se agrupa por p?licula el ingreso y se dejan
en muestra solamente las 10 que generaron un mayor ingreso.

Pel?cula Ingresos en d?lares


Avatar $2.787.965.087
Titanic $1.845.034.188
The Avengers $1.519.557.910
Jurassic World $1.513.528.810
Furious 7 $1.506.249.360
Avengers:Age of Ultron $1.405.403.694
Frozen $1.274.219.009
Iron Man 3 $1.215.439.994
Minions $1.156.730.962
Captain America: Civil War $1.153.304.495

Tabla 2. Ingresos generados por pel?cula.


b. Las 10 pel?culas con los ingresos m?s bajos.
Ahora, se utilizan las tabla obtenida luego de la uni?n de keywords y dataset de pel?culas, para luego
omitir todos los valores NA, que existan en esta nueva tabla, seleccionamos las columnas referentes al
t?tulo y el ingreso que generan, luego eliminamos todas aquellas que generaron p?rdidas o ingreso
igual a 0, es decir aquellas que tengan ingresos, luego agrupamos por el nombre de la pel?cula y
finalmente se muestran las 10 con menor ingreso, obteniendo el siguiente resultado.

Pel?cula Ingresos en d?lares


Split Second $5
Bran Nue Dae $7
Dreaming of Joseph Lees $7
Bats $10
Of Horses and Men $11
Chasing Liberty $12
The Cookout $12
Angela’s Ashes $13
The 51st State $14
Tae Guk Gi: The Brotherhood of War $15

Tabla 3. Ingresos generados por pel?cula.

2
Universidad de Chile

c. El n?mero de pel?culas con ingresos igual a cero.


Para la resoluci?n de esta pregunta, inicialmente se deben unir las tablas keywords y el dataset de
peliculas a traves del Id, luego se proceder? a omitir todos los valores NA, se seleccionaran solamente
las columnas ingreso y titulo de pelicula, para luego filtrar aquellas que poseen ingresos iguales a 0,
finalmente se proceder? a agrupar las peliculas por el neto de ingreso y contar el numero de filas que
se posee dentro de la tabla.

Cantidad de Pel?culas Ingresos en d?lares


1118 $0

Tabla 4.N?mero de Peliculas con ingreso igual a 0.

Pregunta 3
Inicialmente procederemos a generar una tabla base que utilizaremos para responder las preguntas
solicitadas, la cual obtendremos al cargar el dataset de pa?s de producci?n (llamada mix), uniendolo
a trav?s del id con el dataset de las pel?culas, y contaremos la cantidad de veces que ha sido lugar de
filmaci?n.
Luego, para el c?lculo de la utilidad por pa?s, a la tabla base mix, le quitaremos los valores NA,
y seleccionaremos las columnas, t?tulo, ingreso, presupuesto y pa?s de producci?n. a continuaci?n
generaremos una nueva columna que llamaremos utilidad y que sera el resultado de la diferencia entre
el ingreso y el presupuesto, luego las agruparemos por pa?s de producci?n y calcularemos la utilidad
promedio por pa?s. Finalmente, procederemos a ordenar de forma descendente y extraeremos los 5
pa?ses con mayor utilidad.

Pa?s Utilidad Promedio


Dominica $865.659.812
Jamaica $462.154.906
Malta $329.126.670
Bahamas $246.968.587
Nueva Zelanda $222.969.441

Tabla 5. 5 pa?ses con mayor utilidad promedio.


Finalmente luego del mismo procedimiento realizado anteriormente, se generar? una tabla con los 5
pa?ses que menor utilidad generan en promedio, los cuales se pueden apreciar en la siguiente tabla.

Pa?s Utilidad Promedio


Tunisia $-41.696.962
Malaysia $-38.650.000
Libyan Arab Jamahiriya $-35.000.000
Aruba $-33.000.000
Ukraine $-26.000.000

Tabla 6. 5 pa?ses con menor utilidad promedio.

3
Universidad de Chile

Pregunta 4
Ahora se proceder? a cargar una nueva base de datos, llamada g?neros, la cual uniremos con la
tabla keywords, a trav?s del ID, para luego filtrar lo seg?n la palabra clave, que en este caso ser?
IMAX. Finalmente, se une la tabla que acabamos de generar con el dataset de pel?culas a trav?s de
el Id, luego solamente mantendremos las columnas genero, ingreso y keyword, omitiremos los NA y
agruparemos seg?n el genero, para obtener luego el ingreso promedio por cada uno de los generos de
las pel?culas, obteniendo la siguiente tabla.

G?nero Ingresos promedio en d?lares


Acci?n $666.231.560
Aventura $707.010.521
Animaci?n $603.900.354
Ciencia Ficci?n $563.520.496
Crimen $905.211.739
Documental $5.796.450
Drama $992.977.936
Familia $406.527.338
Fantas?a $160.112.671
Horror $115.633.632
Misterio $247.661.447
Romance $1.845.034.188
Triller $816.679.461

Tabla 7. Ingreso promedio en d?lares seg?n genero de la pel?cula.

Pregunta 5
En el desarrollo de la siguiente pregunta, se utiliza la libreria lubridate para ayudar la manipulaci?n
de fechas En primer lugar, se utilizar? el dataset de movie_data, donde se seleccionar? el id de cada
pel?cula y se quitar?n los duplicados para obtener el total de pel?culas final.
Por otra parte, en un nuevo vector creado llamada “Decada”, se seleccionar? desde el data set
movie_data las columnas de id y de release_date, creando una nueva columna llamada “a?o”
extrayendo solo en a?o de esta ?ltima columna mencionada.
Luego, se crear? un nuevo vector creado llamada “Decada 2” en donde se almacenar? adem?s de las
columnas anteriormente mencionadas, se agrega una columna llamada “decada” la cual muestra la
d?cada a la cual pertenece cada pel?cula a trav?s de una f?rmula que resta la unidad del a?o al a?o
de estreno.
A continuaci?n se seleccionan del nuevo vector creado “Decada 3” la col?mna decada para agrupar y
contar las pel?culas por su decada correspondiente, excluyendo posibles missings values.
Por ?ltimo, se crea un nuevo vector creado llamado “Decada_final” se seleccionan las columnas
Decada 2 y decada, aludiendo a la cantidad de pel?culas por por d?cada y la cantidad de pel?culas
total.Y finalmente, se agrega una columna donde se divide esta cantidad obtenida por decada sobre
el total de pel?culas para obtener una tasa la que se multiplica por 100 para obtener el porcentaje de
pel?culas por d?cada.

4
Universidad de Chile

decada Porcentaje
1910 0.02082032 %
1920 0.08328128 %
1930 0.31230481 %
1940 0.52050802 %
1950 0.56214866 %
1960 1.47824276 %
1970 2.26941495 %
1980 5.78804914 %
1990 16.19820945 %
2000 42.64001666 %
2010 30.10618364 %

Tabla 8.Porcentaje de pel?culas estrenadas por d?cada.


Pregunta 6
En la presente pregunta, se importa el dataset estados como “Estados” para su posterior utilizaci?n.
Para comenzar el desarrollo, se debe crear un vector llamada “mix4” que es la combinaci?n de dos
dataset por su id, una de ellas es “keywords y la otra es”movie_data“.
Posteriormente, se crea un vector llamada “estado1”, que selecciona desde el vector mix4, las columnas
de id, title, keywords y budget, filtrando las keywords seg?n un criterio creado con anterioridad el
cual se compone de los estados del dataset del mismo nombre.
A continuaci?n se crea el vector “estado 2” donde se agrupa desde el vector “estado1”, los keywords
y se calcula por otra parte el presupuesto_promediopresupuesto y en otra columna cantidad de
peliculas por estado.Para descubrir los estados que nunca fueron utilizados como lugar de filmaci?n,
se crea el vector “No_estados” el cual selecciona del vector “estado1” la columna keywords y elimina
sus duplicados.
Luego se filtran los estados que se encuentran en los lugares donde si hubo filmaci?n, para posterior-
mente extraer de la data “Estados” esta filtraci?n realizada recientemente, obteniendo as? la siguiente
tabla.

n Lista de Estados
1 delaware
2 district of columbia
3 north dakota
4 south dakota
5 vermont
6 washington

Tabla 9. Lista de estados que no fueron utilizados como set de filmaci?n.


Y por ?ltimo, para reconocer los estados sin presupuesto, se genera un vector llamado “estado3” en el
que del vector “estado1”, se seleccionan las columnas keywords y budget, se agrupa seg?n el keywords
y se suma sus respectivos presupuestos. Para finalmente, filtrar del nuevo vector “estado3” la suma
por estado que resulten dar 0.

5
Universidad de Chile

n Keywords suma
1 illinois 0

Tabla 10.Estados donde se asign? un presupuesto 0 .

ANEXO 1

library(tidyverse) library(readr) library(dplyr)


Pregunta 1
keywords = read_csv(“C:/Users/Agustin/Desktop/Dataset/keywords.csv”)
View(keywords)
keywords2 = keywords %>% count(keywords) %>% arrange(desc(n)) %>% head(10) View(keywords2)
Pregunta 2.a
movie_data = read_csv(“C:/Users/Agustin/Desktop/Dataset/movie_dataset.csv”)
test1 = merge(x = keywords, y = movie_data, by = “id”, all = FALSE) View(test1)
movie_data2a = test1 %>% select(title,revenue) %>% arrange(desc(revenue))
movie_data2a = distinct(movie_data2a,title,revenue) %>% head(10)
View(movie_data2a)
pregunta 2.b
movie_data2b = test1 %>% na.omit() %>% select(title,revenue) %>% filter(revenue>0)%>%
arrange(revenue)
movie_data2b = distinct(movie_data2b,title,revenue) %>% head(10)
View(movie_data2b)
Pregunta 2.c
movie_data2c = test1 %>% na.omit() %>% select(title,revenue) %>% filter(revenue==0)
movie_data2c = distinct(movie_data2c,title,revenue) %>% count(revenue)
View(movie_data2c)
Pregunta 3
countries = read_csv(“C:/Users/Agustin/Desktop/Dataset/production_countries.csv”)
mix2 = merge(x = movie_data, y = countries, by = “id”, all = TRUE)
View(mix2)
Cant_pais= mix2 %>% na.omit()%>% select(title,production_countries) %>% count(production_countries)
View(Cant_pais)

6
Universidad de Chile

Utilidad por pais


Utilidad_pelicula = mix2 %>% na.omit()%>% select(production_countries, revenue, budget) %>%
mutate(utilidad = revenue - budget) %>% group_by(production_countries) %>% summarise(
utilidad_por_pais = sum(utilidad), producciones = n())
Utilidad_peliculautilidadp orp ais = paste(”“,Utilidad_pelicula$utilidad_por_pais,” “)
View(Utilidad_pelicula)
5 Mejores pel?culas
mejores_5 = mix2 %>% na.omit()%>% select(title,revenue, budget,production_countries)
%>% mutate(utilidad = revenue - budget) %>% group_by(production_countries) %>% sum-
marise(utilidad_promedio = mean(utilidad))%>% arrange(desc(utilidad_promedio)) %>%
head(5)
View(mejores_5)
5 Peores pel?culas
peores_5 = mix2 %>% na.omit()%>% select(title,revenue, budget,production_countries)
%>% mutate(utilidad = revenue - budget) %>% group_by(production_countries) %>%
summarise(utilidad_promedio = mean(utilidad))%>% arrange(utilidad_promedio) %>% head(5)
View(peores_5)
Pregunta 4
generos = read_csv(“C:/Users/Agustin/Desktop/Dataset/genres.csv”)
View(generos)
mix3 = merge(x = keywords, y = generos, by = “id”, all = TRUE) %>% filter(keywords == “imax”)
Peli_genero = merge(x = mix3, y = movie_data, by = “id”,all = TRUE) %>% select(genres,
revenue, keywords) %>% na.omit() %>% group_by(genres)%>% summarise(ingreso_promedio =
mean(revenue))
View(Peli_genero)
Pregunta 5
library(lubridate)
total_pelis= select(movie_data, id)%>% summarise(total= n_distinct(id)) View(total_pelis) Decada
= select(movie_data, id,release_date) %>% mutate(a?o = year(release_date)) Decada2 = mu-
tate(Decada, decada = a?o - a?o%%10) View(Decada2)
Decada3 = select(Decada2,decada)%>% group_by(decada)%>% count(decada) %>% na.omit()
View(Decada3) Decada_final = merge(x=Decada3,y=total_pelis) Decada_porcentaje = mu-
tate(Decada_final, Porcentaje = (n/total)*100 )
View(Decada_porcentaje)
Pregunta6
Estados = read_csv(“C:/Users/Agustin/Desktop/Tarea 1 R/estados.csv”)
mix4 = merge(x = keywords, y = movie_data, by = “id”, all = FALSE) View(mix4)

7
Universidad de Chile

dat <- read.csv(“C:/Users/Agustin/Desktop/Tarea 1 R/estados.csv”,header=F)$V1 estado1 = se-


lect(mix4,id,title,keywords,budget)%>%filter(keywords %in% dat)%>% na.omit() presupuesto y canti-
dad de peliculas por estado estado2 = group_by(estado1,keywords)%>%summarise(presupuesto_promedio
= mean(budget),total=n()) View(estado2)
estados que no estan
No_estados = select(estado1,keywords)%>%distinct(keywords) filtro_estado = filter(No_estados,
keywords %in% dat) No_estados2 = select(Estados, lista_estados) %>% filter(!lista_estados %in%
filtro_estado$keywords) View(No_estados2)
Estados sin presupuesto
estado3 = select(estado1,keywords,budget) %>% group_by(keywords) %>% summarise(suma =
sum(as.numeric(budget)))
Estado_sin_p = filter(estado3, suma == 0) View(Estado_sin_p)

También podría gustarte