2012-04-18 55 views
1

我有兩個列表-的,列出了可以概略地總結了這一點:在Mathematica中組合數組?

a = {{1}, {2}, {3}}; 
b = {{4}, {5}, {6}}; 

我想他們在同一水平結合成列表的一個列表,每一個元素,翼:

{{1}, {2}, {3}, {4}, {5}, {6}} 

除了我不能爲我的生活做到這一點。最明顯的是這樣的:

In[537]:= Append[a, b] 
Out[537]= {{1}, {2}, {3}, {{4}, {5}, {6}}} 

這不是我想要的。 Append文檔似乎沒有涉及這樣的情況,並且我無法獲得大量的Appending和Flattening工作。我想我可以寫一個for循環,並且不斷添加到一個空列表中,但好神是那麼笨拙。必須有一個優雅的方式來做到這一點?

+0

考慮在http://mathematica.stackexchange.com上交叉發佈Mathematica相關問題,該問題當前是Mathematica相關討論和問題的地方 – 2012-04-18 21:22:12

+1

感謝您的提示 - 我甚至沒有意識到有一個Mathematica SE站點。 – shanusmagnus 2012-04-18 22:24:09

+0

它仍處於測試階段,但大部分Mathematica常客實際上並沒有在這裏再次查看這些問題。 – rcollyer 2012-04-19 02:46:50

回答

4

更改您的代碼從:

In[537]:= Append[a, b] 

到:

In[537]:= Join[a, b] 
1

這不是(最優的是PinnyM提及)的最佳方式,但你可以考慮

Flatten[Append[a,b]] 

或簡單地

Append[a,b]//Flatten 

它給出了相同的結果。

+2

或者,不使用'Flatten':##&@@@ {a,b} – tomd 2012-04-20 10:49:16