[Rd] as.character(list(NA))
Robert McGehee
rmcgehee at walleyetrading.net
Mon Jan 22 20:14:55 CET 2018
Also perhaps a surprise that the behavior depends on the mode of the NA.
> is.na(as.character(list(NA_real_)))
[1] FALSE
> is.na(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:r-devel-bounces at r-project.org] On Behalf Of Hervé Pagès
Sent: Monday, January 22, 2018 2:01 PM
To: William Dunlap <wdunlap at tibco.com>; Patrick Perry <pperry at stern.nyu.edu>
Cc: r-devel at r-project.org
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
>
> On Sat, Jan 20, 2018 at 7:43 AM, Patrick Perry <pperry at stern.nyu.edu> wrote:
>
>> As of R Under development (unstable) (2018-01-19 r74138):
>>
>>> as.character(list(NA))
>> [1] "NA"
>>
>>> is.na(as.character(list(NA)))
>> [1] FALSE
>>
>> ______________________________________________
>> R-devel at r-project.org 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=
>>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel at r-project.org 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=
>
--
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: hpages at fredhutch.org
Phone: (206) 667-5791
Fax: (206) 667-1319
______________________________________________
R-devel at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel
mailing list