P1

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

library(data.table)
base<-as.data.table(read.csv("Actividad 2.csv"))

P2

Revise la base de datos y elimine las aplicaciones que se encuentran duplicados. Pista: El comando duplicated da información acerca de las filas que se encuentran duplicados según el valor de alguna variable (o columna).

base[!duplicated(App)]
##                                                        App
##    1:       Photo Editor & Candy Camera & Grid & ScrapBook
##    2:                                  Coloring book moana
##    3: U Launcher Lite â\200“ FREE Live Cool Themes, Hide Apps
##    4:                                Sketch - Draw & Paint
##    5:                Pixel Draw - Number Art Coloring Book
##   ---                                                     
## 9656:                                     Sya9a Maroc - FR
## 9657:                     Fr. Mike Schmitz Audio Teachings
## 9658:                               Parkinson Exercices FR
## 9659:                        The SCP Foundation DB fr nn5n
## 9660:        iHoroscope - 2018 Daily Horoscope & Astrology
##                  Category Rating Reviews               Size    Installs
##    1:      ART_AND_DESIGN    4.1     159                19M     10,000+
##    2:      ART_AND_DESIGN    3.9     967                14M    500,000+
##    3:      ART_AND_DESIGN    4.7   87510               8.7M  5,000,000+
##    4:      ART_AND_DESIGN    4.5  215644                25M 50,000,000+
##    5:      ART_AND_DESIGN    4.3     967               2.8M    100,000+
##   ---                                                                  
## 9656:              FAMILY    4.5      38                53M      5,000+
## 9657:              FAMILY    5.0       4               3.6M        100+
## 9658:             MEDICAL    NaN       3               9.5M      1,000+
## 9659: BOOKS_AND_REFERENCE    4.5     114 Varies with device      1,000+
## 9660:           LIFESTYLE    4.5  398307                19M 10,000,000+
##       Type Price Content.Rating                    Genres     Last.Updated
##    1: Free     0       Everyone              Art & Design  January 7, 2018
##    2: Free     0       Everyone Art & Design;Pretend Play January 15, 2018
##    3: Free     0       Everyone              Art & Design   August 1, 2018
##    4: Free     0           Teen              Art & Design     June 8, 2018
##    5: Free     0       Everyone   Art & Design;Creativity    June 20, 2018
##   ---                                                                     
## 9656: Free     0       Everyone                 Education    July 25, 2017
## 9657: Free     0       Everyone                 Education     July 6, 2018
## 9658: Free     0       Everyone                   Medical January 20, 2017
## 9659: Free     0     Mature 17+         Books & Reference January 19, 2015
## 9660: Free     0       Everyone                 Lifestyle    July 25, 2018
##              Current.Ver        Android.Ver
##    1:              1.0.0       4.0.3 and up
##    2:              2.0.0       4.0.3 and up
##    3:              1.2.4       4.0.3 and up
##    4: Varies with device         4.2 and up
##    5:                1.1         4.4 and up
##   ---                                      
## 9656:               1.48         4.1 and up
## 9657:                1.0         4.1 and up
## 9658:                1.0         2.2 and up
## 9659: Varies with device Varies with device
## 9660: Varies with device Varies with device

P3

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

objeto<-base[ , c("App","Category","Rating","Reviews","Installs","Type","Price","Content.Rating")]

P4

Cree un objeto que este compuesto por el número de observaciones de cada categoría. Pista: Tiene que contar cuantas observaciones hay para cada categoría.

obs<-table(objeto[,Category])
obs[]
## 
##                 1.9      ART_AND_DESIGN   AUTO_AND_VEHICLES 
##                   1                  65                  85 
##              BEAUTY BOOKS_AND_REFERENCE            BUSINESS 
##                  53                 231                 460 
##              COMICS       COMMUNICATION              DATING 
##                  60                 387                 234 
##           EDUCATION       ENTERTAINMENT              EVENTS 
##                 156                 149                  64 
##              FAMILY             FINANCE      FOOD_AND_DRINK 
##                1972                 366                 127 
##                GAME  HEALTH_AND_FITNESS      HOUSE_AND_HOME 
##                1144                 341                  88 
##  LIBRARIES_AND_DEMO           LIFESTYLE MAPS_AND_NAVIGATION 
##                  85                 382                 137 
##             MEDICAL  NEWS_AND_MAGAZINES           PARENTING 
##                 463                 283                  60 
##     PERSONALIZATION         PHOTOGRAPHY        PRODUCTIVITY 
##                 392                 335                 424 
##            SHOPPING              SOCIAL              SPORTS 
##                 260                 295                 384 
##               TOOLS    TRAVEL_AND_LOCAL       VIDEO_PLAYERS 
##                 843                 258                 175 
##             WEATHER 
##                  82

P5

Cree un objeto que contenga información solo de las categrías que más se relacionan con el rubro de la empresa (SOCIAL y PHOTOGRAPHY). Pista: tiene que crear una base de datos que tenga toda la información de las dos categorías mencionadas.

S<-base[Category=="SOCIAL"]
P<-base[Category=="PHOTOGRAPHY"]
SP<-rbind(S,P)
rm(list="S","P")

P6

Cree un objeto que contenga el número de observaciones por categoría, el promedio de comentarios (Reviews) y el promedio del Rating. Pista: Recuerde que para calcular promedios, necesitamos que las variables character sean numéricas.

conteo<-as.data.table(obs)
base[,Nrev:=as.numeric(as.character(base[,Reviews]))]
## Warning in eval(jsub, SDenv, parent.frame()): NAs introducidos por coerción
Promedios<-base[,.(PReview=mean(Nrev,na.rm = T),PRating=mean(Rating,na.rm = T)),by=Category]