Example of tibble() and tribble() functions to create a data_frame.
library(tidyverse)
Warning message:
In scan(file = file, what = what, sep = sep, quote = quote, dec = dec, :
EOF within quoted string
BP_narrow <- tibble(
x = c("a", "b"),
y = c(1,2),
z = c(3.6, 8.5)
)
BP_narrow <- tribble(
~x, ~y, ~z,
"a", 2, 3.6,
"b", 1, 8.5
)
BP_narrow <- tribble(
~subject, ~when, ~spb,
"BHO", "before", 160,
"GWB", "before", 120,
"WJC", "before", 105,
"BHO", "after", 115,
"GWB", "after", 135,
"WJC", "after", 145
)
Examples of pivot_longer() and pivot_wider()
BP_wide <- BP_narrow %>% pivot_wider(names_from = "when", values_from = "spb")
BP_wide
BP_narrow_new <- BP_wide %>% pivot_longer(c("before", "after"), names_to = "when", values_to = "spb" )
BP_narrow_new
Or we can remove the subject column and use the remaining two columns before and after.
BP_narrow_new <- BP_wide %>% pivot_longer(-subject, names_to = "when", values_to = "spb" )
BP_narrow_new
Example spread()
Try the code in Section 5.2.4 on pages 101-103. Try to use the new pivot_wider() function.
library(babynames)
babynames
Example for
Try the code on pages 104-105
Example apply()
Try the code on pages 106-107
Next week we will take a look at the map functions from the purrr R package, which are modern alternatives to for loops and the apply() functions.
LS0tCnRpdGxlOiAiRXhhbXBsZXMgLSBVc2luZyBwaXZvdF9sb25nZXIoKSBhbmQgcGl2b3Rfd2lkZXIoKSIKb3V0cHV0OgogIHdvcmRfZG9jdW1lbnQ6IGRlZmF1bHQKICBwZGZfZG9jdW1lbnQ6IGRlZmF1bHQKICBodG1sX25vdGVib29rOiBkZWZhdWx0Ci0tLQoKIyBFeGFtcGxlIG9mICp0aWJibGUoKSogYW5kICp0cmliYmxlKCkqIGZ1bmN0aW9ucyB0byBjcmVhdGUgYSBkYXRhX2ZyYW1lLgoKYGBge3IgbWVzc2FnZT1GQUxTRX0KbGlicmFyeSh0aWR5dmVyc2UpCgpCUF9uYXJyb3cgPC0gdGliYmxlKAogIHggPSBjKCJhIiwgImIiKSwKICB5ID0gYygxLDIpLAogIHogPSBjKDMuNiwgOC41KQopCgpCUF9uYXJyb3cgPC0gdHJpYmJsZSgKICB+eCwgfnksICB+eiwKICAiYSIsIDIsICAzLjYsCiAgImIiLCAxLCAgOC41CikKYGBgCgpgYGB7cn0KQlBfbmFycm93IDwtIHRyaWJibGUoCiAgfnN1YmplY3QsIH53aGVuLCB+c3BiLAogICJCSE8iLCAiYmVmb3JlIiwgMTYwLAogICJHV0IiLCAiYmVmb3JlIiwgMTIwLAogICJXSkMiLCAiYmVmb3JlIiwgMTA1LAogICJCSE8iLCAiYWZ0ZXIiLCAxMTUsCiAgIkdXQiIsICJhZnRlciIsIDEzNSwKICAiV0pDIiwgImFmdGVyIiwgMTQ1CikKYGBgCgojIEV4YW1wbGVzIG9mICpwaXZvdF9sb25nZXIoKSogYW5kICpwaXZvdF93aWRlcigpKgoKYGBge3J9CkJQX3dpZGUgPC0gQlBfbmFycm93ICU+JSBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gIndoZW4iLCB2YWx1ZXNfZnJvbSA9ICJzcGIiKQpCUF93aWRlCmBgYAoKCmBgYHtyfQpCUF9uYXJyb3dfbmV3IDwtIEJQX3dpZGUgJT4lIHBpdm90X2xvbmdlcihjKCJiZWZvcmUiLCAiYWZ0ZXIiKSwgbmFtZXNfdG8gPSAid2hlbiIsIHZhbHVlc190byA9ICJzcGIiICkKCkJQX25hcnJvd19uZXcgCmBgYAoKT3Igd2UgY2FuIHJlbW92ZSB0aGUgKnN1YmplY3QqIGNvbHVtbiBhbmQgdXNlIHRoZSByZW1haW5pbmcgdHdvIGNvbHVtbnMgKmJlZm9yZSogYW5kICphZnRlciouIAoKYGBge3J9CkJQX25hcnJvd19uZXcgPC0gQlBfd2lkZSAlPiUgcGl2b3RfbG9uZ2VyKC1zdWJqZWN0LCBuYW1lc190byA9ICJ3aGVuIiwgdmFsdWVzX3RvID0gInNwYiIgKQoKQlBfbmFycm93X25ldyAKYGBgCgojIEV4YW1wbGUgKnNwcmVhZCgpKgoKVHJ5IHRoZSBjb2RlIGluIFNlY3Rpb24gNS4yLjQgb24gcGFnZXMgMTAxLTEwMy4gIFRyeSB0byB1c2UgdGhlIG5ldyAqcGl2b3Rfd2lkZXIoKSogZnVuY3Rpb24uCgpgYGB7cn0KbGlicmFyeShiYWJ5bmFtZXMpCgpiYWJ5bmFtZXMKYGBgCgojIEV4YW1wbGUgKmZvcioKClRyeSB0aGUgY29kZSBvbiBwYWdlcyAxMDQtMTA1CgojIEV4YW1wbGUgKmFwcGx5KCkqCgpUcnkgdGhlIGNvZGUgb24gcGFnZXMgMTA2LTEwNwoKTmV4dCB3ZWVrIHdlIHdpbGwgdGFrZSBhIGxvb2sgYXQgdGhlICptYXAqIGZ1bmN0aW9ucyBmcm9tIHRoZSAqcHVycnIqIFIgcGFja2FnZSwgd2hpY2ggYXJlIG1vZGVybiBhbHRlcm5hdGl2ZXMgdG8gKmZvciogbG9vcHMgYW5kIHRoZSAqYXBwbHkoKSogZnVuY3Rpb25zLgoK