I am connecting the local instance of spark via the spark_connect function

library(sparklyr)
spark_install(version = "2.1.0")
Spark 2.1.0 for Hadoop 2.7 or later already installed.
spark=spark_connect(master = "local")
Re-using existing Spark connection to local

Coping Titanic train data set from R into spark cluster.

library(titanic)
library(dplyr)
??titanic
titanic_train=copy_to(spark,titanic_train)
Error in sdf_import.default(x, sc, name, memory, repartition, overwrite,  : 
  table titanic_train already exists (pass overwrite = TRUE to overwrite)
src_tbls(spark)
[1] "titanic_test"  "titanic_train"

Spark cluster have Titanic train dataset.

# filter by species setosa
titanic_test %>% filter(Sex == "male")
Error in UseMethod("filter_") : 
  no applicable method for 'filter_' applied to an object of class "list"
#Selecting sepal length and sepal width
titanic_train%>% select(Survived,Pclass,Sex)
str(titanic_train)
'data.frame':   891 obs. of  12 variables:
 $ PassengerId: int  1 2 3 4 5 6 7 8 9 10 ...
 $ Survived   : int  0 1 1 1 0 0 0 0 1 1 ...
 $ Pclass     : int  3 1 3 1 3 3 1 3 3 2 ...
 $ Name       : chr  "Braund, Mr. Owen Harris" "Cumings, Mrs. John Bradley (Florence Briggs Thayer)" "Heikkinen, Miss. Laina" "Futrelle, Mrs. Jacques Heath (Lily May Peel)" ...
 $ Sex        : chr  "male" "female" "female" "female" ...
 $ Age        : num  22 38 26 35 35 NA 54 2 27 14 ...
 $ SibSp      : int  1 1 0 1 0 0 0 3 0 1 ...
 $ Parch      : int  0 0 0 0 0 0 0 1 2 0 ...
 $ Ticket     : chr  "A/5 21171" "PC 17599" "STON/O2. 3101282" "113803" ...
 $ Fare       : num  7.25 71.28 7.92 53.1 8.05 ...
 $ Cabin      : chr  "" "C85" "" "C123" ...
 $ Embarked   : chr  "S" "C" "S" "S" ...
#Converting training variables
titanic_train$Sex=as.factor(titanic_train$Sex)
titanic_train$Embarked=as.factor(titanic_train$Embarked)
titanic_train$Pclass=as.factor(titanic_train$Pclass)
age.mean <- mean(titanic_train$Age, na.rm=TRUE)
titanic_train$Age[is.na(titanic_train$Age)] = age.mean
#Converting test data variables 
titanic_test$Sex=as.factor(titanic_test$Sex)
titanic_test$Embarked=as.factor(titanic_test$Embarked)
titanic_test$Pclass=as.factor(titanic_test$Embarked)
age.mean_test <- mean(titanic_test$Age, na.rm=TRUE)
argument is not numeric or logical: returning NA
titanic_test$Age[is.na(titanic_test$Age)] = age.mean
is.na() applied to non-(list or vector) of type 'NULL'
#Male and Female 
table(titanic_train$Sex)

female   male 
   314    577 
#Missing value observation
sapply(titanic_train,function(x) sum(is.na(x)))
PassengerId    Survived      Pclass        Name         Sex         Age 
          0           0           0           0           0           0 
      SibSp       Parch      Ticket        Fare       Cabin    Embarked 
          0           0           0           0           0           0 
sum(is.na(titanic_train$Sex))
[1] 0
table(titanic_train$Survived)

  0   1 
549 342 

#Lets try random forest
set.seed(111)
library(randomForest)
rf=randomForest(factor(Survived)~Sex+Embarked+Pclass+Age+SibSp+Parch+Fare,data=titanic_train)
plot(rf)

Overall error rate is less than 0.25.

LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpJIGFtIGNvbm5lY3RpbmcgdGhlIGxvY2FsIGluc3RhbmNlIG9mIHNwYXJrIHZpYSB0aGUgc3BhcmtfY29ubmVjdCBmdW5jdGlvbg0KDQpgYGB7cn0NCmxpYnJhcnkoc3BhcmtseXIpDQpzcGFya19pbnN0YWxsKHZlcnNpb24gPSAiMi4xLjAiKQ0Kc3Bhcms9c3BhcmtfY29ubmVjdChtYXN0ZXIgPSAibG9jYWwiKQ0KYGBgDQoNCkNvcGluZyBUaXRhbmljIHRyYWluIGRhdGEgc2V0IGZyb20gUiBpbnRvIHNwYXJrIGNsdXN0ZXIuDQpgYGB7cn0NCg0KbGlicmFyeSh0aXRhbmljKQ0KbGlicmFyeShkcGx5cikNCj8/dGl0YW5pYw0KdGl0YW5pY190cmFpbj1jb3B5X3RvKHNwYXJrLHRpdGFuaWNfdHJhaW4pDQp0aXRhbmljX3Rlc3Q9Y29weV90byhzcGFyayx0aXRhbmljX3Rlc3QpDQpgYGANCmBgYHtyfQ0Kc3JjX3RibHMoc3BhcmspDQpgYGANClNwYXJrIGNsdXN0ZXIgaGF2ZSBUaXRhbmljIHRyYWluIGRhdGFzZXQuDQpgYGB7cn0NCiMgZmlsdGVyIGJ5IG1hbGUNCnRpdGFuaWNfdHJhaW4gJT4lIGZpbHRlcihTZXggPT0gIm1hbGUiKQ0KYGBgDQpgYGB7cn0NCiMgZmlsdGVyIGJ5IHNwZWNpZXMgc2V0b3NhDQp0aXRhbmljX3Rlc3QgJT4lIGZpbHRlcihTZXggPT0gIm1hbGUiKQ0KYGBgDQoNCmBgYHtyfQ0KI1NlbGVjdGluZyBzZXBhbCBsZW5ndGggYW5kIHNlcGFsIHdpZHRoDQp0aXRhbmljX3RyYWluJT4lIHNlbGVjdChTdXJ2aXZlZCxQY2xhc3MsU2V4KQ0KYGBgDQpgYGB7cn0NCiMgUGxvdHRpbmcgUGV0YWwgTGVuZ3RoIHZycyBTZXBhbCBsZW5ndGggYnkgc3BlY2llcw0KbGlicmFyeSh0aWR5dmVyc2UpDQpzdHIodGl0YW5pY190cmFpbikNCmBgYA0KYGBge3J9DQojQ29udmVydGluZyB0cmFpbmluZyB2YXJpYWJsZXMNCnRpdGFuaWNfdHJhaW4kU2V4PWFzLmZhY3Rvcih0aXRhbmljX3RyYWluJFNleCkNCnRpdGFuaWNfdHJhaW4kRW1iYXJrZWQ9YXMuZmFjdG9yKHRpdGFuaWNfdHJhaW4kRW1iYXJrZWQpDQp0aXRhbmljX3RyYWluJFBjbGFzcz1hcy5mYWN0b3IodGl0YW5pY190cmFpbiRQY2xhc3MpDQphZ2UubWVhbiA8LSBtZWFuKHRpdGFuaWNfdHJhaW4kQWdlLCBuYS5ybT1UUlVFKQ0KdGl0YW5pY190cmFpbiRBZ2VbaXMubmEodGl0YW5pY190cmFpbiRBZ2UpXSA9IGFnZS5tZWFuDQoNCiNDb252ZXJ0aW5nIHRlc3QgZGF0YSB2YXJpYWJsZXMgDQp0aXRhbmljX3Rlc3QkU2V4PWFzLmZhY3Rvcih0aXRhbmljX3Rlc3QkU2V4KQ0KdGl0YW5pY190ZXN0JEVtYmFya2VkPWFzLmZhY3Rvcih0aXRhbmljX3Rlc3QkRW1iYXJrZWQpDQp0aXRhbmljX3Rlc3QkUGNsYXNzPWFzLmZhY3Rvcih0aXRhbmljX3Rlc3QkRW1iYXJrZWQpDQphZ2UubWVhbl90ZXN0IDwtIG1lYW4odGl0YW5pY190ZXN0JEFnZSwgbmEucm09VFJVRSkNCnRpdGFuaWNfdGVzdCRBZ2VbaXMubmEodGl0YW5pY190ZXN0JEFnZSldID0gYWdlLm1lYW4NCg0KDQojTWFsZSBhbmQgRmVtYWxlIA0KdGFibGUodGl0YW5pY190cmFpbiRTZXgpDQpgYGANCmBgYHtyfQ0KI01pc3NpbmcgdmFsdWUgb2JzZXJ2YXRpb24NCnNhcHBseSh0aXRhbmljX3RyYWluLGZ1bmN0aW9uKHgpIHN1bShpcy5uYSh4KSkpDQpzdW0oaXMubmEodGl0YW5pY190cmFpbiRTZXgpKQ0KYGBgDQoNCmBgYHtyfQ0KI1NlcnZpdmVkIGFuZCBub3Qgc2Vydml2ZWQgZGF0YQ0KdGFibGUodGl0YW5pY190cmFpbiRTdXJ2aXZlZCkNCmBgYA0KYGBge3J9DQojR3JhcGhpY2FsIHJlcHJlc2VudGF0aW9uDQpnZ3Bsb3QodGl0YW5pY190cmFpbiwgYWVzKHggPSBQY2xhc3MsIGZpbGwgPSBmYWN0b3IoU3Vydml2ZWQpKSkgKw0KICBnZW9tX2JhcihzdGF0PSdjb3VudCcsIHBvc2l0aW9uPSdkb2RnZScpICsNCiAgc2NhbGVfeF9jb250aW51b3VzKGJyZWFrcz1jKDE6MTEpKSArDQogIGxhYnMoeCA9ICdQY2xhc3MnKSANCmBgYA0KYGBge3J9DQojRmFyZQ0KZ2dwbG90KHRpdGFuaWNfdHJhaW4pK2Flcyh4PUZhcmUpK2dlb21fZGVuc2l0eShhbHBoYT0wLjIpDQpgYGANCmBgYHtyfQ0KI0NvbWUgbWFjaGluZSBsZWFybmluZyBvbiBzcGFyaw0KI0xldHMgdHJ5IHJhbmRvbSBmb3Jlc3QNCnNldC5zZWVkKDExMSkNCmxpYnJhcnkocmFuZG9tRm9yZXN0KQ0KcmY9cmFuZG9tRm9yZXN0KGZhY3RvcihTdXJ2aXZlZCl+U2V4K0VtYmFya2VkK1BjbGFzcytBZ2UrU2liU3ArUGFyY2grRmFyZSxkYXRhPXRpdGFuaWNfdHJhaW4pDQpwbG90KHJmKQ0KDQpgYGANCk92ZXJhbGwgZXJyb3IgcmF0ZSBpcyBsZXNzIHRoYW4gMC4yNS4NCg0KDQoNCmBgYHtyfQ0Kc3BhcmtfZGlzY29ubmVjdChzcGFyaykNCmBgYA0KDQo=