Aditi Chakraborty

Webel COE Data science batch

Import Library:-

library(dplyr)

Attaching package: 㤼㸱dplyr㤼㸲

The following objects are masked from 㤼㸱package:stats㤼㸲:

    filter, lag

The following objects are masked from 㤼㸱package:base㤼㸲:

    intersect, setdiff, setequal, union

Loading mtcars dataset

data("mtcars")

Display of complete structure of mtcars dataset

str(mtcars)
'data.frame':   32 obs. of  11 variables:
 $ mpg : num  21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
 $ cyl : num  6 6 4 6 8 6 8 4 4 6 ...
 $ disp: num  160 160 108 258 360 ...
 $ hp  : num  110 110 93 110 175 105 245 62 95 123 ...
 $ drat: num  3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
 $ wt  : num  2.62 2.88 2.32 3.21 3.44 ...
 $ qsec: num  16.5 17 18.6 19.4 17 ...
 $ vs  : num  0 0 1 1 0 1 0 1 1 1 ...
 $ am  : num  1 1 1 0 0 0 0 0 0 0 ...
 $ gear: num  4 4 4 3 3 3 3 4 4 4 ...
 $ carb: num  4 4 1 1 2 1 4 2 2 4 ...

Data Manipulation and Analysis

1. Get the unique count of cars

mtcars %>%
  summarise(count_Of_car = n_distinct(rownames(mtcars)))

2. Get mean of weight by cylinder

mtcars %>% group_by(cyl) %>% summarise(mean_weight = mean(wt))
`summarise()` ungrouping output (override with `.groups` argument)

3. Get the no of cars by gear

mtcars %>% group_by(gear) %>% summarise(No_Of_Cars=n())
`summarise()` ungrouping output (override with `.groups` argument)

4. Get mean mpg by gear and carb and cyl

Mean mpg by gear

mtcars %>% group_by(gear) %>%
  summarise(Mean_MPG = mean(mpg))
`summarise()` ungrouping output (override with `.groups` argument)

Mean mpg by carb

mtcars %>% group_by(carb) %>%
  summarise(Mean_MPG = mean(mpg))
`summarise()` ungrouping output (override with `.groups` argument)

Mean mpg by cyl

mtcars %>% group_by(cyl) %>%
  summarise(Mean_MPG = mean(mpg))
`summarise()` ungrouping output (override with `.groups` argument)

Mean mpg by gear and carb and cyl

mtcars %>% group_by(gear,carb,cyl) %>%
  summarise(Mean_MPG = mean(mpg))
`summarise()` regrouping output by 'gear', 'carb' (override with `.groups` argument)

5. Which car has the max hp ?

MAX_HP <- max(mtcars$hp)
print("Maximum HP is")
[1] "Maximum HP is"
print(MAX_HP)
[1] 335
mtcars %>% filter(hp==MAX_HP) %>%
  select(disp,gear,hp)

Insight: Maserati Bora has the maximum HP 335

6. Which car has the minimum displacement ?

Min_DISP <- min(mtcars$disp)
mtcars %>% filter(disp==Min_DISP) %>%
  select(disp,gear,hp)

Insight: Toyota Corolla has the minimum displacement 71.1

7. Get summary of the data

summary(mtcars)
      mpg             cyl             disp             hp       
 Min.   :10.40   Min.   :4.000   Min.   : 71.1   Min.   : 52.0  
 1st Qu.:15.43   1st Qu.:4.000   1st Qu.:120.8   1st Qu.: 96.5  
 Median :19.20   Median :6.000   Median :196.3   Median :123.0  
 Mean   :20.09   Mean   :6.188   Mean   :230.7   Mean   :146.7  
 3rd Qu.:22.80   3rd Qu.:8.000   3rd Qu.:326.0   3rd Qu.:180.0  
 Max.   :33.90   Max.   :8.000   Max.   :472.0   Max.   :335.0  
      drat             wt             qsec      
 Min.   :2.760   Min.   :1.513   Min.   :14.50  
 1st Qu.:3.080   1st Qu.:2.581   1st Qu.:16.89  
 Median :3.695   Median :3.325   Median :17.71  
 Mean   :3.597   Mean   :3.217   Mean   :17.85  
 3rd Qu.:3.920   3rd Qu.:3.610   3rd Qu.:18.90  
 Max.   :4.930   Max.   :5.424   Max.   :22.90  
       vs               am              gear      
 Min.   :0.0000   Min.   :0.0000   Min.   :3.000  
 1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:3.000  
 Median :0.0000   Median :0.0000   Median :4.000  
 Mean   :0.4375   Mean   :0.4062   Mean   :3.688  
 3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:4.000  
 Max.   :1.0000   Max.   :1.0000   Max.   :5.000  
      carb      
 Min.   :1.000  
 1st Qu.:2.000  
 Median :2.000  
 Mean   :2.812  
 3rd Qu.:4.000  
 Max.   :8.000  

