 
  Data Structure Data Structure
 Networking Networking
 RDBMS RDBMS
 Operating System Operating System
 Java Java
 MS Excel MS Excel
 iOS iOS
 HTML HTML
 CSS CSS
 Android Android
 Python Python
 C Programming C Programming
 C++ C++
 C# C#
 MongoDB MongoDB
 MySQL MySQL
 Javascript Javascript
 PHP PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to replace numbers written in words with numbers in an R data frame column?
To replace numbers written in words with numbers in an R data frame column, we can use within function.
For example, if we have a data frame called df that contains a column say X having numbers from 1 to 5 written in words then we can convert them into numbers by using the below command −
within(df,X<-factor(X,labels=c(1,2,3,4,5)))
Example 1
Following snippet creates a sample data frame −
x<-sample(c("First","Second","Third"),20,replace=TRUE) df1<-data.frame(x) df1 The following dataframe is created −
x 1 Second 2 First 3 Third 4 Third 5 Third 6 Second 7 Third 8 First 9 Second 10 Second 11 Second 12 Second 13 Second 14 Third 15 Second 16 First 17 Third 18 Third 19 First 20 Third
To replace words in x with numbers, add the following code to the above snippet −
x<-sample(c("First","Second","Third"),20,replace=TRUE) df1<-data.frame(x) within(df1,x<-factor(x,labels=c(1,2,3)))  Output
If you execute all the above given snippets as a single program, it generates the following output −
x 1 2 2 1 3 3 4 3 5 3 6 2 7 3 8 1 9 2 10 2 11 2 12 2 13 2 14 3 15 2 16 1 17 3 18 3 19 1 20 3
Example 2
Following snippet creates a sample data frame −
y<-sample(c("I","II","III","IV"),20,replace=TRUE) df2<-data.frame(y) df2 The following dataframe is created −
y 1 I 2 III 3 I 4 IV 5 I 6 I 7 III 8 II 9 I 10 I 11 III 12 III 13 IV 14 I 15 II 16 I 17 II 18 III 19 IV 20 I
To replace Roman Numerals in y with numbers, add the following code to the above snippet −
y<-sample(c("I","II","III","IV"),20,replace=TRUE) df2<-data.frame(y) within(df2,y<-factor(y,labels=c(1,2,3,4)))  Output
If you execute all the above given snippets as a single program, it generates the following output −
y 1 1 2 3 3 1 4 4 5 1 6 1 7 3 8 2 9 1 10 1 11 3 12 3 13 4 14 1 15 2 16 1 17 2 18 3 19 4 20 1
