[R] cleanup/replacing a value on condition of another value

Avi Gross @v|gro@@ @end|ng |rom ver|zon@net
Mon Oct 25 23:14:25 CEST 2021


I wonder why it is not as simple as:

Call mutate on the data and have a condition that looks like:

data %>% mutate(cases = ifelse(multiple_cond, NA, cases) -> output

-----Original Message-----
From: R-help <r-help-bounces using r-project.org> On Behalf Of Dr Eberhard W Lisse
Sent: Monday, October 25, 2021 11:49 AM
To: r-help using r-project.org
Subject: Re: [R] cleanup/replacing a value on condition of another value

Rui,

that works for me too, but is not what I need to do.

I want to make the 'cases' value for this particular country AND this particular date AND this particular type AND this particular value (ie ALL conditions must be fulfilled) become NA so that the tibble would change from

	[...]
	2 Namibia 2021-10-24 death         4
	3 Namibia 2021-10-23 confirmed   357
	4 Namibia 2021-10-23 death         1
	[...]

to

	[...]
	2 Namibia 2021-10-24 death         4
	3 Namibia 2021-10-23 confirmed   357
	4 Namibia 2021-10-23 death         1
	[...]

as long as they don't fix the dataset, and if/when they do it goes to the expected 23 value :-)-O

greetings, el

On 2021-10-25 17:26 , Rui Barradas wrote:
 > Hello,
 >
 > The following works with me.
 >
 >
 > library(coronavirus)
 > library(dplyr)
 >
 > data(coronavirus, package = "coronavirus")  > #update_dataset(silence = FALSE)  >  > coronavirus %>%
 >    select(country, date, type, cases) %>%
 >    filter(
 >      country == 'Namibia',
 >      date == '2021-10-23',
 >      cases == 357
 >    )
 >
 >
 >
 > Can you post the pipe code you are running?
 >
 > Hope this helps,
 >
 > Rui Barradas
 >
 > Às 12:25 de 25/10/21, Dr Eberhard W Lisse escreveu:
 >> Hi,
 >>
 >> I have data from JHU via the 'coronavirus' package which has a value for  >> the confirmed cases for 2021-10-23 which differs drastically (357) from  >> what is reported in country (23).
 >>
 >>      # A tibble: 962 × 4
 >>        country date       type      cases
 >>        <chr>   <date>     <chr>     <int>
 >>      1 Namibia 2021-10-24 confirmed    23
 >>      2 Namibia 2021-10-24 death         4
 >>      3 Namibia 2021-10-23 confirmed   357
 >>      4 Namibia 2021-10-23 death         1
 >>      5 Namibia 2021-10-22 confirmed    30
 >>      6 Namibia 2021-10-22 death         1
 >>      # … with 956 more rows
 >>
 >> I am using a '%>%' pipeline and am struggling to mutate 'cases' to NA  >> using something like  >>
 >>      country == 'Namibia' & date == '2021-10-23' & cases == 357
 >>
 >> so that if or when the data-set is corrected I don't have to change the  >> code (immediately), even after some googling.
 >>
 >> I can do
 >>
 >>      cases == 357
 >>
 >> only, but that could find other cases as well, which is obviously not  >> the thing to do  >>  >> Any suggestions?
 >>
 >> greetings, el
 >>
 >> ______________________________________________
 >> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see  >> https://stat.ethz.ch/mailman/listinfo/r-help
 >> PLEASE do read the posting guide
 >> http://www.R-project.org/posting-guide.html
 >> and provide commented, minimal, self-contained, reproducible code.
 >

______________________________________________
R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list