Title
  
  
  
  
  
  
  
Problem
We want to create dummy variables based on other variables in R. In our example based on variables Sex and Embarked.
  PassengerId Survived Pclass    Sex Age SibSp Parch    Fare Embarked Age.NA
1           1        0      3   male  22     1     0  7.2500        S      0
2           2        1      1 female  38     1     0 71.2833        C      0
3           3        1      3 female  26     0     0  7.9250        S      0
4           4        1      1 female  35     1     0 53.1000        S      0
5           5        0      3   male  35     0     0  8.0500        S      0
6           6        0      3   male  NA     0     0  8.4583        Q      1
df <- structure(list(PassengerId = 1:6, Survived = c(0L, 1L, 1L, 1L, 
0L, 0L), Pclass = c(3L, 1L, 3L, 1L, 3L, 3L), Sex = structure(c(2L, 
1L, 1L, 1L, 2L, 2L), .Label = c("female", "male"), class = "factor"), 
    Age = c(22L, 38L, 26L, 35L, 35L, NA), SibSp = c(1L, 1L, 0L, 
    1L, 0L, 0L), Parch = c(0L, 0L, 0L, 0L, 0L, 0L), Fare = c(7.25, 
    71.2833, 7.925, 53.1, 8.05, 8.4583), Embarked = structure(c(3L, 
    1L, 3L, 3L, 3L, 2L), .Label = c("C", "Q", "S"), class = "factor"), 
    Age.NA = c(0, 0, 0, 0, 0, 1)), .Names = c("PassengerId", 
"Survived", "Pclass", "Sex", "Age", "SibSp", "Parch", "Fare", 
"Embarked", "Age.NA"), row.names = c("1", "2", "3", "4", "5", 
"6"), class = "data.frame")
 
Solution
We use the function dummy.data.frame from the package dummies. By default it will expand dummy variables for character and factor classes. 
library(dummies)
dummy.data.frame(df)
Results
The original columns Sex and Embarked are replaced by the dummy variable columns Sexfemale, Sexmale, EmbarkedC, EmbarkedQ and EmbarkedS.
  PassengerId Survived Pclass Sexfemale Sexmale Age SibSp Parch    Fare
1           1        0      3         0       1  22     1     0  7.2500
2           2        1      1         1       0  38     1     0 71.2833
3           3        1      3         1       0  26     0     0  7.9250
4           4        1      1         1       0  35     1     0 53.1000
5           5        0      3         0       1  35     0     0  8.0500
6           6        0      3         0       1  NA     0     0  8.4583
  EmbarkedC EmbarkedQ EmbarkedS Age.NA
1         0         0         1      0
2         1         0         0      0
3         0         0         1      0
4         0         0         1      0
5         0         0         1      0
6         0         1         0      1
References