P1

Cargue la base de datos Act3.csv y los paquetes que sean necesario para trabajar un data.table.

library(data.table)
actividad3<-fread("Act3.csv",fill = TRUE)

P2

Revise la base de datos y elimine las aplicaciones que se encuentran duplicadas.

actividad3[duplicated(App)]
##                                      App      Category Rating Reviews
##    1:       Quick PDF Scanner + OCR FREE      BUSINESS    4.2   80805
##    2:                                Box      BUSINESS    4.2  159872
##    3:                 Google My Business      BUSINESS    4.4   70991
##    4:                ZOOM Cloud Meetings      BUSINESS    4.4   31614
##    5:          join.me - Simple Meetings      BUSINESS    4.0    6989
##   ---                                                                
## 1177:                 FarmersOnly Dating        DATING    3.0    1145
## 1178: Firefox Focus: The privacy browser COMMUNICATION    4.4   36981
## 1179:                        FP Notebook       MEDICAL    4.5     410
## 1180:     Slickdeals: Coupons & Shopping      SHOPPING    4.5   33599
## 1181:                               AAFP       MEDICAL    3.8      63
##                     Size    Installs Type Price Content Rating        Genres
##    1: Varies with device  5,000,000+ Free     0       Everyone      Business
##    2: Varies with device 10,000,000+ Free     0       Everyone      Business
##    3: Varies with device  5,000,000+ Free     0       Everyone      Business
##    4:                37M 10,000,000+ Free     0       Everyone      Business
##    5: Varies with device  1,000,000+ Free     0       Everyone      Business
##   ---                                                                       
## 1177:               1.4M    100,000+ Free     0     Mature 17+        Dating
## 1178:               4.0M  1,000,000+ Free     0       Everyone Communication
## 1179:                60M     50,000+ Free     0       Everyone       Medical
## 1180:                12M  1,000,000+ Free     0       Everyone      Shopping
## 1181:                24M     10,000+ Free     0       Everyone       Medical
##            Last Updated        Current Ver        Android Ver
##    1: February 26, 2018 Varies with device       4.0.3 and up
##    2:     July 31, 2018 Varies with device Varies with device
##    3:     July 24, 2018   2.19.0.204537701         4.4 and up
##    4:     July 20, 2018     4.1.28165.0716         4.0 and up
##    5:     July 16, 2018          4.3.0.508         4.4 and up
##   ---                                                        
## 1177: February 25, 2016                2.2         4.0 and up
## 1178:      July 6, 2018                5.2         5.0 and up
## 1179:    March 24, 2018          2.1.0.372         4.4 and up
## 1180:     July 30, 2018                3.9         4.4 and up
## 1181:     June 22, 2018              2.3.1         5.0 and up
actividad3<-actividad3[!duplicated(App)]

P3

Cree un nuevo objeto que contenga las siguientes variables de interés: App,Category,Rating,Reviews,Installs,Type,Price y Content Rating.

variables_interes<-actividad3[,.N,by=c("App", "Category", "Rating", "Reviews", "Installs", "Type", "Price", "Content Rating")]

P4

Para el objeto anterior, elimine la categoría 1.9 de la variable Category.

variables_interes<-variables_interes[!variables_interes$Category==1.9,]

P5

Cree un objeto que este compuesto por el número de observaciones de cada categoría.

numero_observaciones<-actividad3[,.N,by=Category]

P6

Reemplace el objeto anterior para que ahora contenga el número de observaciones, el promedio de comentarios (Reviews) y el promedio del Rating por categoría.

numero_observaciones<-actividad3[,observaciones:=.N,by=Category]

numero_observaciones[,promedio_comentarios:=mean(Reviews,na.rm = TRUE)]
## Warning in mean.default(Reviews, na.rm = TRUE): argument is not numeric or
## logical: returning NA
actividad3[,Reviews:=as.numeric(Reviews)]
## Warning in eval(jsub, SDenv, parent.frame()): NAs introduced by coercion
numero_observaciones[,promedio_rating:=mean(Rating,na.rm = TRUE)]

numero_observaciones<-actividad3[,Categoria:=Category]

numero_observaciones<-numero_observaciones[,c(14,15,16,17)]

P7

Renombre las columnas del objeto de la pregunta 6. La primera columna debe ser Categoria, la segunda columna Numero_Observaciones, la tercera columa Promedio_Comentarios y la cuarta columna Promedio_Rating.

colnames(numero_observaciones)=c("Numero_Observaciones","Promedio_Comentarios","Promedio_Rating","Categoria")

numero_observaciones<-numero_observaciones[,c(1,2,3,4)]

col
## function (x, as.factor = FALSE) 
## {
##     if (as.factor) {
##         labs <- colnames(x, do.NULL = FALSE, prefix = "")
##         res <- factor(.Internal(col(dim(x))), labels = labs)
##         dim(res) <- dim(x)
##         res
##     }
##     else .Internal(col(dim(x)))
## }
## <bytecode: 0x67af008>
## <environment: namespace:base>

P8

Ahora queremos analizar el nivel de competencia que existe por categoría para identificar cómo se encuentra valorada cada categoría de aplicaciones. Para realizar esto, debe crear un objeto con el identificador de competencia para cada categoría. El indicador esta definido como Icompetencia=(reviews∗rating)1000¯ Este identificador debe calcularse con el objeto de la Pregunta 4.

variables_interes[,Reviews:=as.numeric(Reviews)]

i_competencia<-variables_interes[,identificador_competencia:=(Reviews*Rating/1000)]

i_competencia<-i_competencia[,c(2,10)]

i_competencia<-i_competencia[!is.na(identificador_competencia),]

P9

Renombrar las columnas del objeto de la Pregunta 8. La primera columna debe ser Categoria y la segunda columna Identificador.

colnames(i_competencia)=c("Categoria","Identificador")

P10

Reemplace el objeto de la Pregunta 7 realizando un merge entre el objeto de la Pregunta 7 y el objeto de la Pregunta 9.

No nos resultó, no tengo idea por qué, pero el comando debiese ser el siguiente, intenté con all.x=TRUE, sort= F pero no pasó nada :( numero_observaciones<-merge(x=numero_observaciones,y=i_competencia, by=“Categoria”)

P11

Cree un objeto, a partir del objeto de la pregunta anterior, que contenga información solo de las categrías que más se relacionan con el rubro de la empresa (SOCIAL y PHOTOGRAPHY).

relacion_categorias<-numero_observaciones[Categoria=="SOCIAL"|Categoria=="PHOTOGRAPHY"]

Bonus

Realizar un gráfico que relacione dos variables que para usted sean relevantes relacionar. Para esto utilice el objeto de la Pregunta 3. Explique su gráfico.