看板 MATLAB 關於我們 聯絡資訊
有爬文看到很類似的問題,但是還是有些不懂的,想請教各位 假設有A, B, C, 三組數據, 分別是 A=[1 2] B=[3 4] C=[5 6] 我希望能排列出所有從A B C各選出來一個的方式(照A B C順序) 也就是說我希望輸出是 1 3 5 1 3 6 1 4 5 1 4 6 2 3 5 2 3 6 2 4 5 2 4 6 爬文有看到說用ndgrid, 但是跳出來好像是一個3維的矩陣, 而且內容都是0或1 現在的問題是數據的組數不固定(也許會出現到F或G),每一組數據也不一定只有2個數 請問應該要如何寫? 謝謝!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.37.245.61
Gwaewluin:你可以先看看meshgrid的用法,ndgrid是meshgrid的延伸 11/17 01:00
Gwaewluin:拿來做排列組合是一種從兩者運作原理衍生出來的用法 11/17 01:00
DigiPrince:有查到 ndgrid 這個關鍵字基本上就沒問題啦! 11/17 02:04
DigiPrince:你需要的只是讀懂它的 Help 11/17 02:05
jmren:google matlab cartprod 11/17 07:19
zergcho:j大的ndgrid跟D大的cartprod(雖然抓不下來)我試過了, 11/17 09:52
zergcho:ndgrid我已經用成功了,但是前提是要知到數據有多少組,如果 11/17 09:53
zergcho:在數據組數不能確定的情況下,有通式的方法可以輸入input嗎 11/17 09:54
Raymond0710:用linspace吧 11/17 13:56
jmren:google matlab Cartesian Product, then simply change the 11/17 15:58
jmren:format of input argument as a cell variable 11/17 15:59
DigiPrince:其實我之前文章有寫過類似的欸,ndgrid 兩行就結束了。 11/17 16:10
Gwaewluin:數據組數不定我有用ndgrid寫過就是,但那要使用到字串生 11/17 21:22
Gwaewluin:成搭配eval,比較複雜一點點 11/17 21:22