假設我有三個詞:"blue"
,"red"
和"pink"
。來自遞歸列表的組合
我希望生成所有字母組合,其中我從「藍色」中取出兩個字母,然後將兩個字母添加到「紅色」之外,然後添加到兩個字母之外的「粉紅色」。
blrdpk
uerdin
等等
在R,I,通過分配每個字的字符到使用列表元素編碼我三個字
words <- list(list("b","l","u","e"), list("r","e","d"), list("p","i","n","k"))
我知道我可以使用lapply
和combn(words[[i]],m=2)
來獲得2個lett的所有組合從每個單詞中刪除。
我有兩個問題:
有combn的更高級版本(),它可以讓你選擇,並從不同的「水桶」用遞歸列表給出的串聯組合?
如果沒有combn()的高級版本,從三個單詞中的每個單詞連接每個單獨的2個字母組合的最佳方式是什麼?
如果我想從每個單詞中獲取不同數量的字母,是否有簡單的方法? [添加自用戶評論的其中一個答案]
是否字母順序重要嗎? – 2013-02-26 01:20:56
這些字母的順序無關緊要。 – Alex 2013-02-26 01:22:13
此外,我只是閱讀,並回答問題2,我可能只需使用expand.grid() – Alex 2013-02-26 01:22:29