install.packages("tidyverse")
Error in install.packages : Updating loaded packages
install.packages("tidyverse")
Error in install.packages : Updating loaded packages
install.packages("tidyverse")
Error in install.packages : Updating loaded packages
library(tidyverse)
package ‘tidyverse’ was built under R version 3.6.2Registered S3 methods overwritten by 'dbplyr':
method from
print.tbl_lazy
print.tbl_sql
── Attaching packages ─────────────────────────────────── tidyverse 1.3.1 ──
✓ ggplot2 3.3.3 ✓ purrr 0.3.4
✓ tibble 3.1.0 ✓ dplyr 1.0.5
✓ tidyr 1.1.3 ✓ stringr 1.4.0
✓ readr 1.4.0 ✓ forcats 0.5.1
package ‘ggplot2’ was built under R version 3.6.2── Conflicts ────────────────────────────────────── tidyverse_conflicts() ──
x dplyr::filter() masks stats::filter()
x dplyr::lag() masks stats::lag()
sin(cos(exp(1)))
[1] -0.7905667
1 %>% exp %>% cos %>% sin
[1] -0.7905667
dat <- read_csv("https://github.com/Godoy/imdb-5000-movie-dataset/raw/master/data/movie_metadata.csv")
dat %>% summarise_all(function(x) {mean(x, na.rm=TRUE)})
dat %>% drop_na("color")
drop_na(dat, "color")
dat %>% drop_na("color") %>% pull("gross") %>% head(10)
dat %>% drop_na() %>% pull("gross")
[1] 760505847 309404152 200074175 448130642 73058679 336530303 200807262
[8] 458991599 301956980 330249062 200069408 168368427 423032628 89289910
[15] 291021565 141614023 623279547 241063875 179020854 255108370 262030663
[22] 105219735 258355354 70083519 218051260 658672302 407197282 65173160
[29] 652177271 304360277 373377893 408992272 334185206 234360014 268488329
[36] 402076689 245428137 234903076 202853933 172051787 191450875 116593191
[43] 414984497 125320003 350034110 202351611 233914986 228756232 65171860
[50] 144812796 90755643 101785482 352358779 317011114 237282182 130468626
[57] 223806889 140080850 166112167 137850096 47375327 124051759 291709845
[64] 154985087 533316061 292979556 198332128 318298180 73820094 113745408
[71] 102176165 161087183 100289690 100189501 88246220 150167630 356454367
[78] 362645141 312057433 155111815 241407328 208543795 38297305 259746958
[85] 238371987 93417865 222487711 189412677 665426 102315545 217387997
[92] 150350192 333130696 187991439 292568851 144512310 127490802 146405371
[99] 281666058 63143812 60655503 76846624 320706665 46978995 89732035
[106] 104383624 198539855 318759914 34293771 292000866 289994397 227946274
[113] 256386216 206456431 206435493 205343774 179982968 177243721 179883016
[120] 139259759 400736600 281492479 206360018 153629485 133375846 181015141
[127] 114053579 119420252 83640426 79711678 195000874 61937495 124051759
[134] 126597121 165230261 131564731 133382309 73103784 21379315 64459316
[141] 34964818 111505642 133228348 216366733 160201106 118099659 201573391
[148] 190418803 82161969 143523463 209364921 103400692 110332737 111110575
[155] 65007045 257704099 403706375 176997107 31141074 31704416 107503316
[162] 129734803 132122995 122512052 68642452 32131830 176636816 126930660
[169] 93926386 292298923 63992328 134518390 52792307 183635922 83024900
[176] 123207194 83348920 227137090 215395021 180191634 424645577 292298923
[183] 177343675 234277056 138396624 149234747 118311368 101160529 77564037
[190] 249358727 49551662 60522097 137748063 113733726 148337537 317557891
[197] 33592415 305388685 337103873 217536138 131536019 214948780 209805005
[204] 186830669 163192114 119412921 32694788 113165635 107285004 260031035
[211] 186739919 215397307 182618434 131920333 124976634 115802596 108521835
[218] 100685880 126464904 64736114 93050117 57637485 58607007 43929341
[225] 30212620 76418654 89021735 380262555 310675583 289907418 132550960
[232] 474544677 187165546 40911830 47952020 190871240 274084951 67155742
[239] 56114221 250863268 155181732 125332007 113330342 125531634 186336103
[246] 129995817 102608827 42776259 98780042 106369117 142614158 50026353
[253] 66002193 85463309 71017784 48068396 61656849 134520804 313837577
[260] 24004159 58183966 100446895 144795350 47396698 140015224 104374107
[267] 228430993 35799026 6712451 101643008 187670866 132014112 261970615
[274] 167007184 180011740 204843350 97030725 130127620 146282411 65452312
[281] 148383780 119219978 101228120 162804648 100117603 89296573 85017401
[288] 173005002 75030163 77222184 34964818 107515297 67631157 66862068
[295] 57366262 116866727 184031112 54700065 27098580 55673333 40198710
[302] 72660029 38120554 49392095 39292022 28772222 17010646 24985612
[309] 4411102 35024475 130174897 10200000 202007640 77679638 9213
[316] 58867694 59475623 108638745 86897182 63540020 95328937 50802661
[323] 161317423 201148159 43982842 380838870 377019252 340478898 17176900
[330] 131144183 23014504 181166115 176740650 71148699 67344392 22406362
[337] 261437578 11000000 88761720 250147615 245823397 81557479 226138454
[344] 155370362 124870275 196573705 58229120 125305545 132373442 120618403
[351] 110416702 102515793 100012500 209019489 84037039 85884815 83077470
[358] 100018837 78747585 78616689 75817994 100853835 73209340 72515360
[365] 68558662 65653758 64685359 61355436 26871 60874615 143618384
[372] 58220776 47474112 42877165 35168677 56114221 37567440 61644321
[379] 190562 120147445 241688385 144512310 233630478 197992827 176049130
[386] 172620724 183405771 20315324 148313048 127706877 126149655 66941559
[393] 78009155 63224849 111544445 112703470 117144465 84303558 150832203
[400] 51396781 47592825 50016394 57010853 62494975 46440491 44606335
[407] 40048332 64933670 31494270 31111260 123307945 153288182 13401683
[414] 137340146 43575716 80170146 75754670 33048353 34543701 242589580
[421] 102981571 180965237 407999255 254455986 162831698 155019340 145771527
[428] 140459099 53215979 158115031 133103929 133668525 130313314 124590960
[435] 127968405 120136047 128200012 112225777 109993847 104054514 103028109
[442] 101087161 101111837 95632614 94822707 92969824 91188905 90443603
[449] 82226474 79363785 76081498 85707116 74329966 100169068 73215310
[456] 80360866 69102910 65948711 169692572 60507228 56684819 50628009
[463] 69772969 45356386 55350897 39442871 37899638 37754208 38542418
[470] 34566746 32885565 36073232 21471685 20950820 19673424 19480739
[477] 17593391 18318000 27356090 17473245 15131330 19406406 1891821
[484] 23219748 170708996 422783777 103812241 119793567 92930005 67286731
[491] 74158157 127083765 1339152 15071514 26000610 323505540 66462600
[498] 368049635 306124059 229074524 193136719 35286428 157299717 134568845
[505] 134006721 195329763 120776832 118823091 41814863 97360069 117698894
[512] 162001186 77032279 73023275 68473360 66636385 160762022 103338338
[519] 55808744 47379090 43426961 47000485 45434443 42044321 73661010
[526] 41523271 37600435 39251128 83503161 34636443 22751979 30013346
[533] 14567883 5409517 21009180 94999143 336029560 36381716 55585389
[540] 36976367 107225164 70224196 51814190 47456450 148213377 112950721
[547] 75600000 62647540 183132370 27796042 32616869 18947630 114195633
[554] 144156464 227965690 436471036 244052771 152149590 141204016 162495848
[561] 136448821 120523073 119654900 72660029 117541000 116643346 100614858
[568] 42272747 80281096 219613391 78120196 98895417 70117571 83552429
[575] 66257002 65012000 79883359 78031620 54222000 52474616 55942830
[582] 40932372 38345403 37901509 48430355 30157016 28031250 33105600
[589] 62321039 38509342 19076815 25093607 18990542 14294842 19819494
[596] 13596911 7097125 37760080 5851188 25121291 18821279 118471320
[603] 300523113 71069884 251501645 35324232 81257500 617840 29655590
[610] 45045037 28965197 39380442 37516013 87704396 83892374 5932060
[617] 216119491 43568507 182805123 176387405 33685268 182204440 171383253
[624] 172071312 119412921 139225854 148775460 115731542 100468793 93771072
[631] 100448498 115603980 90454043 84049211 70450000 69688384 70236496
[638] 63695760 59617068 55637680 85911262 53846915 54758461 52397389
[645] 38966057 42345531 36064910 33328051 32598931 28045540 37023395
[652] 43532294 17218080 10014234 19059018 1987287 24407944 13750556
[659] 31054924 43247140 2208939 213079163 19548064 356784000 25052000
[666] 122012710 72413 58255287 77086030 65000000 32178777 15738632
[673] 54116191 118153533 108012170 210592590 279167575 143151473 136801374
[680] 135381507 167735396 121468960 106635996 102678089 125603360 101217900
[687] 104148781 75573300 93375151 106126012 93307796 90646554 109176215
[694] 82670733 82569532 81687587 80574010 75764085 90356857 75530832
[701] 75370763 100003492 90341670 74540762 80033643 73648142 71844424
[708] 75638743 66734992 75280058 64505912 77862546 61112916 88200225
[715] 60573641 59035104 56702901 55994557 54910560 53789313 51045801
[722] 50818750 50189179 50024083 50549107 56443482 62401264 47748610
[729] 46975183 50807639 46611204 257756197 48472213 43060566 45996718
[736] 43337279 37479778 40559930 36830057 36279230 42194060 43119879
[743] 35096190 43290977 33927476 32122249 40076438 32940507 31670931
[750] 30695227 32522352 26082914 29136626 26288320 26616590 623279547
[757] 30063805 22518325 13082288 18208078 14218868 22451 31165421
[764] 11802056 25472967 22362500 17281832 19781879 7605668 4535117
[771] 4426297 10166502 363024263 12065985 350123553 80021740 48291624
[778] 35231365 53715611 31199215 29580087 44665963 60128566 49875589
[785] 60984028 36931089 51317350 28328132 51774002 25528495 113006880
[792] 45860039 329691196 217326336 166225040 141600000 134218018 128769345
[799] 177575142 105263257 104354205 107100855 98711404 100328194 101530738
[806] 93815117 91400000 162586036 89706988 83000000 78745923 70098138
[813] 66365290 66207920 63408614 58422650 56932305 68750000 68218041
[820] 25040293 55747724 55473600 49994804 41609593 38553833 76137505
[827] 34350553 34238611 34098563 33828318 33472850 31051126 35707327
[834] 20550712 18573791 51225796 16264475 25857987 12870569 11466088
[841] 16088610 51178893 6768055 39440655 6167817 81645152 69951824
[848] 9483821 66676062 26838389 75604320 108200000 5660084 7221458
[855] 70327868 58297830 57386369 45207112 62563543 33574332 73343413
[862] 25031037 22843047 5755286 164435221 95720716 118683135 143704210
[869] 110476776 80270227 36385763 37035845 34580635 42438300 23324666
[876] 23020488 90567722 72601713 296623634 267652016 62453315 165500000
[883] 153620822 218628680 147637474 135014968 2175312 126203320 126975169
[890] 125548685 105807520 191616238 105264608 97680195 126088877 91030827
[897] 150315155 127997349 88504640 81517441 81022333 79948113 88658172
[904] 84244877 75367693 73701902 75605492 67823573 91439400 67128202
[911] 70496802 60470220 58336565 66002004 54997476 55682070 52752475
[918] 55092830 50815288 52822418 50150619 48745150 50007168 48154732
[925] 48265581 46982632 44737059 56724080 44484065 47553512 42610000
[932] 41482207 47105085 41256277 50740078 40203020 40905277 38590500
[939] 39177541 39778599 37486138 38105077 35168395 32800000 33643461
[946] 32741596 31874869 30306268 27667947 27067160 26616999 26536120
[953] 26199517 25450527 25407250 23159305 24006726 20389967 19593740
[960] 19118247 26442251 17114882 18472363 14131298 21557240 21283440
[967] 10556196 16671505 10400000 9528092 10137232 9795017 20488579
[974] 19445217 8355815 28837115 6471394 6291602 10706786 8742261
[981] 43905746 21413502 124107476 197171806 31569268 66488090 95308367
[988] 60652036 1206135 56607223 50173190 47095453 37879996 25900000
[995] 53574088 89253340 37339525 60154431 103738726 69304264
[ reached getOption("max.print") -- omitted 2756 entries ]
dat %>% drop_na %>% pull(color) %>% unique
dat %>% drop_na %>% pull(color) %>% table() -> colors
colors['Black and White']
Black and White
124
unname(colors)
[1] 124 3632
director_name
Error: object 'director_name' not found
dat %>% filter(director_name == "James Cameron",
duration > 170) %>% select(duration, movie)
dat %>% filter(director_name == "James Cameron",
duration > 170) %>% select(starts_with("movie"))
dat %>% group_by(director_name) %>% summarise(mean_duration=mean(duration),
max_duration=max(duration),
score=mean(imdb_score))
dat_new <- dat %>% mutate(facebook_likes_per_minute = cast_total_facebook_likes / duration)
dat %>% group_by(director_name) %>% mutate(number=n()) %>% select(director_name, number) %>% arrange(director_name)
dat %>% group_by(director_name) %>%
mutate(number=n()) %>%
filter(number >= 10) %>%
summarise(score=mean(imdb_score)) %>%
arrange(desc(score))
dat %>% rownames_to_column(var="idx")
newdat_wide <- data.frame(student=c("Alice", "Bob", "Claudia"),
algebra=c(4, 3, 5),
geometry=c(2, 3, 4),
calculus=c(1, 4, 3))
newdat_wide %>% pivot_longer(2:4, names_to="course", values_to="grade")
newdat_wide %>% pivot_longer(-1, names_to="course", values_to="grade")
newdat_wide %>%
pivot_longer(!student, names_to="course", values_to="grade") ->
newdat_long
newdat_long
newdat_long %>% pivot_wider(names_from=course, values_from=grade)
dat_long <- data.frame(student=c("Alice", "Alice", "Bob"),
course=c("Algebra", "Algebra", "Geometry"),
grade=c(3, 2, 5))
dat_long %>% pivot_wider(names_from=course, values_from=grade, values_fn = mean)
dat %>% ggplot(aes(x=duration, y=log(gross))) +
geom_point(alpha=0.3) + facet_wrap(color~.)

