Created

Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

Extracting Numeric Values from Words

View Rwords.r
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
My.Words <- read.csv("http://www.oberlin.edu/faculty/cdesante/assets/downloads/Randwords.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:
LETTERS
rank(LETTERS)
Letter.Values<- rank(LETTERS)
names(Letter.Values) <- LETTERS
Letter.Values
 
#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])}))
Word.Sums
 
#Step 4: Which words have the highest and lowest values?
 
My.Words$RANDOM.WORDS[Word.Sums==max(Word.Sums)]
My.Words$RANDOM.WORDS[Word.Sums==min(Word.Sums)]

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
Something went wrong with that request. Please try again.