Dividir una columna en múltiples columnas

Tengo un gran conjunto de datos en el que hay una columna que incluye varios valores para cada tema (fila). Aquí hay un marco de datos de muestra simplificado:

data <- data.frame(subject = c(1:8), sex = c(1, 2, 2, 1, 2, 1, 1, 2), 
              age = c(35, 29, 31, 46, 64, 57, 49, 58), 
              v1 = c("2", "0", "3,5", "2 1", "A,4", "B,1,C", "A and B,3", "5, 6 A or C"))

> data
  subject sex age          v1
1       1   1  35           2
2       2   2  29           0
3       3   2  31         3,5  # separated by a comma
4       4   1  46         2 1  # separated by a blank space
5       5   2  64         A,4
6       6   1  57       B,1,C
7       7   1  49   A and B,3
8       8   2  58 5, 6 A or C

Primero quiero quitar las letras (A, B, A and B,…) En la cuarta columna (v1), y luego divida la cuarta columna en varias columnas como esta:

  subject sex age x1 x2 x3 x4 x5 x6
1       1   1  35  0  1  0  0  0  0        
2       2   2  29  0  0  0  0  0  0
3       3   2  31  0  0  1  0  1  0  
4       4   1  46  1  1  0  0  0  0
5       5   2  64  0  0  0  1  0  0
6       6   1  57  1  0  0  0  0  0
7       7   1  49  0  0  1  0  0  0
8       8   2  58  0  0  0  0  1  1

donde el primer sujeto toma 1 en x2 porque toma 2 en v1 en el conjunto de datos original, el tercer sujeto toma 1 en x3 y x5 porque toma 3 y 5 en v1 en el conjunto de datos original, y así sucesivamente.

Agradecería cualquier ayuda en esta pregunta. Muchas gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta