library(tidyverse)
-- Attaching packages --------------------------------------- tidyverse 1.2.1 --
v ggplot2 3.0.0     v purrr   0.2.5
v tibble  1.4.2     v dplyr   0.7.6
v tidyr   0.8.1     v stringr 1.3.1
v readr   1.1.1     v forcats 0.3.0
-- Conflicts ------------------------------------------ tidyverse_conflicts() --
x dplyr::filter() masks stats::filter()
x dplyr::lag()    masks stats::lag()
Curso <- tibble(
  fila = c(2, 2, 2, 2, 1, 1),
  columna = c(1, 2, 3, 4, 3, 5),
  alumno = c("JLO", "Xavi", "chris", "puma", "MIMI", "Patrilio")
)
tidyr::spread(Curso, key = columna, value = alumno)
diccionario <- Curso %>%
  distinct(fila) %>%
  arrange(fila) %>%
  mutate(medida = c("altura", "densidad_osea"),
     valor_promedio = c(1.66, 89))

hasta acá tenemos dos variables “curso” y “diccionario”, usaremos la función “left_join” para juntar ambas tablas en base a un elemento en común (idéntico)

Curso <- dplyr::left_join(Curso, diccionario,
                          by = "fila",)

Si esta tabla la queremos ordenar en formato tidy, podemos usar la función spread.

tidyr::spread(Curso,
              key = medida,
              value = valor_promedio)
1:100
  [1]   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21
 [22]  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42
 [43]  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
 [64]  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84
 [85]  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100

Función “Paste”, sirve para crear muchos vectores de una sola vez, sin necesidad de marcar uno por uno.

paste("Luciano", 1:100)
  [1] "Luciano 1"   "Luciano 2"   "Luciano 3"   "Luciano 4"   "Luciano 5"   "Luciano 6"  
  [7] "Luciano 7"   "Luciano 8"   "Luciano 9"   "Luciano 10"  "Luciano 11"  "Luciano 12" 
 [13] "Luciano 13"  "Luciano 14"  "Luciano 15"  "Luciano 16"  "Luciano 17"  "Luciano 18" 
 [19] "Luciano 19"  "Luciano 20"  "Luciano 21"  "Luciano 22"  "Luciano 23"  "Luciano 24" 
 [25] "Luciano 25"  "Luciano 26"  "Luciano 27"  "Luciano 28"  "Luciano 29"  "Luciano 30" 
 [31] "Luciano 31"  "Luciano 32"  "Luciano 33"  "Luciano 34"  "Luciano 35"  "Luciano 36" 
 [37] "Luciano 37"  "Luciano 38"  "Luciano 39"  "Luciano 40"  "Luciano 41"  "Luciano 42" 
 [43] "Luciano 43"  "Luciano 44"  "Luciano 45"  "Luciano 46"  "Luciano 47"  "Luciano 48" 
 [49] "Luciano 49"  "Luciano 50"  "Luciano 51"  "Luciano 52"  "Luciano 53"  "Luciano 54" 
 [55] "Luciano 55"  "Luciano 56"  "Luciano 57"  "Luciano 58"  "Luciano 59"  "Luciano 60" 
 [61] "Luciano 61"  "Luciano 62"  "Luciano 63"  "Luciano 64"  "Luciano 65"  "Luciano 66" 
 [67] "Luciano 67"  "Luciano 68"  "Luciano 69"  "Luciano 70"  "Luciano 71"  "Luciano 72" 
 [73] "Luciano 73"  "Luciano 74"  "Luciano 75"  "Luciano 76"  "Luciano 77"  "Luciano 78" 
 [79] "Luciano 79"  "Luciano 80"  "Luciano 81"  "Luciano 82"  "Luciano 83"  "Luciano 84" 
 [85] "Luciano 85"  "Luciano 86"  "Luciano 87"  "Luciano 88"  "Luciano 89"  "Luciano 90" 
 [91] "Luciano 91"  "Luciano 92"  "Luciano 93"  "Luciano 94"  "Luciano 95"  "Luciano 96" 
 [97] "Luciano 97"  "Luciano 98"  "Luciano 99"  "Luciano 100"
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpgYGB7cn0NCmxpYnJhcnkodGlkeXZlcnNlKQ0KYGBgDQoNCmBgYHtyfQ0KQ3Vyc28gPC0gdGliYmxlKA0KICBmaWxhID0gYygyLCAyLCAyLCAyLCAxLCAxKSwNCiAgY29sdW1uYSA9IGMoMSwgMiwgMywgNCwgMywgNSksDQogIGFsdW1ubyA9IGMoIkpMTyIsICJYYXZpIiwgImNocmlzIiwgInB1bWEiLCAiTUlNSSIsICJQYXRyaWxpbyIpDQopDQpgYGANCg0KYGBge3J9DQp0aWR5cjo6c3ByZWFkKEN1cnNvLCBrZXkgPSBjb2x1bW5hLCB2YWx1ZSA9IGFsdW1ubykNCmBgYA0KDQoNCg0KYGBge3J9DQpkaWNjaW9uYXJpbyA8LSBDdXJzbyAlPiUNCiAgZGlzdGluY3QoZmlsYSkgJT4lDQogIGFycmFuZ2UoZmlsYSkgJT4lDQogIG11dGF0ZShtZWRpZGEgPSBjKCJhbHR1cmEiLCAiZGVuc2lkYWRfb3NlYSIpLA0KICAgICB2YWxvcl9wcm9tZWRpbyA9IGMoMS42NiwgODkpKQ0KDQpgYGANCg0KDQoNCiNoYXN0YSBhY+EgdGVuZW1vcyBkb3MgdmFyaWFibGVzICJjdXJzbyIgeSAiZGljY2lvbmFyaW8iLCB1c2FyZW1vcyBsYSBmdW5jafNuICJsZWZ0X2pvaW4iIHBhcmEganVudGFyIGFtYmFzIHRhYmxhcyBlbiBiYXNlIGEgdW4gZWxlbWVudG8gZW4gY29t+m4gKGlk6W50aWNvKQ0KDQoNCmBgYHtyfQ0KQ3Vyc28gPC0gZHBseXI6OmxlZnRfam9pbihDdXJzbywgZGljY2lvbmFyaW8sDQogICAgICAgICAgICAgICAgICAgICAgICAgIGJ5ID0gImZpbGEiLCkNCmBgYA0KDQoNCiNTaSBlc3RhIHRhYmxhIGxhIHF1ZXJlbW9zIG9yZGVuYXIgZW4gZm9ybWF0byB0aWR5LCBwb2RlbW9zIHVzYXIgbGEgZnVuY2nzbiBzcHJlYWQuDQoNCg0KYGBge3J9DQp0aWR5cjo6c3ByZWFkKEN1cnNvLA0KICAgICAgICAgICAgICBrZXkgPSBtZWRpZGEsDQogICAgICAgICAgICAgIHZhbHVlID0gdmFsb3JfcHJvbWVkaW8pDQpgYGANCg0KYGBge3J9DQoxOjEwMA0KYGBgDQoNCiNGdW5jafNuICJQYXN0ZSIsIHNpcnZlIHBhcmEgY3JlYXIgbXVjaG9zIHZlY3RvcmVzIGRlIHVuYSBzb2xhIHZleiwgc2luIG5lY2VzaWRhZCBkZSBtYXJjYXIgdW5vIHBvciB1bm8uDQoNCmBgYHtyfQ0KcGFzdGUoIkx1Y2lhbm8iLCAxOjEwMCkNCmBgYA0KDQoNCg0KDQo=