R-logo
Replacing a value is very easy, thanks to replace()
in R to replace the values.
In data analysis, there may be plenty of instances where you have to deal with missing values, negative values, or non-accurate values that are present in the dataset. These values might affect the analysis result as well.
So in order to avoid these situations and false accuracies, you can make use of replace()
function in R to replace the false values with appropriate values.
The replace()
function in R syntax is very simple and easy to implement. It includes the vector, index vector, and the replacement values as well as shown below.
replace(x, list, values)
Let’s replace a value from a given vector
# Create a vector
> fruits <- c('apple', 'lemon', 'grape', 'kiwi')
> fruits
[1] "apple" "lemon" "grape" "kiwi"
# Let's replace 2nd element of the vector
> replace(fruits, 2, 'mango')
[1] "apple" "mango" "grape" "banana"
# Let's replace 3rd and 4th element of vector
> replace(fruits, c(3:4), c('banana', 'pineapple'))
[1] "apple" "lemon" "banana" "pineapple"
So, we are going to replace the NA values with 0 which are present in the data frame. This is the input data frame having the NA values.
For this we are going to use airquality
dataset because it got NA values in it so we can replace those NA values. Let’s check the airquality
dataset.
# airquality dataset
> airquality
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
7 23 299 8.6 65 5 7
8 19 99 13.8 59 5 8
9 8 19 20.1 61 5 9
10 NA 194 8.6 69 5 10
11 7 NA 6.9 74 5 11
...
Now, lets replace the NA values
> df <- airquality
> df <- replace(df, is.na(df), 0)
> df
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 0 0 14.3 56 5 5
6 28 0 14.9 66 5 6
7 23 299 8.6 65 5 7
8 19 99 13.8 59 5 8
9 8 19 20.1 61 5 9
10 0 194 8.6 69 5 10
11 7 0 6.9 74 5 11
...
To replace logical values in a list we need to first create a list with logical values in it.
# Create a logical vector
> logical_vec <- c('TRUE', 'TRUE', 'FALSE', 'FALSE', 'TRUE')
> logical_vec
[1] "TRUE" "TRUE" "FALSE" "FALSE" "TRUE"
We can use if else to replace elements in a list
ifelse( condition, v1, v2)
> logical_vec <- ifelse(logical_vec=="TRUE", 0, 1)
> logical_vec
[1] 0 0 1 1 0
We completed replacing values in a data frame is a very handy option available in R for data analysis. Using replace() in R, you can switch NA, 0, and negative values with appropriate to clear up large datasets for analysis. Also saw how to use if-else in R.
This brings the end of this Blog. We really appreciate your time.
Hope you liked it.
Do visit our page www.zigya.com/blog for more informative blogs on Data Science
Keep Reading! Cheers!
Zigya Academy
BEING RELEVANT
Controlling immunological responses requires the cytokine interleukin-2 (IL-2), commonly referred to as IL-2 Human. It…
What is Mortgage Insurance? Mortgage insurance is a type of insurance policy designed to protect…
Through the standard form offers different advantages in mathematical calculations and scientific notation. Firstly, it…
Introduction Stress is a feeling caused by an external trigger that makes us frustrated, such…
Sociology is a broad discipline that examines societal issues. It looks at the meaningful patterns…
Some info about Inch Inches are a unique measure that persuades us that even the…