ご存知のように,Mathematica では行列や複数の数値の連続したものを,リスト,と呼んでいます.工学の分野では,色々な実験・計算データと取り扱いますので,それらのデータを取り込み,色々と加工・操作したい場合が出てきます.
例えば,
1, Pi ( ここで,Pi は円周率 )
2, -Pi
3, 0
4, 3.14
という簡単なデータがあり,そこから,1列目或は2列目のデータだけを取り出したり,2列目のデータに演算を施したい場合,以下のように記述出来ます.
Fig. 1 リストからの値を取り出したり,ある列だけに演算を施す例
a という変数にリストとして格納し,b には a の1列目だけの値,c には a の2列目だけの値を取り出しています.Table を利用し,2列目だけに Sin を演算子として使っています.
次に,データの中に 0(ゼロ)を含むと,Log をとった際にエラーとなるため,そういうデータだけ排除してリストを再作成したい,という際に利用できる方法を考えてみました.以下の例は,最初の行は排除する条件に該当しないと仮定した場合で,aNoneZero に {{1, 10}}を一旦取り込み,2つ目以降について,If を使いながら For ループの中で Append してみました.
Fig. 2 リストから,2列目に0(ゼロ)を含んだ行だけ取り除いた例
☆
今後,工学の分野で似たような操作をする初心者の方向けに,上記のような例を増やして行きたいと思います.
: お願い
もっとスマートな方法をご存知の方がいらっしゃいましたら,ご一報頂けると幸いです.
☆
back to home > support > mathematica_tips
© 2008- ATHENASYS Co., Ltd. All Rights Reserved.