Unique combination of all elements from two (or more) vectors

后端 未结 5 1676
面向向阳花
面向向阳花 2020-11-22 03:07

I am trying to create a unique combination of all elements from two vectors of different size in R.

For example, the first vector is

a <- c(\"ABC\         


        
5条回答
  •  时光说笑
    2020-11-22 03:27

    this maybe what you are after

    > expand.grid(a,b)
       Var1       Var2
    1   ABC 2012-05-01
    2   DEF 2012-05-01
    3   GHI 2012-05-01
    4   ABC 2012-05-02
    5   DEF 2012-05-02
    6   GHI 2012-05-02
    7   ABC 2012-05-03
    8   DEF 2012-05-03
    9   GHI 2012-05-03
    10  ABC 2012-05-04
    11  DEF 2012-05-04
    12  GHI 2012-05-04
    13  ABC 2012-05-05
    14  DEF 2012-05-05
    15  GHI 2012-05-05
    

    If the resulting order isn't what you want, you can sort afterwards. If you name the arguments to expand.grid, they will become column names:

    df = expand.grid(a = a, b = b)
    df[order(df$a), ]
    

    And expand.grid generalizes to any number of input columns.

提交回复
热议问题