2016-08-21 19 views
2

を考えてみて動作します:見せかけ矛盾は|:

|: 2 3 $ 1 2 3 
1 1 
2 2 
3 3 
    |: 1 2 3 
1 2 3 

最初のものは私には理にかなって:行は今列です。しかし、類推すると、私は2番目の出力が次のようになることを期待しました:

|: 1 2 3 
1 
2 
3 

なぜ列ではなくまだ行ですか?

答えて

3

|:

で、その引数

ので

$ |: 2 3 $ 1 2 3 
3 2 
$ |: 1 2 3 $ 1 2 3 
3 2 1 

と自然

$ |: 1 2 3 
3 

の軸の順序を逆にリスト1 2 3

結果には軸があります3 1;あなたがリストの転置1 3 $ 1 2 3

] l =: 1 3 $ 1 2 3 
1 2 3 
|: l 
1 
2 
3 
    ($ l);($ |: l) 
┌───┬───┐ 
│1 3│3 1│ 
└───┴───┘ 
+3

ああ、このになるだろう、そう3つの項目のリストは、項目の1 3によってテーブルと同じであるという間違った仮定は私の問題でしたか? – Jonah

+2

それを考える方法の1つは、配列にはいくつかの次元があり、転置は何も追加しないということです。 '1 2 3'は1次元で、あなたは次元を加えるためにtransposeを期待していました。 – Dane