- 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 remove rows from data frame in R that contains NaN?
The NaN values are referred to as the Not A Number in R. It is also called undefined or unrepresentable but it belongs to numeric data type for the values that are not numeric, especially in case of floating-point arithmetic. To remove rows from data frame in R that contains NaN, we can use the function na.omit.
Example1
Consider the below data frame −
x1<−sample(c(NaN,5,10),20,replace=TRUE) x2<−sample(c(NaN,0,1),20,replace=TRUE) df1<−data.frame(x1,x2) df1
Output
x1 x2 1 NaN NaN 2 10 0 3 NaN NaN 4 NaN NaN 5 NaN NaN 6 NaN NaN 7 5 1 8 5 1 9 5 NaN 10 10 NaN 11 5 NaN 12 NaN NaN 13 NaN NaN 14 NaN NaN 15 10 1 16 10 0 17 NaN NaN 18 NaN 1 19 NaN NaN 20 5 1
Removing rows with NaN from df1 −
df1<−na.omit(df1) df1
Output
x1 x2 2 10 0 7 5 1 8 5 1 15 10 1 16 10 0 20 5 1
Example2
y1<−sample(c(NaN,rnorm(5)),20,replace=TRUE) y2<−sample(c(NaN,rnorm(2)),20,replace=TRUE) df2<−data.frame(y1,y2) df2
Output
y1 y2 1 0.71997269 NaN 2 0.31324492 NaN 3 0.71997269 −0.1903841 4 1.23101131 −0.1903841 5 0.09512564 −0.1903841 6 0.71997269 0.3998648 7 −0.14221014 −0.1903841 8 0.09512564 NaN 9 NaN NaN 10 1.23101131 0.3998648 11 −0.14221014 0.3998648 12 1.23101131 NaN 13 NaN 0.3998648 14 0.71997269 NaN 15 0.09512564 NaN 16 0.31324492 NaN 17 NaN NaN 18 0.09512564 0.3998648 19 1.23101131 0.3998648 20 0.71997269 −0.1903841
Removing rows with NaN from df2 −
Example
df2<−na.omit(df2) df2
Output
y1 y2 3 0.71997269 −0.1903841 4 1.23101131 −0.1903841 5 0.09512564 −0.1903841 6 0.71997269 0.3998648 7 −0.14221014 −0.1903841 10 1.23101131 0.3998648 11 −0.14221014 0.3998648 18 0.09512564 0.3998648 19 1.23101131 0.3998648 20 0.71997269 −0.1903841
Advertisements