[BioC] Scan not respecting what

Kasper Daniel Hansen kasperdanielhansen at gmail.com
Thu Aug 26 19:48:13 CEST 2010


To beat on this

character(0) is a zero-length character vector, so the type is the
same as "macdonald", which means

what = list(character(0))

is the same as

what = list("macdonald")

Now, 1L is 1 as an integer, so 1L is the same as as.integer(1) and the
same as integer(0)

Kasper

On Thu, Aug 26, 2010 at 1:21 PM, James W. MacDonald
<jmacdon at med.umich.edu> wrote:
> Hi Gaston,
>
> On 8/26/2010 1:10 PM, Gaston Fiore wrote:
>>
>> Thanks Martin, now it gives integers. Why isn't this in the described
>> in the R Documentation, however? From there:
>>
>> what: the type of ‘what’ gives the type of data to be read.  The
>> supported types are ‘logical’, ‘integer’, ‘numeric’, ‘complex’,
>> ‘character’, ‘raw’ and ‘list’.  If ‘what’ is a list, it is assumed
>> that the lines of the data file are records each containing
>> ‘length(what)’ items (‘fields’) and the list components should have
>> elements which are one of the first six types listed or ‘NULL’, see
>> section ‘Details’ below.
>>
>> I don't see anywhere that I should specify 1L as opposed to
>> 'integer', even though that seems to be the correct way of achieving
>> what I wanted since it works. Any comments?
>
> As with much documentation (not just R!), the actual meaning of the words
> used is clear a posteriori, but maybe not a priori.
>
> Look at the description of 'what' again. It says "the *type* of 'what' gives
> the type of data to be read".
>
> Now is the type of "integer" integer, or is it character? Any of 'logical',
> 'integer', 'numeric', 'complex', etc are all character strings that describe
> something else.
>
> But the help doesn't say that you should give something that describes what
> you are scan()ning, but something that is of the *type* of what you are
> scan()ning.
>
> So on first read, it is pretty confusing (I was confused too), but if you
> look carefully at what is written, it is clear.
>
> But if you really object to the wording, you can always submit patches to
> the documentation on the R-devel list, which is how Open Source projects get
> improved.
>
> Best,
>
> Jim
>
>
>>
>> Thanks,
>>
>> -Gaston
>>
>>
>> On Aug 26, 2010, at 1:00 AM, Martin Morgan wrote:
>>
>>> On 8/25/2010 9:57 PM, Martin Morgan wrote:
>>>>
>>>> On 8/25/2010 9:21 PM, Gaston Fiore wrote:
>>>>>
>>>>> Hello everyone,
>>>>>
>>>>> By some (strange to me) reason, scan isn't respecting the what
>>>>> argument:
>>>>>
>>>>>> temp<- scan(file = "~/data/WT/NS20WTR1ChrReadsF.txt", what =
>>>>>> 'integer', sep = ",", quote = 'NULL', comment.char = "")
>>>>>
>>>>> Read 26042606 items
>>>>>>
>>>>>> class(temp)
>>>>>
>>>>> [1] "character"
>>>>>>
>>>>>> typeof(temp)
>>>>>
>>>>> [1] "character"
>>>>>
>>>>> I'm new to R, and I apologize if the mistake is obvious, but
>>>>> could someone explain to me why this is the case?
>>>>
>>>> Hi Gaston --
>>>>
>>>> The 'what' argument is an instance of the data type to be parsed,
>>>> so what=integer() or what=1.
>>>
>>> That last should be what=1L; the  'L' is R's way of saying that the
>>> whole number should be an integer rather than a numeric. Martin
>>>>
>>>> Hope that helps.
>>>>
>>>> Martin
>>>>>
>>>>> Thanks a lot,
>>>>>
>>>>> -Gaston
>>>>>
>>>>> _______________________________________________ Bioconductor
>>>>> mailing list Bioconductor at stat.math.ethz.ch
>>>>> https://stat.ethz.ch/mailman/listinfo/bioconductor Search the
>>>>> archives:
>>>>> http://news.gmane.org/gmane.science.biology.informatics.conductor
>>>>
>>>>
>>>>>
> _______________________________________________
>>>>
>>>> Bioconductor mailing list Bioconductor at stat.math.ethz.ch
>>>> https://stat.ethz.ch/mailman/listinfo/bioconductor Search the
>>>> archives:
>>>> http://news.gmane.org/gmane.science.biology.informatics.conductor
>>>
>>
>>>>
>> _______________________________________________ Bioconductor mailing
>> list Bioconductor at stat.math.ethz.ch
>> https://stat.ethz.ch/mailman/listinfo/bioconductor Search the
>> archives:
>> http://news.gmane.org/gmane.science.biology.informatics.conductor
>
> --
> James W. MacDonald, M.S.
> Biostatistician
> Douglas Lab
> University of Michigan
> Department of Human Genetics
> 5912 Buhl
> 1241 E. Catherine St.
> Ann Arbor MI 48109-5618
> 734-615-7826
> **********************************************************
> Electronic Mail is not secure, may not be read every day, and should not be
> used for urgent or sensitive issues
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives:
> http://news.gmane.org/gmane.science.biology.informatics.conductor
>



More information about the Bioconductor mailing list