- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- 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 convert character column of a matrix into numeric in R?
If we have a matrix that contains character columns and we want to convert a single column to numeric then we first need to convert the matrix into a data frame using as.data.frame function after that as.numeric function can be used to change the particular column to numeric type as shown in the below examples.
Example 1
Following snippet creates a matrix −
M1<-matrix(factor(rpois(25,5)),ncol=5) M1
The following matrix is created −
[,1][,2][,3][,4][,5] [1,] "1" "2" "9" "8" "8" [2,] "8" "5" "5" "9" "6" [3,] "6" "5" "5" "2" "6" [4,] "4" "2" "4" "8" "5" [5,] "2" "5" "6" "5" "10"
Add the following code to the above snippet −
M1<-matrix(factor(rpois(25,5)),ncol=5) M1<-as.data.frame(M1) M1[,1]<-as.numeric(M1[,1]) M1
If you execute all the above given snippets as a single program, it generates the following output −
V1 V2 V3 V4 V5 1 1 2 9 8 8 2 8 5 5 9 6 3 6 5 5 2 6 4 4 2 4 8 5 5 2 5 6 5 10
To convert character column of a matrix into numeric in R, add the following code to the above snippet −
M1<-matrix(factor(rpois(25,5)),ncol=5) M1<-as.data.frame(M1) M1[,1]<-as.numeric(M1[,1]) str(M1)
Output
If you execute all the above given snippets as a single program, it generates the following output −
'data.frame': 5 obs. of 5 variables: $ V1: num 1 8 6 4 2 $ V2: chr "2" "5" "5" "2" ... $ V3: chr "9" "5" "5" "4" ... $ V4: chr "8" "9" "2" "8" ... $ V5: chr "8" "6" "6" "5" ...
Example 2
Following snippet creates a matrix −
M2<-matrix(factor(rpois(80,10)),ncol=4) M2
The following matrix is created −
[,1] [,2] [,3] [,4] [1,] "14" "18" "20" "7" [2,] "10" "8" "9" "13" [3,] "5" "7" "10" "9" [4,] "10" "9" "12" "12" [5,] "13" "15" "9" "5" [6,] "5" "6" "8" "9" [7,] "12" "5" "13" "10" [8,] "9" "17" "4" "17" [9,] "8" "8" "17" "7" [10,] "8" "11" "8" "17" [11,] "16" "9" "6" "14" [12,] "10" "15" "11" "12" [13,] "6" "9" "8" "3" [14,] "13" "10" "14" "13" [15,] "17" "11" "9" "9" [16,] "13" "11" "12" "8" [17,] "13" "10" "12" "12" [18,] "8" "12" "10" "8" [19,] "11" "5" "10" "8" [20,] "12" "8" "8" "9"
Add the following code to the above snippet −
M2<-matrix(factor(rpois(80,10)),ncol=4) M2<-as.data.frame(M2) M2[,4]<-as.numeric(M2[,4]) M2
If you execute all the above given snippets as a single program, it generates the following output −
V1 V2 V3 V4 1 14 18 20 7 2 10 8 9 13 3 5 7 10 9 4 10 9 12 12 5 13 15 9 5 6 5 6 8 9 7 12 5 13 10 8 9 17 4 17 9 8 8 17 7 10 8 11 8 17 11 16 9 6 14 12 10 15 11 12 13 6 9 8 3 14 13 10 14 13 15 17 11 9 9 16 13 11 12 8 17 13 10 12 12 18 8 12 10 8 19 11 5 10 8 20 12 8 8 9
To convert character column of a matrix into numeric in R, add the following code to the above snippet −
M2<-matrix(factor(rpois(80,10)),ncol=4) M2<-as.data.frame(M2) M2[,4]<-as.numeric(M2[,4]) str(M2)
Output
If you execute all the above given snippets as a single program, it generates the following output −
'data.frame': 20 obs. of 4 variables: $ V1: chr "14" "10" "5" "10" ... $ V2: chr "18" "8" "7" "9" ... $ V3: chr "20" "9" "10" "12" ... $ V4: num 7 13 9 12 5 9 10 17 7 17 ...
Example 3
Following snippet creates a matrix −
M3<-matrix(factor(rpois(100,5)),ncol=5) M3
The following matrix is created −
[,1] [,2] [,3] [,4] [,5] [1,] "1" "5" "3" "5" "6" [2,] "4" "5" "8" "10" "10" [3,] "6" "3" "5" "2" "4" [4,] "7" "5" "3" "4" "5" [5,] "5" "4" "5" "8" "3" [6,] "4" "5" "8" "3" "8" [7,] "3" "5" "0" "4" "5" [8,] "11" "10" "1" "8" "2" [9,] "4" "4" "5" "3" "5" [10,] "8" "7" "3" "3" "7" [11,] "5" "6" "5" "6" "3" [12,] "8" "12" "6" "4" "4" [13,] "5" "6" "5" "9" "5" [14,] "9" "7" "3" "5" "2" [15,] "6" "4" "7" "6" "4" [16,] "6" "4" "4" "4" "7" [17,] "4" "3" "3" "4" "5" [18,] "2" "4" "3" "2" "2" [19,] "3" "4" "3" "6" "4" [20,] "6" "8" "6" "6" "6"
Add the following code to the above snippet −
M3<-matrix(factor(rpois(100,5)),ncol=5) M3<-as.data.frame(M3) M3[,1]<-as.numeric(M3[,1]) M3
If you execute all the above given snippets as a single program, it generates the following output −
V1 V2 V3 V4 V5 1 1 5 3 5 6 2 4 5 8 10 10 3 6 3 5 2 4 4 7 5 3 4 5 5 5 4 5 8 3 6 4 5 8 3 8 7 3 5 0 4 5 8 11 10 1 8 2 9 4 4 5 3 5 10 8 7 3 3 7 11 5 6 5 6 3 12 8 12 6 4 4 13 5 6 5 9 5 14 9 7 3 5 2 15 6 4 7 6 4 16 6 4 4 4 7 17 4 3 3 4 5 18 2 4 3 2 2 19 3 4 3 6 4 20 6 8 6 6 6
To convert character column of a matrix into numeric in R, add the following code to the above snippet −
M3<-matrix(factor(rpois(100,5)),ncol=5) M3<-as.data.frame(M3) M3[,1]<-as.numeric(M3[,1]) str(M3)
Output
If you execute all the above given snippets as a single program, it generates the following output −
'data.frame': 20 obs. of 5 variables: $ V1: num 1 4 6 7 5 4 3 11 4 8 ... $ V2: chr "5" "5" "3" "5" ... $ V3: chr "3" "8" "5" "3" ... $ V4: chr "5" "10" "2" "4" ... $ V5: chr "6" "10" "4" "5" ...
- Related Articles
- How to convert a matrix column into list in R?
- How to convert a matrix into a matrix with single column in R?
- Convert a single column matrix into a diagonal matrix in R.
- How to convert a matrix into a color matrix in R?
- How to convert a sparse matrix into a matrix in R?
- How to convert a character data frame to numeric data frame in R?
- How to convert a vector into matrix in R?
- How to convert a table into matrix in R?
- How to convert values greater than a threshold into 1 in column of a matrix in R?
- How to convert a numerical column into factor column in R?
- How to convert a data frame into table for two factor columns and one numeric column in R?
- How to convert data.table object into a matrix in R?
- How to convert matrix rows into a list in R?
- How to convert an array into a matrix in R?
- How to convert factor levels into character in R?
