Lists, Vectors, and Matrices


Mathematicaで,データ列,ベクトル,行列などをリストと呼ばれるもので 表現する.リストは { 要素1, 要素2, ... } で表す.
In[56]:=
list1 = {3, 1, 4, 1, 5}
Out[56]=
{3, 1, 4, 1, 5}
関数 Table はリストを作成する.
In[57]:=
list2 = Table[ 1/n!, {n,0,4} ]
Out[57]=
       1  1  1
{1, 1, -, -, --}
       2  6  24
In[58]:=
list3 = Table[ x^n, {n,0,4} ]
Out[58]=
        2   3   4
{1, x, x , x , x }
リストに対しての演算は,各項に対して行われる.
In[59]:=
3 list1
Out[59]=
{9, 3, 12, 3, 15}
In[60]:=
list1+list2
Out[60]=
       9  7  121
{4, 2, -, -, ---}
       2  6  24
In[61]:=
list2 list3
Out[61]=
        2   3   4
       x   x   x
{1, x, --, --, --}
       2   6   24
内積は . で計算する(.).
In[62]:=
list2 . list3
Out[62]=
         2    3    4
        x    x    x
1 + x + -- + -- + --
        2    6    24
In[63]:=
{{a,b},{c,d}} . {1,2}
Out[63]=
{a + 2 b, c + 2 d}
In[64]:=
matrix1 = Table[E^(-2Pi i j I/4), {i,0,3}, {j,0,3} ]
Out[64]=
{{1, 1, 1, 1}, {1, -I, -1, I}, {1, -1, 1, -1}, 
 
  {1, I, -1, -I}}
Det は行列式,Inverse は逆行列を求める.
In[65]:=
Det[matrix1]
Out[65]=
16 I
In[66]:=
matrix2 = Inverse[matrix1]
Out[66]=
  1  1  1  1    1  I    1   -I    1    1   1    1
{{-, -, -, -}, {-, -, -(-), --}, {-, -(-), -, -(-)}, 
  4  4  4  4    4  4    4   4     4    4   4    4
 
   1  -I    1   I
  {-, --, -(-), -}}
   4  4     4   4
In[67]:=
matrix1 . matrix2
Out[67]=
{{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 0}, 
 
  {0, 0, 0, 1}}
Eigenvalues, Eigenvectors は固有値,固有ベクトルを求める.
In[68]:=
Eigenvalues[matrix1]
Out[68]=
{-2, -2 I, 2, 2}
In[69]:=
Eigenvectors[matrix1]
Out[69]=
{{-1, 1, 1, 1}, {0, -1, 0, 1}, {2, 1, 0, 1}, 
 
  {1, 0, 1, 0}}
In[70]:=
list4 = {a,b,r,a,c,a,d,a,b,r,a};
リスト x の i 番目の要素は,x[[i]] で求める([[...]]).
In[71]:=
list4[[5]]
Out[71]=
c
Sort, Reverse, Joinは,それぞれリストの整列,逆順,結合を行う.
In[72]:=
Sort[list4]
Out[72]=
{a, a, a, a, a, b, b, c, d, r, r}
In[73]:=
Reverse[list4]
Out[73]=
{a, r, b, a, d, a, c, a, r, b, a}
In[74]:=
list5 = {a, r, a, b, i, a};
In[75]:=
Join[list4, list5]
Out[75]=
{a, b, r, a, c, a, d, a, b, r, a, a, r, a, b, i, a}
Union, Intersectionは,リストを集合とみなして和集合,共通集合を求める.
In[76]:=
Union[list4, list5]
Out[76]=
{a, b, c, d, i, r}
In[77]:=
Intersection[list4, list5]
Out[77]=
{a, b, r}
Permutationsは,リストの順列すべてを求める.
In[78]:=
Permutations[{a,b,c}]
Out[78]=
{{a, b, c}, {a, c, b}, {b, a, c}, {b, c, a}, 
 
  {c, a, b}, {c, b, a}}

最初に戻る 前へ 次へ
Dept. CS / Faculty of Eng. / Kobe Univ. / Naoyuki Tamura