从R中的数据帧创建所有数据集组合

从R中的数据帧创建所有数据集组合,r,R,我需要帮助开发一个代码,从R中的数据帧创建所有数据集组合 例如。 数据帧= | A B C | | 1 4 7 | | 2 5 8 | | 3 6 9 | 数据集组合:A、B、C、AB、AC、BC、ABC 数据1= | A | | 1 | | 2 | | 3 | 数据2= | B | | 4 | | 5 | | 6 | 数据3= | C |

我需要帮助开发一个代码,从R中的数据帧创建所有数据集组合

例如。 数据帧=

        | A  B  C |
        | 1  4  7 |
        | 2  5  8 |
        | 3  6  9 |
数据集组合:A、B、C、AB、AC、BC、ABC

数据1=

    | A |
    | 1 |
    | 2 |
    | 3 |
数据2=

    | B |
    | 4 |
    | 5 |
    | 6 |
数据3=

    | C |
    | 7 |
    | 8 |
    | 9 |
数据4=

    | A  B | 
    | 1  4 |
    | 2  5 |
    | 3  6 |
数据5=

    | A  C |
    | 1  7 |
    | 2  8 |
    | 3  9 |
数据6=

    | B  C |
    | 4  7 |
    | 5  8 |
    | 6  9 |
数据7=| A

    | A  B  C |
    | 1  4  7 |
    | 2  5  8 |
    | 3  6  9 |

问候。

这里有一个使用
lappy
combn
的解决方案(以获得可变名称组合)

数据

df <- data.frame(matrix(1:9, 3))
names(df) <- LETTERS[1:3]

df这在数学中称为幂集。这是一本书。为了使您的示例能够实现这一点,请使用结果集在循环或
lappy
中选择数据帧的子集。
 myList
[[1]]
  A
1 1
2 2
3 3

[[2]]
  B
1 4
2 5
3 6
...

[[6]]
  B C
1 4 7
2 5 8
3 6 9

[[7]]
  A B C
1 1 4 7
2 2 5 8
3 3 6 9
df <- data.frame(matrix(1:9, 3))
names(df) <- LETTERS[1:3]