[R] if condition doesn't evaluate to True/False
Petr PIKAL
petr.pikal at precheza.cz
Wed Apr 29 17:21:26 CEST 2009
Hi
r-help-bounces at r-project.org napsal dne 29.04.2009 17:05:01:
> see
> ?is.null
>
> e.g.
> if( is.null(sub_grp_whr_cls_data[sbgrp_no, 1]) )
> {
> your code
> }
It probably will not work as
sub_grp_whr_cls_data[sbgrp_no,1]=="NULL"
implicates that there is character value "NULL". I am not sure if you can
get NULL as a part of some object. I tried and failed.
See what you get
x<- c(1,2,3, NULL)
Regards
Petr
>
> Moumita Das wrote:
> > Hi friends,
> > Please help me with this bug.
> >
> > *Bug in my code:*
> >
> > In this variable sub_grp_whr_cls_data[sbgrp_no,1] I store the where
> > clause.every sub group has a where condition linked with it.
> >
> > Database1
> >
> >
> > Where clause was not found for a particular subgroup,
> > sub_grp_whr_cls_data[sbgrp_no,1] value was NULL
> >
> > So the condition (*sub_grp_whr_cls_data[sbgrp_no,1]=="NULL" ||
> > sub_grp_whr_cls_data[sbgrp_no,1]==""*) should evaluate to TRUE ,but it
> > evaluated to NA
> >
> > So the if block where I used the the condition threw error
> >
> > If(*sub_grp_whr_cls_data[sbgrp_no,1]=="NULL" ||
> > sub_grp_whr_cls_data[sbgrp_no,1]==""*)
> >
> > i.e if(NA)
> >
> > Error:--
> >
> > Error in if (sub_grp_whr_cls_data[sbgrp_no, 1] == "NULL" ||
> > sub_grp_whr_cls_data[sbgrp_no, :
> >
> > missing value where TRUE/FALSE needed
> >
> > Comments:-- but when there ‘s no where clause value the condition
> > (sub_grp_whr_cls_data[sbgrp_no,1]=="NULL"
> > ||sub_grp_whr_cls_data[sbgrp_no,1]=="") should automatically evaluate
to *
> > TRUE*
> >
> >
> >
> > Database2
> >
> > Where clause was found for a particular subgroup
> >
> > The condition (sub_grp_whr_cls_data[sbgrp_no,1]=="NULL"
> > ||sub_grp_whr_cls_data[sbgrp_no,1]=="") evaluated to FALSE
> >
> > So if (sub_grp_whr_cls_data[sbgrp_no,1]=="NULL"
> > ||sub_grp_whr_cls_data[sbgrp_no,1]=="") is
> >
> > If (FALSE) ,control goes to the else part.
> >
> > This is exactly what is expected of the program.
> >
> > *QUERY:-- **If the condition evaluates to FALSE when a where
condition is
> > available why doesn’t it evaluate to TRUE when a where condition
available
> > is NULL or no where condition is available.*
> >
> > Here I have taken the example of two databases where I tried to get
the
> > where clause for subgroup 1.In case of Database1 it was not available
in
> > case of Databse2 it was available.But the problem may appear for the
same
> > database also, when where clause is available for say one subgroup and
not
> > for the other.
> >
> >
> >
> >
------------------------------------------------------------------------
> >
> > ______________________________________________
> > R-help at r-project.org mailing list
> > 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.
>
>
> --
> Matthias Burger Project Manager/ Biostatistician
> Epigenomics AG Kleine Praesidentenstr. 1 10178 Berlin, Germany
> phone:+49-30-24345-0 fax:+49-30-24345-555
> http://www.epigenomics.com matthias.burger at epigenomics.com
> --
> Epigenomics AG Berlin Amtsgericht Charlottenburg HRB 75861
> Vorstand: Geert Nygaard (CEO/Vorsitzender)
> Oliver Schacht PhD (CFO)
> Aufsichtsrat: Prof. Dr. Dr. hc. Rolf Krebs (Chairman/Vorsitzender)
>
> ______________________________________________
> R-help at r-project.org mailing list
> 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