8. Out of all the cars with 4 cyl which car has max displ and min hp?

cars with 4 cyl

cyl_4_car <- filter(mtcars,cyl==4)
cyl_4_car %>% select(cyl,disp,hp)

cars having maximum disp with 4 cyl

cyl_4_car %>% filter(disp==max(cyl_4_car$disp)) %>%
  select(cyl,disp,hp)
NA

Insight: Merc 240D which has 4 cylinder having the maximum displacement 146.7

cars having min HP with 4 cyl

cyl_4_car %>% filter(hp==min(cyl_4_car$hp)) %>%
  select(cyl,disp,hp)

Insight: Honda Civic which has 4 cylinder having minimum HP 52

9. Out of all the cars with 4 gear and >=4 cyl which car has max displ and min hp?

cars with 4 gear and cyl>=4

gr_cl_4_car <- filter(mtcars,gear==4,cyl>=4) 
gr_cl_4_car %>% select(gear,cyl,hp,disp)

Cars having maximum disp with 4 gear and cyl>=4

gr_cl_4_car %>% filter(disp==max(gr_cl_4_car$disp)) %>%
  select(gear,cyl,hp,disp)

Insight: Merc 280 and Merc 280C which have 6 cyl and 4 gear having maximum disp 167.6

cars having minimum HP with 4 gear and cyl>=4

gr_cl_4_car %>% filter(hp==min(gr_cl_4_car$hp)) %>%
  select(gear,cyl,hp,disp)

Insight: Honda Civic which have 4 cyl and 4 gear having minimum HP 52

