r - R- 子集或打印 5x14 数据帧中所有可能的列对
问题描述
我有一个包含 14 列和 5 行(没有标题和行名)的 R 数据框,我想提取所有可能的列对,如果可能的话是唯一的。
例如,我的输入数据框:
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13 C14
A 1 1 1 0 1 0 1 0 0 1 0 1 0 0
B 0 1 0 0 1 0 0 1 1 0 1 1 0 0
C 1 0 1 1 1 0 0 0 0 1 1 1 1 1
D 1 1 1 1 1 1 1 0 0 0 1 1 0 0
E 1 0 0 1 0 1 1 1 0 1 1 1 1 1
我想获得所有可能的 91 对独特的配对,例如:
C1 C2
A 1 1
B 0 1
C 1 0
D 1 1
E 1 0
C1 C3
A 1 1
B 0 0
C 1 1
D 1 1
E 1 0
依此类推,如果可能的话,在不同的数据帧中
谢谢!
解决方案
我们可以combn
用来做成对组合
out <- combn(df1, 2, simplify = FALSE)
-输出
> length(out)
[1] 91
> out[[1]]
C1 C2
A 1 1
B 0 1
C 1 0
D 1 1
E 1 0
数据
df1 <- structure(list(C1 = c(1L, 0L, 1L, 1L, 1L), C2 = c(1L, 1L, 0L,
1L, 0L), C3 = c(1L, 0L, 1L, 1L, 0L), C4 = c(0L, 0L, 1L, 1L, 1L
), C5 = c(1L, 1L, 1L, 1L, 0L), C6 = c(0L, 0L, 0L, 1L, 1L), C7 = c(1L,
0L, 0L, 1L, 1L), C8 = c(0L, 1L, 0L, 0L, 1L), C9 = c(0L, 1L, 0L,
0L, 0L), C10 = c(1L, 0L, 1L, 0L, 1L), C11 = c(0L, 1L, 1L, 1L,
1L), C12 = c(1L, 1L, 1L, 1L, 1L), C13 = c(0L, 0L, 1L, 0L, 1L),
C14 = c(0L, 0L, 1L, 0L, 1L)), class = "data.frame", row.names = c("A",
"B", "C", "D", "E"))
推荐阅读
- c++ - 未加载纹理
- javascript - 如何与所有 reducer 共享一部分 Redux 存储?
- autocomplete - Orbeon 自动完成 - 最初隐藏和只读时无法正常工作
- r - 在 Shiny 应用程序中使用 reactiveFileReader 在更改为基础 CSV 时更新数据框
- c - 使用 gotoxy() 函数使 X 坐标居中
- app-inventor - App Inventor 应用程序不会在部门中获取答案
- html - 在页面的第二个刮掉 TD
- json - 将 JSON 文件作为一行复制到 PostgreSQL 中的表中的问题
- javascript - 使用 gif-encoder 和 dom-to-image 库将 DOM 节点导出到 GIF
- configuration - NativeScript、代码共享和不同的环境