Yes. A data.frame is basically a list where all elements are vectors of the same length. So this issue also exists in a data.frame. However, the data.frame construction method will detect this and generate unique names (which also might not be what you want):

> data.frame(a=1:3, a=1:3)




a a.1



1 1 1



2 2 2




                                                          3 3   3

But still with a little effort you can still create a data.frame with multiple columns with the same name. But as Duncan Murdoch mentions you can usually control for that.


Best,
Jan




On 02-11-2021 11:32, Yonghua Peng 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 <rh...@eoos.dds.nl <mailto:rh...@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 <y...@pobox.com
    <mailto:y...@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 <http://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@r-project.org <mailto:R-help@r-project.org> mailing list
    -- To UNSUBSCRIBE and more, see
     >> https://stat.ethz.ch/mailman/listinfo/r-help
    <https://stat.ethz.ch/mailman/listinfo/r-help>
     >> PLEASE do read the posting guide
     >> http://www.R-project.org/posting-guide.html
    <http://www.R-project.org/posting-guide.html>
     >> and provide commented, minimal, self-contained, reproducible code.
     >>
     >
     >       [[alternative HTML version deleted]]
     >
     > ______________________________________________
     > R-help@r-project.org <mailto:R-help@r-project.org> mailing list
    -- To UNSUBSCRIBE and more, see
     > https://stat.ethz.ch/mailman/listinfo/r-help
    <https://stat.ethz.ch/mailman/listinfo/r-help>
     > PLEASE do read the posting guide
    http://www.R-project.org/posting-guide.html
    <http://www.R-project.org/posting-guide.html>
     > and provide commented, minimal, self-contained, reproducible code.
     >

    ______________________________________________
    R-help@r-project.org <mailto:R-help@r-project.org> mailing list --
    To UNSUBSCRIBE and more, see
    https://stat.ethz.ch/mailman/listinfo/r-help
    <https://stat.ethz.ch/mailman/listinfo/r-help>
    PLEASE do read the posting guide
    http://www.R-project.org/posting-guide.html
    <http://www.R-project.org/posting-guide.html>
    and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@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.

Reply via email to