[R] Is there a hash data structure for R

Andrew Simmons @kw@|mmo @end|ng |rom gm@||@com
Tue Nov 2 16:52:12 CET 2021


If you're thinking about using environments, I would suggest you initialize
them like


x <- new.env(parent = emptyenv())


Since environments have parent environments, it means that requesting a
value from that environment can actually return the value stored in a
parent environment (this isn't an issue for [[ or $, this is exclusively an
issue with assign, get, and exists)
Or, if you've already got your values stored in a list that you want to
turn into an environment:


x <- list2env(listOfValues, parent = emptyenv())


Hope this helps!


On Tue, Nov 2, 2021, 06:49 Yonghua Peng <yong using pobox.com> wrote:

> But for data.frame the colnames can be duplicated. Am I right?
>
> Regards.
>
> On Tue, Nov 2, 2021 at 6:29 PM Jan van der Laan <rhelp using eoos.dds.nl> wrote:
>
> >
> > True, but in a lot of cases where a python user might use a dict an R
> > user will probably use a list; or when we are talking about arrays of
> > dicts in python, the R solution will probably be a data.frame (with each
> > dict field in a separate column).
> >
> > Jan
> >
> >
> >
> >
> > On 02-11-2021 11:18, Eric Berger wrote:
> > > One choice is
> > > new.env(hash=TRUE)
> > > in the base package
> > >
> > >
> > >
> > > On Tue, Nov 2, 2021 at 11:48 AM Yonghua Peng <yong using pobox.com> wrote:
> > >
> > >> I know this is a newbie question. But how do I implement the hash
> > structure
> > >> which is available in other languages (in python it's dict)?
> > >>
> > >> I know there is the list, but list's names can be duplicated here.
> > >>
> > >>> x <- list(x=1:5,y=month.name,x=3:7)
> > >>
> > >>> x
> > >>
> > >> $x
> > >>
> > >> [1] 1 2 3 4 5
> > >>
> > >>
> > >> $y
> > >>
> > >>   [1] "January"   "February"  "March"     "April"     "May"
>  "June"
> > >>
> > >>   [7] "July"      "August"    "September" "October"   "November"
> > "December"
> > >>
> > >>
> > >> $x
> > >>
> > >> [1] 3 4 5 6 7
> > >>
> > >>
> > >>
> > >> Thanks a lot.
> > >>
> > >>          [[alternative HTML version deleted]]
> > >>
> > >> ______________________________________________
> > >> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > >> https://stat.ethz.ch/mailman/listinfo/r-help
> > >> PLEASE do read the posting guide
> > >> http://www.R-project.org/posting-guide.html
> > >> and provide commented, minimal, self-contained, reproducible code.
> > >>
> > >
> > >       [[alternative HTML version deleted]]
> > >
> > > ______________________________________________
> > > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > > https://stat.ethz.ch/mailman/listinfo/r-help
> > > PLEASE do read the posting guide
> > http://www.R-project.org/posting-guide.html
> > > and provide commented, minimal, self-contained, reproducible code.
> > >
> >
> > ______________________________________________
> > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide
> > http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
> >
>
>         [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]



More information about the R-help mailing list