[BioC] Scan not respecting what

Martin Morgan mtmorgan at fhcrc.org
Thu Aug 26 19:20:51 CEST 2010


  On 8/26/2010 10:10 AM, 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?

In the usage section it shows

Usage:

      scan(file = "", what = double(0), nmax = -1, n = -1, sep = "",

and in the Details we have

      The type of 'what' or its components can be one of the six atomic
      vector types or 'NULL' (see 'is.atomic').

where 'type of' suggests

 > typeof(integer())
[1] "integer"
 > typeof("integer")
[1] "character"

but these are definitely obscure, and inconsistent with, e.g., 
read.table, where colClasses is a character vector naming the types of 
the columns.

Martin

> 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



More information about the Bioconductor mailing list