library(tidyverse)
Wide to long format
boys <- data.frame(name = c("Josef Novák", "Jakub Patočka", "Miroslav Müller",
"Karel Rychlý", "Matěj Průha", "Václav Záveský"),
math = c(1,1,3,2,3,3), cz = c(2,1,1,1,1,3),
en = c(NA, NA, 1,1,1,1), de = c(2,1,NA,NA,NA,2),
bio = c(2,2,NA,NA,2,3), his = c(NA, NA, 1,2,NA, NA),
fy = c(NA,NA,NA,2,2,NA), geo = c(1,2,1,NA, NA, NA))
Imagine you would like to plot the boys’ grades like this: BREAKOUT ROOMS, SUGGEST DATA FRAME STRUCTURE
boys_long %>% ggplot(mapping = aes(x = name, y = grade, color = course)) +
geom_jitter(position = position_jitter(width = 0.2, height = 0, seed = 1)) +
geom_violin(aes(group = name), fill = NA)

NEUKAZUJ!!! ############################################################################
formerly: gather

Separate
You want to have first names and surnames in two separate columns
If you need a more complicated splitting, use extract (extracts regular expression groups).
Unite
You want the values in the first_name and the surname columns to form a sequence of surname and first name separated by a comma and a space. Keep the original two columns, too.
LS0tCnRpdGxlOiAiTG9uZyBhbmQgd2lkZSAtIHRpZHlyICIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3J9CmxpYnJhcnkodGlkeXZlcnNlKQpgYGAKCiMgV2lkZSB0byBsb25nIGZvcm1hdAoKYGBge3J9CmJveXMgPC0gZGF0YS5mcmFtZShuYW1lID0gYygiSm9zZWYgTm92w6FrIiwgIkpha3ViIFBhdG/EjWthIiwgIk1pcm9zbGF2IE3DvGxsZXIiLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJLYXJlbCBSeWNobMO9IiwgIk1hdMSbaiBQcsWvaGEiLCAiVsOhY2xhdiBaw6F2ZXNrw70iKSwgCiAgICAgICAgICAgICAgICAgICBtYXRoID0gYygxLDEsMywyLDMsMyksIGN6ID0gYygyLDEsMSwxLDEsMyksIAogICAgICAgICAgICAgICAgICAgZW4gPSBjKE5BLCBOQSwgMSwxLDEsMSksIGRlID0gYygyLDEsTkEsTkEsTkEsMiksCiAgICAgICAgICAgICAgICAgICBiaW8gPSBjKDIsMixOQSxOQSwyLDMpLCBoaXMgPSBjKE5BLCBOQSwgMSwyLE5BLCBOQSksIAogICAgICAgICAgICAgICAgICAgZnkgPSBjKE5BLE5BLE5BLDIsMixOQSksIGdlbyA9IGMoMSwyLDEsTkEsIE5BLCBOQSkpCgpgYGAKCkltYWdpbmUgeW91IHdvdWxkIGxpa2UgdG8gcGxvdCB0aGUgYm95cycgZ3JhZGVzIGxpa2UgdGhpczoKQlJFQUtPVVQgUk9PTVMsIFNVR0dFU1QgREFUQSBGUkFNRSBTVFJVQ1RVUkUKYGBge3J9CmJveXNfbG9uZyAlPiUgZ2dwbG90KG1hcHBpbmcgPSBhZXMoeCA9IG5hbWUsIHkgPSBncmFkZSwgY29sb3IgPSBjb3Vyc2UpKSArCiAgZ2VvbV9qaXR0ZXIocG9zaXRpb24gPSBwb3NpdGlvbl9qaXR0ZXIod2lkdGggPSAwLjIsIGhlaWdodCA9IDAsIHNlZWQgPSAxKSkgKwogIGdlb21fdmlvbGluKGFlcyhncm91cCA9IG5hbWUpLCBmaWxsID0gTkEpCmBgYAoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiBORVVLQVpVSiEhIQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgoKCgoKCmBgYHtyfQpib3lzX2xvbmcgPC0gYm95cyAlPiUgcGl2b3RfbG9uZ2VyKGNvbHMgPSAtbmFtZSwgIG5hbWVzX3RvID0gImNvdXJzZSIsIHZhbHVlc190byA9ICJncmFkZSIsCiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXNfZHJvcF9uYSA9IFRSVUUpCmhlYWQoYm95c19sb25nLDEwKQpgYGAKCmZvcm1lcmx5OiBgZ2F0aGVyYAoKYGBge3J9CmJveXMgJT4lIHRpZHlyOjpnYXRoZXIoLW5hbWUsIGtleSA9ICJjb3Vyc2UiLCB2YWx1ZSA9ICJncmFkZSIpCmBgYAoKCmBgYHtyfQpib3lzX2xvbmcgJT4lIGdncGxvdChtYXBwaW5nID0gYWVzKHggPSBuYW1lLCB5ID0gZ3JhZGUsIGNvbG9yID0gY291cnNlKSkgKwogIGdlb21faml0dGVyKHBvc2l0aW9uID0gcG9zaXRpb25faml0dGVyKHdpZHRoID0gMC4yLCBoZWlnaHQgPSAwLCBzZWVkID0gMSkpICsgCiAgZ2VvbV92aW9saW4oYWVzKGdyb3VwID0gbmFtZSksIGZpbGwgPSBOQSkKYGBgCgojIFBpdm90IHdpZGVyIChjb21wbGVtZW50IHRvIGBwaXZvdF9sb25nZXJgKQoKCmBgYHtyfQpib3lzX2xvbmcgJT4lIHBpdm90X3dpZGVyKG5hbWVzX2Zyb20gPSAiY291cnNlIiwgdmFsdWVzX2Zyb20gPSAiZ3JhZGUiKQpgYGAKCmZvcm1lcmx5IGBzcHJlYWRgCgpgYGB7cn0KYm95c19sb25nICU+JSB0aWR5cjo6c3ByZWFkKGtleSA9IGNvdXJzZSwgdmFsdWUgPSBncmFkZSkKYGBgCgoKYGBge3J9CnZpZ25ldHRlKCJwaXZvdCIpCmBgYApDb3Vyc2Ugb24gRGF0YUNhbXA6IGh0dHBzOi8vbGVhcm4uZGF0YWNhbXAuY29tL2NvdXJzZXMvcmVzaGFwaW5nLWRhdGEtd2l0aC10aWR5cgoKCgoKCiMgU2VwYXJhdGUKWW91IHdhbnQgdG8gaGF2ZSBmaXJzdCBuYW1lcyBhbmQgc3VybmFtZXMgaW4gdHdvIHNlcGFyYXRlIGNvbHVtbnMKCmBgYHtyfQooc2VwbmFtZXMgPC0gYm95c19sb25nICU+JSB0aWR5cjo6c2VwYXJhdGUoY29sID0gIm5hbWUiLCBpbnRvID0gYygiZmlyc3RfbmFtZSIsICJzdXJuYW1lIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcCA9ICIgIikpICMgc2VwIGFsc28gYWNjZXB0cyByZWd1bGFyIGV4cHJlc3Npb25zICAKYGBgCgpJZiB5b3UgbmVlZCBhIG1vcmUgY29tcGxpY2F0ZWQgc3BsaXR0aW5nLCB1c2UgYGV4dHJhY3RgIChleHRyYWN0cyByZWd1bGFyIApleHByZXNzaW9uIGdyb3VwcykuCgojIFVuaXRlCgpZb3Ugd2FudCB0aGUgdmFsdWVzIGluIHRoZSBgZmlyc3RfbmFtZWAgYW5kIHRoZSBgc3VybmFtZWAgY29sdW1ucyB0byBmb3JtIGEgCnNlcXVlbmNlIG9mIHN1cm5hbWUgYW5kIGZpcnN0IG5hbWUgc2VwYXJhdGVkIGJ5IGEgY29tbWEgYW5kIGEgc3BhY2UuIEtlZXAgdGhlIApvcmlnaW5hbCB0d28gY29sdW1ucywgdG9vLiAKCmBgYHtyfQpzZXBuYW1lcyAlPiUgdW5pdGUoc3VybmFtZSwgZmlyc3RfbmFtZSwgc2VwID0gIiwgIiwgY29sID0gIm5hbWUiLCAKICAgICAgICAgICAgICAgICAgIHJlbW92ZSA9IEZBTFNFKQpgYGAKCgoKCgoKCgoKCgoK