LS0tCnRpdGxlOiAiSW50cm8gdG8gdGlkeXZlcnNlIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgpgYGB7cn0KaW5zdGFsbC5wYWNrYWdlcygidGlkeXZlcnNlIikKYGBgCmBgYHtyfQpsaWJyYXJ5KHRpZHl2ZXJzZSkKYGBgCgpgYGB7cn0Kc2luKGNvcyhleHAoMSkpKQpgYGAKYGBge3J9CjEgJT4lIGV4cCAlPiUgY29zICU+JSBzaW4KYGBgCmBgYHtyfQpkYXQgPC0gcmVhZF9jc3YoImh0dHBzOi8vZ2l0aHViLmNvbS9Hb2RveS9pbWRiLTUwMDAtbW92aWUtZGF0YXNldC9yYXcvbWFzdGVyL2RhdGEvbW92aWVfbWV0YWRhdGEuY3N2IikKYGBgCgpgYGB7cn0KZGF0ICU+JSBzdW1tYXJpc2VfYWxsKGZ1bmN0aW9uKHgpIHttZWFuKHgsIG5hLnJtPVRSVUUpfSkKYGBgCgpgYGB7cn0KZGF0ICU+JSBkcm9wX25hKCJjb2xvciIpCmBgYAoKYGBge3J9CmRyb3BfbmEoZGF0LCAiY29sb3IiKQpgYGAKCmBgYHtyfQpkYXQgJT4lIGRyb3BfbmEoImNvbG9yIikgJT4lIHB1bGwoImdyb3NzIikgJT4lIGhlYWQoMTApCmBgYAoKYGBge3J9CmRhdCAlPiUgZHJvcF9uYSgpICU+JSBwdWxsKCJncm9zcyIpCmBgYAoKYGBge3J9CmRhdCAlPiUgZHJvcF9uYSAlPiUgcHVsbChjb2xvcikgJT4lIHVuaXF1ZSAKYGBgCgpgYGB7cn0KZGF0ICU+JSBkcm9wX25hICU+JSBwdWxsKGNvbG9yKSAlPiUgdGFibGUoKSAtPiBjb2xvcnMKYGBgCgpgYGB7cn0KY29sb3JzWydCbGFjayBhbmQgV2hpdGUnXQpgYGAKYGBge3J9CnVubmFtZShjb2xvcnMpCmBgYAoKYGBge3J9CmRpcmVjdG9yX25hbWUKYGBgCmBgYHtyfQpkYXQgJT4lIGZpbHRlcihkaXJlY3Rvcl9uYW1lID09ICJKYW1lcyBDYW1lcm9uIiwKICAgICAgICAgICAgICAgZHVyYXRpb24gPiAxNzApICU+JSBzZWxlY3QoZHVyYXRpb24sIG1vdmllKQpgYGAKCmBgYHtyfQpkYXQgJT4lIGZpbHRlcihkaXJlY3Rvcl9uYW1lID09ICJKYW1lcyBDYW1lcm9uIiwKICAgICAgICAgICAgICAgZHVyYXRpb24gPiAxNzApICU+JSBzZWxlY3Qoc3RhcnRzX3dpdGgoIm1vdmllIikpCmBgYAoKYGBge3J9CmRhdCAlPiUgZ3JvdXBfYnkoZGlyZWN0b3JfbmFtZSkgJT4lIHN1bW1hcmlzZShtZWFuX2R1cmF0aW9uPW1lYW4oZHVyYXRpb24pLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4X2R1cmF0aW9uPW1heChkdXJhdGlvbiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY29yZT1tZWFuKGltZGJfc2NvcmUpKQpgYGAKCgpgYGB7cn0KZGF0X25ldyA8LSBkYXQgJT4lIG11dGF0ZShmYWNlYm9va19saWtlc19wZXJfbWludXRlID0gY2FzdF90b3RhbF9mYWNlYm9va19saWtlcyAvIGR1cmF0aW9uKQpgYGAKYGBge3J9CmRhdCAlPiUgZ3JvdXBfYnkoZGlyZWN0b3JfbmFtZSkgJT4lIG11dGF0ZShudW1iZXI9bigpKSAlPiUgc2VsZWN0KGRpcmVjdG9yX25hbWUsIG51bWJlcikgJT4lIGFycmFuZ2UoZGlyZWN0b3JfbmFtZSkKYGBgCgpgYGB7cn0KZGF0ICU+JSBncm91cF9ieShkaXJlY3Rvcl9uYW1lKSAlPiUgCiAgbXV0YXRlKG51bWJlcj1uKCkpICU+JSAKICBmaWx0ZXIobnVtYmVyID49IDEwKSAlPiUgCiAgc3VtbWFyaXNlKHNjb3JlPW1lYW4oaW1kYl9zY29yZSkpICU+JSAKICBhcnJhbmdlKGRlc2Moc2NvcmUpKQpgYGAKCmBgYHtyfQpkYXQgJT4lIHJvd25hbWVzX3RvX2NvbHVtbih2YXI9ImlkeCIpCmBgYAoKYGBge3J9Cm5ld2RhdF93aWRlIDwtIGRhdGEuZnJhbWUoc3R1ZGVudD1jKCJBbGljZSIsICJCb2IiLCAiQ2xhdWRpYSIpLAogICAgICAgICAgICAgICAgICAgICBhbGdlYnJhPWMoNCwgMywgNSksCiAgICAgICAgICAgICAgICAgICAgIGdlb21ldHJ5PWMoMiwgMywgNCksCiAgICAgICAgICAgICAgICAgICAgIGNhbGN1bHVzPWMoMSwgNCwgMykpCmBgYAoKYGBge3J9Cm5ld2RhdF93aWRlICU+JSBwaXZvdF9sb25nZXIoMjo0LCBuYW1lc190bz0iY291cnNlIiwgdmFsdWVzX3RvPSJncmFkZSIpCmBgYAoKYGBge3J9Cm5ld2RhdF93aWRlICU+JSBwaXZvdF9sb25nZXIoLTEsIG5hbWVzX3RvPSJjb3Vyc2UiLCB2YWx1ZXNfdG89ImdyYWRlIikKYGBgCgpgYGB7cn0KbmV3ZGF0X3dpZGUgJT4lIAogIHBpdm90X2xvbmdlcighc3R1ZGVudCwgbmFtZXNfdG89ImNvdXJzZSIsIHZhbHVlc190bz0iZ3JhZGUiKSAtPgogIG5ld2RhdF9sb25nCmBgYAoKYGBge3J9Cm5ld2RhdF9sb25nCmBgYApgYGB7cn0KbmV3ZGF0X2xvbmcgJT4lIHBpdm90X3dpZGVyKG5hbWVzX2Zyb209Y291cnNlLCB2YWx1ZXNfZnJvbT1ncmFkZSkKYGBgCgpgYGB7cn0KZGF0X2xvbmcgPC0gZGF0YS5mcmFtZShzdHVkZW50PWMoIkFsaWNlIiwgIkFsaWNlIiwgIkJvYiIpLAogICAgICAgICAgICAgICAgICAgICAgIGNvdXJzZT1jKCJBbGdlYnJhIiwgIkFsZ2VicmEiLCAiR2VvbWV0cnkiKSwKICAgICAgICAgICAgICAgICAgICAgICBncmFkZT1jKDMsIDIsIDUpKQpgYGAKCmBgYHtyfQpkYXRfbG9uZyAlPiUgcGl2b3Rfd2lkZXIobmFtZXNfZnJvbT1jb3Vyc2UsIHZhbHVlc19mcm9tPWdyYWRlLCB2YWx1ZXNfZm4gPSBtZWFuKQpgYGAKCmBgYHtyfQpkYXQgJT4lIGdncGxvdChhZXMoeD1kdXJhdGlvbiwgeT1sb2coZ3Jvc3MpKSkgKwogIGdlb21fcG9pbnQoYWxwaGE9MC4zKSArIGZhY2V0X3dyYXAoY29sb3IgfiAuKQpgYGA=