Es esto lo que quieres hacer?
library(tidyverse)
sample_df <- data.frame(
stringsAsFactors = FALSE,
ID = c(1, 2, 2, 3, 3, 3, 4),
Varocup = c("ocup1","ocup1","ocup3",
"ocup2","ocup4","ocup5","ocup3")
)
sample_df %>%
mutate(value = 1) %>%
pivot_wider(id_cols = ID, names_from = Varocup, values_from = value)
#> # A tibble: 4 × 6
#> ID ocup1 ocup3 ocup2 ocup4 ocup5
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 1 1 NA NA NA NA
#> 2 2 1 1 NA NA NA
#> 3 3 NA NA 1 1 1
#> 4 4 NA 1 NA NA NA
Created on 2022-11-08 with reprex v2.0.2
Si esto no resuelve tu pregunta, por favor proporciona un ejemplo minimo reproducible ilustrando tu problema.
Nota: Por favor intenta hacer tus preguntas en inglés, ya que es el idioma preferido aquí y al usar español estás excluyendo a la mayoría de la conversación, reduciendo así tus posibilidades de obtener ayuda.