Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Extracting Numeric Values from Words
My.Words <- read.csv("")
My.Words$RANDOM.WORDS <- as.character(My.Words$RANDOM.WORDS)
#Step 1: Split Character Vectors into Sub-strings:
strsplit(My.Words$RANDOM.WORDS, "")
Split.List <- strsplit(My.Words$RANDOM.WORDS, "")
#Step 2: Assign a numeric value to each of the 26 letters:
Letter.Values<- rank(LETTERS)
names(Letter.Values) <- LETTERS
#Step 3: Extract the value of each word by summing the letters' values
Word.Sums <- unlist(lapply(Split.List, function(Word){sum(Letter.Values[Word])}))
#Step 4: Which words have the highest and lowest values?

Steps 2 and 3 look very complicated. You can use the following one-liner

Word.Sums <- sapply(Split.List, function(word) sum(match(word, LETTERS)))

For step 4, you could use which.min and which.max

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment