私は3D配列を扱っています。関数は、行と列の名前(配列の対応する淡色の名前)を使用して、ユーザーから2D配列のスライス(行列)を取り出し、可視化します。Rで行列として1x1の配列スライスを抽出する方法は?
a <- array(1, c(1,1,1), list(A="a", B="b", C="c"))
a[1,,]
[1] 1
それ故に、一部のないdimnamesとスカラーである:配列の次元は、私は1x1x1の配列を持っている場合しかし、私はマトリックスとしてスライスを抽出することができない> 1
いる場合は正常に動作し必要な情報が欠落しています。私はdrop=FALSE
を追加する場合、私は行列を取得するが、元の配列を保持しません。
a[1,,,drop=FALSE]
, , C = c
B
A b
a 1
dimnamesはここにあるが、それでも3次元です。ちょうど三次元ずに、上記のようになります1x1x1配列から行列スライスを取得する簡単な方法はあります:
B
A b
a 1
私は問題は、配列のインデックスを作成する際に、我々は「取る区別できないということである疑いがあります1つの値」と 『すべてはただシングルトンである』場合に「すべての値を取る...
おっと、これをdownvoted?それは良い答えです! – thelatemail
これはまさに私が探していたものです:-) –
@thelatemailそれは最後の二日間私のために3番目の奇妙なものです。私は、誰かがシリアルdownvoteスクリプトを気づかせないようにしていると思います。理由は考えられません。私はほとんど一週間離れていました。 – alistaire