Message-ID: <CADfFDC5H8LBnrbxwQGN_nuv9UnacRVRo1xagp=aDTmS_zwHEBg@mail.gmail.com>
Date: 2013-06-28T11:17:06Z
From: Deepayan Sarkar
Subject: 'modifyList' drops (not adds) NULL components
In-Reply-To: <1D693EC430D9BA40A64CB59875BED8CF013447FF8464@USCTMXP51004.merck.com>
On Thu, Jun 27, 2013 at 10:59 PM, Raubertas, Richard
<richard_raubertas at merck.com> wrote:
> Dear list,
>
> Utils::modifyList() drops NULL components in its second argument, instead of adding them to the first argument. Compare:
>> modifyList(x=list(A=1), val=list(B=2, C=3))
> $A
> [1] 1
>
> $B
> [1] 2
>
> $C
> [1] 3
>
>> modifyList(x=list(A=1), val=list(B=NULL, C=3))
> $A
> [1] 1
>
> $C
> [1] 3
>
> To me this seems inconsistent with the documentation ("Elements in 'val' which are missing from 'x' are added to 'x'."),
Agreed.
> and also with how I'd want the function to behave.
Note that you still get
> foo <- modifyList(x=list(A=1), val=list(B=NULL, C=3))
> foo$B
NULL
So is there a specific reason you want the NULL elements to be
explicitly listed?
-Deepayan
>
>> sessionInfo()
> R version 3.0.1 Patched (2013-06-16 r62969)
> Platform: x86_64-w64-mingw32/x64 (64-bit)
>
> locale:
> [1] LC_COLLATE=English_United States.1252
> [2] LC_CTYPE=English_United States.1252
> [3] LC_MONETARY=English_United States.1252
> [4] LC_NUMERIC=C
> [5] LC_TIME=English_United States.1252
>
> attached base packages:
> [1] stats graphics grDevices utils datasets methods base
>
>
> Richard Raubertas
> Merck & Co.