Okay, I switched to plain text. Let's see if people can see this better.
I have come back to trying to learn R after a long time away, and have begun 
with the YouTube tutorial videos by David Langer, as seen on "Introduction to 
Data Science with R - Data Analysis Part 1." I am using R Studio with R version 
3.4.4 (2018-03-15) -- "Someone to Lean On"

Around 1:16:00 in the video Langer creates a new variable using an else if loop:

extractTitle <- function(name) {
     name <- as.character(name)
     if(length(grep("Miss.", name)) > 0) {
       return("Miss.")
     } else if(length(grep("Master.", name)) > 0) {
       return("Master.")
     } else if(length(grep("Mrs.", name)) > 0) {
       return("Mrs.")
     } else if(length(grep("Mr.", name)) > 0) {
       return("Mr.")
     } else { return("Other.") }}

titles <- NULL
for(i in 1:nrow(data.combined)) {
     titles <- c(title, extractTitle(data.combined[i, "name"])) }

data.combined$title <- as.factor(titles)

There are two problems I see in my attempt to replicate this. First, the 
data.combined set contains 1309 names, but when I try to create the variable 
"titles" using this code, it creates a list of 2. When I use View(titles), what 
comes up is the first item on the list is 

function (main = NULL, sub = NULL, xlab = NULL, ylab = NULL, line = NA, outer = 
FALSE, ...)

and the second item in the list is just the title "Master."

The second problem is that after I enter data.combined$title <- 
as.factor(titles) I get the error message

Error in sort.list(y) : 'x' must be atomic for 'sort.list' Have you called 
'sort' on a list?

If I try changing the as.factor to as.vector, I get 

Error in `$<-.data.frame`(`*tmp*`, title, value = list(function (main = NULL, : 
replacement has 2 rows, data has 1309

I have checked and rechecked my code, and it is identical to Langer's. What is 
wrong here?

______________________________________________
[email protected] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to