On 01/22/2018 01:02 PM, William Dunlap wrote:
I tend to avoid using as.<type> functions on lists, since they act oddly in several ways. E.g, if the list "L" consists entirely of scalar elements then as.numeric(L) acts like as.numeric(unlist(L)) but if any element is not a scalar there is an error.

FWIW personally I see this as a nice feature and use as.numeric(L)
instead of as.numeric(unlist(L) in places where I'd rather fail than
getting something that is not parallel to the input.

H.

  as.character()
does not seem to make a distinction between the all-scalar and not-all-scalar cases
but does various things with NA's of various types.

Bill Dunlap
TIBCO Software
wdunlap tibco.com <https://urldefense.proofpoint.com/v2/url?u=http-3A__tibco.com&d=DwMFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=TBOnlxYy_MjXJqxLqI8WB2WWHNMtc8qw5gxsqUoyoH4&s=XiTysBsoZb4M91NAS4DK6nK982wAf7JGpRSDrXioQ3A&e=>

On Mon, Jan 22, 2018 at 11:14 AM, Robert McGehee <[email protected] <mailto:[email protected]>> wrote:

    Also perhaps a surprise that the behavior depends on the mode of the NA.

     > is.na
    
<https://urldefense.proofpoint.com/v2/url?u=http-3A__is.na&d=DwMFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=TBOnlxYy_MjXJqxLqI8WB2WWHNMtc8qw5gxsqUoyoH4&s=z8HTNapemGDhhH0ICUN2hgJrtUcxsgM96mcUwD8QzQk&e=>(as.character(list(NA_real_)))
    [1] FALSE
     > is.na
    
<https://urldefense.proofpoint.com/v2/url?u=http-3A__is.na&d=DwMFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=TBOnlxYy_MjXJqxLqI8WB2WWHNMtc8qw5gxsqUoyoH4&s=z8HTNapemGDhhH0ICUN2hgJrtUcxsgM96mcUwD8QzQk&e=>(as.character(list(NA_character_)))
    [1] TRUE

    Does this mean deparse() preserves NA-ness for NA_character_ but not
    NA_real_?


    -----Original Message-----
    From: R-devel [mailto:[email protected]
    <mailto:[email protected]>] On Behalf Of Hervé Pagès
    Sent: Monday, January 22, 2018 2:01 PM
    To: William Dunlap <[email protected] <mailto:[email protected]>>;
    Patrick Perry <[email protected] <mailto:[email protected]>>
    Cc: [email protected] <mailto:[email protected]>
    Subject: Re: [Rd] as.character(list(NA))

    On 01/20/2018 08:24 AM, William Dunlap via R-devel wrote:
     > I believe that for a list as.character() applies deparse()  to
    each element
     > of the list.  deparse() does not preserve NA-ness, as it is
    intended to
     > make text that the parser can read.
     >
     >> str(as.character(list(Na=NA, LglVec=c(TRUE,NA),
     > Function=function(x){x+1})))
     >   chr [1:3] "NA" "c(TRUE, NA)" "function (x) \n{\n    x + 1\n}"
     >

    This really comes as a surprise though since coercion to all the
    other atomic types (except raw) preserve the NAs.

    And also as.character(unlist(list(NA))) preserves them.

    H.

     >
     > Bill Dunlap
     > TIBCO Software
     > wdunlap tibco.com
    
<https://urldefense.proofpoint.com/v2/url?u=http-3A__tibco.com&d=DwMFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=TBOnlxYy_MjXJqxLqI8WB2WWHNMtc8qw5gxsqUoyoH4&s=XiTysBsoZb4M91NAS4DK6nK982wAf7JGpRSDrXioQ3A&e=>
     >
     > On Sat, Jan 20, 2018 at 7:43 AM, Patrick Perry
    <[email protected] <mailto:[email protected]>> wrote:
     >
     >> As of R Under development (unstable) (2018-01-19 r74138):
     >>
     >>> as.character(list(NA))
     >> [1] "NA"
     >>
     >>> is.na
    
<https://urldefense.proofpoint.com/v2/url?u=http-3A__is.na&d=DwMFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=TBOnlxYy_MjXJqxLqI8WB2WWHNMtc8qw5gxsqUoyoH4&s=z8HTNapemGDhhH0ICUN2hgJrtUcxsgM96mcUwD8QzQk&e=>(as.character(list(NA)))
     >> [1] FALSE
     >>
     >> ______________________________________________
     >> [email protected] <mailto:[email protected]> mailing list
     >>
    
https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_listinfo_r-2Ddevel&d=DwICAg&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=VbamM9XRQOlfBakrmlrmQZ7DLgXZ-hhhFeLD-fKpoCo&s=Luhqwpr2bTltIA9Cy7kA4gwcQh16bla0S6OVe3Z09Xo&e=
    
<https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_listinfo_r-2Ddevel&d=DwICAg&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=VbamM9XRQOlfBakrmlrmQZ7DLgXZ-hhhFeLD-fKpoCo&s=Luhqwpr2bTltIA9Cy7kA4gwcQh16bla0S6OVe3Z09Xo&e=>
     >>
     >
     >       [[alternative HTML version deleted]]
     >
     > ______________________________________________
     > [email protected] <mailto:[email protected]> mailing list
     >
    
https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_listinfo_r-2Ddevel&d=DwICAg&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=VbamM9XRQOlfBakrmlrmQZ7DLgXZ-hhhFeLD-fKpoCo&s=Luhqwpr2bTltIA9Cy7kA4gwcQh16bla0S6OVe3Z09Xo&e=
    
<https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_listinfo_r-2Ddevel&d=DwICAg&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=VbamM9XRQOlfBakrmlrmQZ7DLgXZ-hhhFeLD-fKpoCo&s=Luhqwpr2bTltIA9Cy7kA4gwcQh16bla0S6OVe3Z09Xo&e=>
     >

    --
    Hervé Pagès

    Program in Computational Biology
    Division of Public Health Sciences
    Fred Hutchinson Cancer Research Center
    1100 Fairview Ave. N, M1-B514
    P.O. Box 19024
    Seattle, WA 98109-1024

    E-mail: [email protected] <mailto:[email protected]>
    Phone: (206) 667-5791 <tel:%28206%29%20667-5791>
    Fax: (206) 667-1319 <tel:%28206%29%20667-1319>

    ______________________________________________
    [email protected] <mailto:[email protected]> mailing list
    https://stat.ethz.ch/mailman/listinfo/r-devel
    
<https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_listinfo_r-2Ddevel&d=DwMFaQ&c=eRAMFD45gAfqt84VtBcfhQ&r=BK7q3XeAvimeWdGbWY_wJYbW0WYiZvSXAJJKaaPhzWA&m=TBOnlxYy_MjXJqxLqI8WB2WWHNMtc8qw5gxsqUoyoH4&s=Tl76BG1PB4_MNRObhik4eJ3UG8DsFBcgCq_k4f7RBSE&e=>



--
Hervé Pagès

Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M1-B514
P.O. Box 19024
Seattle, WA 98109-1024

E-mail: [email protected]
Phone:  (206) 667-5791
Fax:    (206) 667-1319

______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to