マトリックスで
0 1 0 0
1 0 1 0
1 1 0 0
0 0 0 0
4列目と4行目を剥がして形を整えたい
0 1 0
1 0 1
1 1 0
これを行うための賢明な方法は何ですか?
次のような行列が与えられます。
A←0 1 1 0 1⍀1 0 0 1 1\3 3⍴⍳9
それは次のとおりです。
0 0 0 0 0
1 0 0 2 3
4 0 0 5 6
0 0 0 0 0
7 0 0 8 9
空の行と列は次の方法で削除できます。
(0∨.≠B)/B←(A∨.≠0)⌿A
出力:
1 2 3
4 5 6
7 8 9
外側のみをトリミングします。
先頭と末尾の列をトリムします。
(∨\0∨.≠B)/B←(⌽∨\⌽0∨.≠A)/A
先頭行と末尾行をトリムします。
(-2↑+/^\⌽B^.=0)↓B←(∨\A∨.≠0)⌿A
すべて一緒に:
(-2↑+/^\⌽D^.=0)↓D←(∨\C∨.≠0)⌿C←(∨\0∨.≠B)/B←(⌽∨\⌽0∨.≠A)/A