combn
位於 utils
包(package)。 說明
一次生成x
中采用m
的元素的所有組合。如果x
是正整數,則返回一次采用m
的seq(x)
元素的所有組合。如果參數 FUN
不是 NULL
,則將參數給定的函數應用於每個點。如果 simple 為 FALSE,則返回一個列表;否則返回 array
,通常是 matrix
。如果指定,...
將原封不動地傳遞給 FUN
函數。
用法
combn(x, m, FUN = NULL, simplify = TRUE, ...)
參數
x |
組合的向量源,或 |
m |
可供選擇的元素數量。 |
FUN |
應用於每個組合的函數;默認 |
simplify |
邏輯指示結果是否應簡化為 |
... |
可選地, |
細節
接受因子x
。
值
list
或 array
,請參閱上麵的 simplify
參數。在後一種情況下,身份 dim(combn(n, m)) == c(m, choose(n, m))
成立。
例子
combn(letters[1:4], 2)
(m <- combn(10, 5, min)) # minimum value in each combination
mm <- combn(15, 6, function(x) matrix(x, 2, 3))
stopifnot(round(choose(10, 5)) == length(m), is.array(m), # 1-dimensional
c(2,3, round(choose(15, 6))) == dim(mm))
## Different way of encoding points:
combn(c(1,1,1,1,2,2,2,3,3,4), 3, tabulate, nbins = 4)
## Compute support points and (scaled) probabilities for a
## Multivariate-Hypergeometric(n = 3, N = c(4,3,2,1)) p.f.:
# table.mat(t(combn(c(1,1,1,1,2,2,2,3,3,4), 3, tabulate, nbins = 4)))
## Assuring the identity
for(n in 1:7)
for(m in 0:n) stopifnot(is.array(cc <- combn(n, m)),
dim(cc) == c(m, choose(n, m)),
identical(cc, combn(n, m, identity)) || m == 1)
作者
Scott Chasalow wrote the original in 1994 for S;
R package combinat
and documentation by Vince Carey
stvjc@channing.harvard.edu;
small changes by the R core team, notably to return an array in all
cases of simplify = TRUE
, e.g., for combn(5,5)
.
參考
Nijenhuis, A. and Wilf, H.S. (1978) Combinatorial Algorithms for Computers and Calculators; Academic Press, NY.
也可以看看
choose
用於快速計算組合數量。 expand.grid
用於根據因子或向量的所有組合創建 DataFrame 。
相關用法
- R compareVersion 比較兩個包版本號
- R count.fields 計算每行的字段數
- R contrib.url 在類似 CRAN 的存儲庫中查找適當的路徑
- R create.post 準備電子郵件和帖子的輔助函數
- R cite 引用參考書目條目
- R citation 在出版物中引用 R 和 R 包
- R citEntry 參考書目條目(舊接口)
- R clipboard 在 MS Windows 中從剪貼板讀取/寫入
- R chooseBioCmirror 選擇 Bioconductor 鏡像
- R changedFiles 檢測哪些文件已更改
- R chooseCRANmirror 選擇 CRAN 鏡像
- R choose.dir 在 MS Windows 上交互式選擇文件夾
- R charClass 人物分類
- R close.socket 關閉套接字
- R choose.files 在 MS Windows 上交互式選擇文件列表
- R capture.output 將輸出發送到字符串或文件
- R select.list 從列表中選擇項目
- R COMPILE 編譯用於 R 的文件
- R readRegistry 讀取 Windows 注冊表配置單元
- R browseVignettes 在 HTML 瀏覽器中列出暈影
- R hasName 檢查姓名
- R nsl 按主機名查找 IP 地址
- R edit 調用文本編輯器
- R hsearch-utils 幫助搜索實用程序
- R download.packages 從類似 CRAN 的存儲庫下載軟件包
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Generate All Combinations of n Elements, Taken m at a Time。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。