製品
製品の一覧
Mathematica
Mathematica
学生エディション
Mathematica
ホームエディション
Wolfram
CDF Player
(無料ダウンロード)
CDF(計算可能ドキュメント形式)
web
Mathematica
grid
Mathematica
Wolfram
Workbench
Wolfram
SystemModeler
Wolfram
Finance Platform
Mathematica
アドオン
Wolfram|Alpha関連製品
ソリューション
ソリューションの一覧
工学
航空宇宙工学と防衛
化学工学
制御系
電気工学
画像処理
生産工学
材料科学
機械工学
オペレーションズリサーチ
光学
石油工学
バイオテクノロジーと医学
バイオインフォマティクス
医用画像処理
金融,統計,ビジネスの分析
保険数理
データの解析とマイニング
計量経済学
経済学
金融工学と数学
財務リスク管理
統計
ソフトウェア工学とコンテンツ配信
オーサリングと出版
インターフェース開発
ソフトウェア工学
Web開発
科学
天文学
バイオサイエンス
化学
環境科学
地球科学
社会・行動科学
デザイン,芸術,娯楽
ゲームデザイン・特殊効果・ジェネレーティブアート
教育
高等教育
短大・専門学校
初等・中等教育
学生
テクノロジー
CDF(計算可能ドキュメント形式)
高性能並列計算(HPC)
参照:テクノロジーガイド
ご購入
オンラインストア
他の購入方法
Volumeライセンスとサイトライセンス
販売部へのご連絡
ソフトウェア
サービス
アップグレード
トレーニング
書籍
Wolframグッズ
サポート
テクニカルサポートページ
Mathematica
ドキュメント
知識ベース
ラーニングセンター
テクニカルサービス
コミュニティ & フォーラム
トレーニング
サイトライセンスの確認
Wolframユーザポータル
会社概要
会社概要
ニュース
イベント
Wolframブログ
パートナーシップ
採用情報
Mathematica
の歴史
Stephen Wolframのホームページ
連絡先
Wolfram Webサイト
サイトの一覧
Wolfram|Alpha
デモンストレーションプロジェクト
MathWorld
Integrator
Wolfram Functions Site
Mathematica Journal
Wolfram Media
Wolfram
Tones
Wolfram Science
Stephen Wolfram
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE
DOCUMENTATION CENTER
FOR THE LATEST INFORMATION.
DOCUMENTATION CENTER SEARCH
New to
Mathematica
?
Find your learning path
»
Mathematica
>
数学とアルゴリズム
>
行列と線形代数
>
疎な(スパース)配列
>
SparseArray
>
Mathematica
>
数学とアルゴリズム
>
グラフとネットワーク
>
グラフの構築
>
グラフと行列
>
疎な(スパース)配列
>
SparseArray
>
Mathematica
>
数学とアルゴリズム
>
グラフとネットワーク
>
グラフプログラミング
>
行列と線形代数
>
疎な(スパース)配列
>
SparseArray
>
MATHEMATICA 組込みシンボル
リストの構築
疎な(スパース)配列:リスト操作
疎な(スパース)配列:線形代数
チュートリアル »
|
ArrayRules
Normal
Band
CoefficientArrays
ArrayPlot
Array
ConstantArray
関連項目 »
|
リストの構築
行列の構成
グラフと行列
データの配列の操作
線形・非線形フィルタ
リスト操作
行列と線形代数
ベクトル操作
疎な(スパース)配列
構造化行列とたたみ込みカーネル
テンソル
その他 »
SparseArray
SparseArray
値
が
の位置に現れる疎な配列を与える.
SparseArray
同じ疎な配列を与える.
SparseArray
[
list
]
list
の疎な配列版を与える.
SparseArray
配列を表す疎な配列を与える.
SparseArray
指定されていない要素は値
val
を持つと解釈される疎な配列を与える.
詳細
SparseArray
は,指定されていない要素はデフォルトで
であると解釈する.
SparseArray
は
SparseArray
[
Automatic
,
dims
,
val
,
...
]
という構造の最適化された標準形に常に変換される.
Normal
は疎な配列オブジェクトに対応する一般的な配列を与える.
ArrayRules
は規則のリスト
を与える.
SparseArray
の要素は数値である必要はない.
位置指定
はパターンを含むことができる.
SparseArray
は
d
×
d
の単位行列を与える.
Band
[
...
]->
vals
という形の規則で,疎配列内の帯の値を指定する.
規則
により,
は
と一致する指標の各集合について別々に評価される.
SparseArray
[
list
]
は,
が特定のレベルのすべての部分が同じ長さのリストである完全な配列であることを要求する.
疎な配列の個々の要素自体はリストであってはならない.
SparseArray
[
rules
]
は位置が明示的に指定されている要素を含むのにちょうど適した次元の疎な配列を与える.
SparseArray
[
rules
,
Automatic
,
val
]
は指定されていない要素が値
val
を持つと解釈する.
リストと行列の操作は
Normal
で行われるのと同じように行われるように設定される.
属性
Listable
を持つ関数は
SparseArray
オブジェクトで表される一般的な配列の個々の要素に自動的に縫い込まれる.
Part
は
SparseArray
式それ自身の部分ではなく,
SparseArray
オブジェクトで表される配列の指定された部分を抽出する.
Map
のような関数は
SparseArray
オブジェクトの構成要素に自動的に適用される.
SparseArray
は
AtomQ
のような関数にパターンマッチのために未加工のオブジェクトとして扱われる.
Dimensions
は疎な配列の次元を与える.
疎な配列の標準的な出力形式は,非標準的な要素数と総次数を示す.
例題
すべて閉じる
例
(1)
2,3の指定した位置にしか値を持たない疎行列を構築する:
これを行列として見る:
これを一般的な密行列に変換する:
2,3の指定した位置にしか値を持たない疎行列を構築する:
In[1]:=
Out[1]=
これを行列として見る:
In[2]:=
Out[2]//MatrixForm=
これを一般的な密行列に変換する:
In[3]:=
Out[3]=
スコープ
(7)
大きな疎ベクトル,行列,深さ3の配列を作る:
指標にパターンを使った3重対角行列を作る:
10,000 x 10,000 バージョンを作る:
疎対角行列を作る:
これは
DiagonalMatrix
に等しい:
疎行列であることを除き,メモリの消費量は,はるかに少ない:
Band
の規則を用いてブロック対角行列を作る:
通常の行列を疎行列に変換する:
ランダムな位置の値を持つ四階の疎なテンソルを作る:
ArrayRules
は
SparseArray
を指定するのに必要最低限の規則のリストを作る:
多くの一般的な演算では,
SparseArray
オブジェクトはそれと同等のリストと同じように扱われる:
算術は,リストに対するのと同じように要素単位で行われる:
行列の積は
Dot
で計算される:
多くの線形代数関数は,疎な形でも効果的に使える:
その他の多くのリストコマンドも自動的に適用される:
一般化と拡張
(2)
指定されていない要素は任意の値を持つことができる:
記号的な値を局所的な定義で置換することができる:
すべて機械数の値で疎行列を構築する:
厳密な整数値で疎な行列を構築する:
N
[
s
]
は
に等しい:
アプリケーション
(4)
非零要素が1つのリストを作る:
規則のリストをプロットする:
隣接行列でネットワークを表す:
有限差分を使って境界値問題
を解く:
特性と関係
(3)
SparseArray
オブジェクトは対応する一般的なリストに等しい(
Equal
):
式の構造が異なるので,これらは
SameQ
ではない:
SparseArray
オブジェクトと使われる関数
f
については,一般に
f
[
s
]==
f
[
Normal
[
s
]]
である:
これは,属性が
Listable
のすべての関数を含む:
CoefficientArrays
を使って線形の式を
SparseArray
オブジェクトに変換する:
Dot
を使って
SparseArray
から式に変換する:
考えられる問題
(6)
SparseArray
の規則のリストである位置が繰り返される場合は, 最初のものが使われる:
SparseArray
オブジェクトは,一般の形式では表現できないほど大きいデータでも表すことができる:
Normal
を使うと
が返される:
疎な操作は,デフォルトで,約分は計算しない:
SparseArray
を使って疎な構造を再計算する:
副次的な影響のある操作を
SparseArray
に繰り返し使うと異なる結果が返されることがある:
Reap
と
Sow
を使ってどの要素がアクセスされているかを見ることができる:
SparseArray
オブジェクトについて,
Part
は表されたリストの部分を返す:
FullForm
は基本的な保存情報からオブジェクトを再構成する方法である:
必要ではないが,望むなら,パターンを持つ完全形の部分を得ることができる:
表現に作用しない関数については,
SparseArray
オブジェクトは原子的なものとして扱われる:
表示された行列には
Cases
は使えない:
ArrayRules
の結果を使って展開せずに情報を得られることがよくある:
おもしろい例題
(1)
人生ゲーム:
関連項目
ArrayRules
Normal
Band
CoefficientArrays
ArrayPlot
Array
ConstantArray
チュートリアル
リストの構築
疎な(スパース)配列:リスト操作
疎な(スパース)配列:線形代数
その他
リストの構築
行列の構成
グラフと行列
データの配列の操作
線形・非線形フィルタ
リスト操作
行列と線形代数
ベクトル操作
疎な(スパース)配列
構造化行列とたたみ込みカーネル
テンソル
関連リンク
実装に関するノート: 数値および関連関数
バージョン 5 の新機能 | バージョン 6 での修正機能