LS0tDQp0aXRsZTogIm10Y2FycyBBc3NpZ25tZW50XzEgIg0Kb3V0cHV0OiBodG1sX25vdGVib29rDQoNCi0tLQ0KDQojIyBBZGl0aSBDaGFrcmFib3J0eSANCiMjIyBXZWJlbCBDT0UgRGF0YSBzY2llbmNlIGJhdGNoDQoNCg0KIyMjIEltcG9ydCBMaWJyYXJ5Oi0NCmBgYHtyfQ0KbGlicmFyeShkcGx5cikNCmBgYA0KDQoNCg0KIyMjIExvYWRpbmcgbXRjYXJzIGRhdGFzZXQNCg0KYGBge3J9DQpkYXRhKCJtdGNhcnMiKQ0KYGBgDQoNCiMjIyBQcmludCB0aGUgMXN0IDYgcm93cw0KYGBge3J9DQpoZWFkKG10Y2FycykNCmBgYA0KDQojIyMgRGlzcGxheSBvZiBjb21wbGV0ZSBzdHJ1Y3R1cmUgb2YgbXRjYXJzIGRhdGFzZXQNCmBgYHtyfQ0Kc3RyKG10Y2FycykNCmBgYA0KIyAgRGF0YSBNYW5pcHVsYXRpb24gYW5kIEFuYWx5c2lzDQoNCiMjIDEuIEdldCB0aGUgdW5pcXVlIGNvdW50IG9mIGNhcnMNCmBgYHtyfQ0KbXRjYXJzICU+JQ0KICBzdW1tYXJpc2UoY291bnRfT2ZfY2FyID0gbl9kaXN0aW5jdChyb3duYW1lcyhtdGNhcnMpKSkNCmBgYA0KDQojIyAyLiBHZXQgbWVhbiBvZiB3ZWlnaHQgYnkgY3lsaW5kZXINCmBgYHtyfQ0KbXRjYXJzICU+JSBncm91cF9ieShjeWwpICU+JSBzdW1tYXJpc2UobWVhbl93ZWlnaHQgPSBtZWFuKHd0KSkNCmBgYA0KDQojIyAzLiBHZXQgdGhlIG5vIG9mIGNhcnMgYnkgZ2Vhcg0KYGBge3J9DQptdGNhcnMgJT4lIGdyb3VwX2J5KGdlYXIpICU+JSBzdW1tYXJpc2UoTm9fT2ZfQ2Fycz1uKCkpDQpgYGANCg0KIyMgNC4gR2V0IG1lYW4gbXBnIGJ5IGdlYXIgYW5kIGNhcmIgYW5kIGN5bA0KDQojIyMgTWVhbiBtcGcgYnkgZ2VhciANCmBgYHtyfQ0KbXRjYXJzICU+JSBncm91cF9ieShnZWFyKSAlPiUNCiAgc3VtbWFyaXNlKE1lYW5fTVBHID0gbWVhbihtcGcpKQ0KDQpgYGANCiMjIyBNZWFuIG1wZyBieSBjYXJiIA0KYGBge3J9DQptdGNhcnMgJT4lIGdyb3VwX2J5KGNhcmIpICU+JQ0KICBzdW1tYXJpc2UoTWVhbl9NUEcgPSBtZWFuKG1wZykpDQpgYGANCiMjIyBNZWFuIG1wZyBieSBjeWwgDQpgYGB7cn0NCm10Y2FycyAlPiUgZ3JvdXBfYnkoY3lsKSAlPiUNCiAgc3VtbWFyaXNlKE1lYW5fTVBHID0gbWVhbihtcGcpKQ0KYGBgDQoNCiMjIyBNZWFuIG1wZyBieSBnZWFyIGFuZCBjYXJiIGFuZCBjeWwNCmBgYHtyfQ0KbXRjYXJzICU+JSBncm91cF9ieShnZWFyLGNhcmIsY3lsKSAlPiUNCiAgc3VtbWFyaXNlKE1lYW5fTVBHID0gbWVhbihtcGcpKQ0KYGBgDQoNCg0KIyMgNS4gV2hpY2ggY2FyIGhhcyB0aGUgbWF4IGhwID8NCmBgYHtyfQ0KTUFYX0hQIDwtIG1heChtdGNhcnMkaHApDQpwcmludCgiTWF4aW11bSBIUCBpcyIpDQpwcmludChNQVhfSFApDQpgYGANCmBgYHtyfQ0KbXRjYXJzICU+JSBmaWx0ZXIoaHA9PU1BWF9IUCkgJT4lDQogIHNlbGVjdChkaXNwLGdlYXIsaHApDQpgYGANCg0KIyMjIEluc2lnaHQ6IE1hc2VyYXRpIEJvcmEgaGFzIHRoZSBtYXhpbXVtIEhQIDMzNQ0KDQojIyA2LiBXaGljaCBjYXIgaGFzIHRoZSBtaW5pbXVtIGRpc3BsYWNlbWVudCA/DQoNCmBgYHtyfQ0KTWluX0RJU1AgPC0gbWluKG10Y2FycyRkaXNwKQ0KbXRjYXJzICU+JSBmaWx0ZXIoZGlzcD09TWluX0RJU1ApICU+JQ0KICBzZWxlY3QoZGlzcCxnZWFyLGhwKQ0KYGBgDQoNCiMjIyBJbnNpZ2h0OiBUb3lvdGEgQ29yb2xsYSBoYXMgdGhlIG1pbmltdW0gZGlzcGxhY2VtZW50IDcxLjENCg0KIyMgNy4gR2V0IHN1bW1hcnkgb2YgdGhlIGRhdGENCmBgYHtyfQ0Kc3VtbWFyeShtdGNhcnMpDQpgYGANCg0KIyMgOC4gT3V0IG9mIGFsbCB0aGUgY2FycyB3aXRoIDQgY3lsIHdoaWNoIGNhciBoYXMgbWF4IGRpc3BsIGFuZCBtaW4gaHA/DQoNCiMjIyBjYXJzIHdpdGggNCBjeWwNCmBgYHtyfQ0KY3lsXzRfY2FyIDwtIGZpbHRlcihtdGNhcnMsY3lsPT00KQ0KY3lsXzRfY2FyICU+JSBzZWxlY3QoY3lsLGRpc3AsaHApDQpgYGANCg0KIyMjIGNhcnMgaGF2aW5nIG1heGltdW0gZGlzcCB3aXRoIDQgY3lsDQpgYGB7cn0NCmN5bF80X2NhciAlPiUgZmlsdGVyKGRpc3A9PW1heChjeWxfNF9jYXIkZGlzcCkpICU+JQ0KICBzZWxlY3QoY3lsLGRpc3AsaHApDQpgYGANCg0KIyMjIEluc2lnaHQ6IE1lcmMgMjQwRCB3aGljaCBoYXMgNCBjeWxpbmRlciBoYXZpbmcgdGhlIG1heGltdW0gICBkaXNwbGFjZW1lbnQgMTQ2LjcgDQoNCiMjIyBjYXJzIGhhdmluZyBtaW4gSFAgd2l0aCA0IGN5bA0KYGBge3J9DQpjeWxfNF9jYXIgJT4lIGZpbHRlcihocD09bWluKGN5bF80X2NhciRocCkpICU+JQ0KICBzZWxlY3QoY3lsLGRpc3AsaHApDQpgYGANCg0KIyMjIEluc2lnaHQ6IEhvbmRhIENpdmljIHdoaWNoIGhhcyA0IGN5bGluZGVyIGhhdmluZyBtaW5pbXVtIEhQIDUyDQoNCiMjIDkuIE91dCBvZiBhbGwgdGhlIGNhcnMgd2l0aCA0IGdlYXIgYW5kID49NCBjeWwgd2hpY2ggY2FyIGhhcyBtYXggZGlzcGwgYW5kIG1pbiBocD8NCg0KIyMjIGNhcnMgd2l0aCA0IGdlYXIgYW5kIGN5bD49NA0KYGBge3J9DQpncl9jbF80X2NhciA8LSBmaWx0ZXIobXRjYXJzLGdlYXI9PTQsY3lsPj00KSANCmdyX2NsXzRfY2FyICU+JSBzZWxlY3QoZ2VhcixjeWwsaHAsZGlzcCkNCmBgYA0KDQoNCiMjIyBDYXJzIGhhdmluZyBtYXhpbXVtIGRpc3Agd2l0aCA0IGdlYXIgYW5kIGN5bD49NA0KYGBge3J9DQpncl9jbF80X2NhciAlPiUgZmlsdGVyKGRpc3A9PW1heChncl9jbF80X2NhciRkaXNwKSkgJT4lDQogIHNlbGVjdChnZWFyLGN5bCxocCxkaXNwKQ0KYGBgDQoNCiMjIyBJbnNpZ2h0OiBNZXJjIDI4MCBhbmQgTWVyYyAyODBDIHdoaWNoIGhhdmUgNiBjeWwgYW5kIDQgZ2VhciBoYXZpbmcgbWF4aW11bSBkaXNwIDE2Ny42DQoNCiMjIyBjYXJzIGhhdmluZyBtaW5pbXVtIEhQIHdpdGggNCBnZWFyIGFuZCBjeWw+PTQNCmBgYHtyfQ0KZ3JfY2xfNF9jYXIgJT4lIGZpbHRlcihocD09bWluKGdyX2NsXzRfY2FyJGhwKSkgJT4lDQogIHNlbGVjdChnZWFyLGN5bCxocCxkaXNwKQ0KYGBgDQoNCiMjIyBJbnNpZ2h0OiBIb25kYSBDaXZpYyB3aGljaCBoYXZlIDQgY3lsIGFuZCA0IGdlYXIgaGF2aW5nIG1pbmltdW0gSFAgNTINCg0K