[R] problem with grep under loop
Jeff Newmiller
jdnewmil at dcn.davis.CA.us
Sat Sep 14 05:36:00 CEST 2013
Please read the Posting Guide before you post again, and study how to make a reproducible example of your problem [1], and change the settings on your mail program to send plain text. I, for one, am not psychic, so need things spelled out clearly.
[1] http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example
---------------------------------------------------------------------------
Jeff Newmiller The ..... ..... Go Live...
DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go...
Live: OO#.. Dead: OO#.. Playing
Research Engineer (Solar/Batteries O.O#. #.O#. with
/Software/Embedded Controllers) .OO#. .OO#. rocks...1k
---------------------------------------------------------------------------
Sent from my phone. Please excuse my brevity.
capricy gao <capricyg at yahoo.com> wrote:
>Thanks a lot for all the responses!!
>
>I then first test my data:
>
>> dim(data)
>[1] 52086 13
>> if(grep(data[3,4],data[3,12])==1) print("Y")
>[1] "Y"
>> for(i in 1:52086){if(grep(data[i,4],data[i,12])==1) print ("Y")}
>Error in if (grep(data[i, 4], data[i, 12]) == 1) print("Y") :
> argument is of length zero
>
>
>What is this new error message? "argument is of length zero"
>
>Here is my data format:
>>head(data)
>
> V1 V2 V3 V4 V5 V6
>V7 V8
>1 ref_gene_id ref_id class_code cuff_gene_id cuff_id FMI FPKM
>FPKM_conf_lo
>2 - - u C.3 C.3.1 100 1.000000
>0.000000
>3 - - u C.2 C.2.1 100 1.000000
>0.000000
>4 - - u C.4 C.4.1 100 1.000000
>0.000000
>5 - - u C.1 C.1.1 100 1.000000
>0.000000
>6 - - u C.5 C.5.1 100 1.000000
>0.000000
> V9 V10 V11 V12 V13
>1 FPKM_conf_hi cov len major_iso_id ref_match_len
>2 0.000000 0.056682 96 C.3.1 -
>3 0.000000 0.058453 99 C.2.1 -
>4 0.000000 0.059634 101 C.4.1 -
>5 0.000000 0.059634 101 C.2.1 -
>6 0.000000 0.059634 101 C.5.1 -
>
>
>________________________________
> From: Jeff Newmiller <jdnewmil at dcn.davis.CA.us>
>To: capricy gao <capricyg at yahoo.com>; capricy gao <capricyg at yahoo.com>;
>"r-help at r-project.org" <r-help at r-project.org>
>Sent: Friday, September 13, 2013 9:21 PM
>Subject: Re: [R] problem with grep under loop
>
>
>This is because you are not printing it (with the print or cat
>functions). Keep in mind that the visible result you get from calling a
>function or evaluating a variable interactively comes from the
>interactive R command line, not from R itself. Once you put such an
>expression inside a function (such as the "for" function) it is no
>longer directly being invoked by the command interpreter.
>
>You might want to read [1] and [2] (which says don't post using HTML).
>
>[1]
>http://stackoverflow.com/questions/4716152/why-do-r-objects-not-print-in-a-function-or-a-for-loop
>[2] http://www.R-project.org/posting-guide.html
>---------------------------------------------------------------------------
>Jeff Newmiller The ..... ..... Go
>Live...
>DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live
>Go...
> Live: OO#.. Dead: OO#..
>Playing
>Research Engineer (Solar/Batteries O.O#. #.O#. with
>/Software/Embedded Controllers) .OO#. .OO#.
>rocks...1k
>---------------------------------------------------------------------------
>
>Sent from my phone. Please excuse my brevity.
>
>capricy gao <capricyg at yahoo.com> wrote:
>>
>>
>>I am just testing the possibility of using grep under for loop:
>>
>>>for(i in 1:10){grep("a",letters)}
>>
>>
>>nothing came out;
>>
>>when I ran:
>>
>>
>>>grep("a",letters),
>>
>>
>>I got "1"
>>
>>so in my for loop, I expected to see ten "1"s, but I did not.
>>
>>Could anybody help me to figure out why? Thanks a lot for your help.
>>
>>Capricy
>> [[alternative HTML version deleted]]
>>
>>______________________________________________
>>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