Scan
Scan[f,expr]
f を expr の要素それぞれに順に適用させて評価する.
Scan[f,expr,levelspec]
levelspec によって指定される expr の部分に f を適用する.
詳細とオプション
- Scan[f,expr]は,expr の部分式に f を 適用した結果を無視する.Mapとは異なり,Scanは返すために新しい式を構築することはない.
- Returnを使ってScanから脱出することができる.Return[ret]は,Scanの最終的な値を ret にする.戻り値が明示されていない場合,Scanが与える最終的な結果は,Nullである.
- Throwを使ってScanから脱出できる. »
- Scanは,割当てのような副次作用を持つ演算を式の部分に行うときに便利である.
- Scanは標準的なレベル指定を行う.
-
n レベル 1 からレベル n Infinity レベル 1 から Infinity {n} レベル n のみ {n1,n2} レベル n1から n2 - Scanにおけるlevelspec のデフォルト値は,{1}である.
- 正のレベル n は,n 個の指標によって指定される expr のすべての部分からなる.
- 負のレベル-n は,深さ n の expr のすべての部分からなる.
- レベル-1は,数,記号,その他の下位区分を持たないオブジェクトからなる.
- レベル0は式全体に当たる.
- オプション設定Heads->Trueのとき,Scanは式の頭部とその部分を含む. »
- Scanは深さ優先の順序で expr の部分に働く.葉の部分は根の部分よりも先になる.
- expr がAssociationオブジェクトのとき,Scan[f,expr]は f を連想中の値にのみ適用する.
- expr がSparseArrayオブジェクトのとき,Scan[f,expr]は expr に明示的に現れる値あるいは部分配列のみに f を適用する.
- Scan[f][expr]はScan[f,expr]に等しい.
- Parallelize[Scan[f,expr]]はScan[f,expr]をすべてのサブカーネルで並列に計算する. »
例題
すべて開くすべて閉じる例 (6)
スコープ (5)
Wolfram Research (1988), Scan, Wolfram言語関数, https://reference.wolfram.com/language/ref/Scan.html (2014年に更新).
テキスト
Wolfram Research (1988), Scan, Wolfram言語関数, https://reference.wolfram.com/language/ref/Scan.html (2014年に更新).
CMS
Wolfram Language. 1988. "Scan." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2014. https://reference.wolfram.com/language/ref/Scan.html.
APA
Wolfram Language. (1988). Scan. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Scan.html