NumericArray

NumericArray[array,type]

指定の type の数値配列を作成する.

NumericArray[array,type,method]

method を使って数値を type に変換する.

詳細とオプション

  • NumericArrayは,使用メモリを減らし実行速度を向上させるために,array の最もコンパクトな表現を与える.
  • 入力 array は,機械サイズの整数と機械サイズの近似実数および複素数を含む,任意の深さの完全なリストでよい.
  • 次は,type の可能な設定である.
  • "Integer8"符号付き8ビット整数(から127まで)
    "UnsignedInteger8"0から255までの整数
    "Integer16"符号付き16ビット整数(からまで)
    "UnsignedInteger16"0から65535までの整数
    "Integer32"符号付き32ビット整数(からまで)
    "UnsignedInteger32"0からまでの整数
    "Integer64"符号付き64ビット整数(からまで)
    "UnsignedInteger64"0からまでの整数
    "Real32"単精度実数(32ビット)
    "Real64"倍精度実数(64ビット)
    "ComplexReal32"単精度複素数
    "ComplexReal64"倍精度複素数
  • NumericArray[array,type]は,type でサポートされる範囲に値を切り取り,必要であれば実数を整数に丸める.
  • 他の変換 method 設定には以下がある.
  • "Check"値が type と互換かどうかチェックする
    "Coerce"強制的に type にする
    "Round"実数を整数に丸める
    "ClipAndCheck"範囲に収まるように切り取り,互換 type をチェックする
    "ClipAndCoerce"範囲に収まるように切り取り,強制的に type にする
    "ClipAndRound"範囲に収まるように切り取り,実数を整数に丸める(デフォルト)
  • 複素数については,実部と虚部に別々にメソッドが適用される.
  • NumericArrayは,AtomQのような関数によって,あるいパターンマッチングの目的では,生のオブジェクトとして扱われる.
  • Normal[NumericArray[]]は,数値配列の値のリストを返す.
  • LengthEqualFirst等の関数はNumericArrayオブジェクトに使うことができる.
  • PartTakeDrop等の関数は,NumericArrayオブジェクトの一部を取り出したり削除したりするのに使うことができる.
  • ListPlotArrayPlotBarChart等の関数はNumericArrayオブジェクトの可視化に使える.

例題

すべて開くすべて閉じる

  (2)

バイトサイズ整数のベクトルを作る:

実数行列を数値配列に変換する:

標準的なリストに変換し直す:

スコープ  (20)

基本的な用法  (6)

特定の型を使ってリストから数値配列を作る:

変換メソッドを指定して数を希望の型にフィットする:

2D数値配列を作る:

ByteArrayNumericArrayに変換する:

SparseArrayNumericArrayに変換する:

SymmetrizedArrayNumericArrayに変換する:

NumericArrayの型  (3)

整数  (1)

8ビット符号なし整数の数値配列を作る:

大きい整数については,より大きい整数型を使う:

大きい値を切り取って小さい整数型にする:

実数は整数型に変換するときに丸めることができる:

実数  (1)

32ビット実数型数値配列を作る:

厳密数を強制的に実数にする:

複素数  (1)

複素数の数値配列を作る:

複素数の厳密な実部と虚部を強制的に実数にする:

NumericArrayオブジェクト間の変換  (2)

"Integer8"配列を "Real32"に変換する:

数が新たな型では表せない場合は,変換メソッドを指定する:

NumericArrayの操作  (9)

配列の特性  (3)

数値配列のByteCount

Dimensions

ArrayDepth

構造操作  (6)

数値配列を平坦化する:

Normalは数値配列をListに変換する:

数値配列オブジェクトにJoinを適用する:

Partを使って数値配列の一部を取り出す:

Takeを使って数値配列の一部を取り出す:

数値配列の要素にDropを適用する:

特性と関係  (2)

NumericArrayのバイト数はランダムな整数の同等のリストよりも小さい:

NormalNumericArrayを通常の式に変換できる:

考えられる問題  (2)

変換メソッドの中には新たな型に適した数を与えないものがある:

新たな型がサポートする数を与える変換を使う:

入力配列に指定の型以外の数が含まれている場合は,デフォルトの変換メソッドではうまくいかない.

"Integer8"数値配列に保存しようとしてみる:

"ClipAndCoerce"メソッドを使って自動的に最小の"Integer8"にする:

Wolfram Research (2019), NumericArray, Wolfram言語関数, https://reference.wolfram.com/language/ref/NumericArray.html.

テキスト

Wolfram Research (2019), NumericArray, Wolfram言語関数, https://reference.wolfram.com/language/ref/NumericArray.html.

CMS

Wolfram Language. 2019. "NumericArray." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/NumericArray.html.

APA

Wolfram Language. (2019). NumericArray. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NumericArray.html

BibTeX

@misc{reference.wolfram_2024_numericarray, author="Wolfram Research", title="{NumericArray}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/NumericArray.html}", note=[Accessed: 05-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_numericarray, organization={Wolfram Research}, title={NumericArray}, year={2019}, url={https://reference.wolfram.com/language/ref/NumericArray.html}, note=[Accessed: 05-November-2024 ]}