Union[ <リスト>, <リスト> ]
list1 = {2,3,4,5} と、list2 = {3,4,5,6}をつなげたい。
(1){2,3,4,5,3,4,5,6}というように、単純につなげ。
(2)単純につないだうえ、要素に重複があれば、初出(つまり、当該重複要素のうち、最も左にあるもの)のみを残し、あとは削除せよ。
解答
(1) Join[list1, list2]
(2)Union[list1, list2] (その値は、{2,3,4,5,6}である。)
解説
Union[ <リスト>, <リスト> ]は、2つのリストをつなげたリストを作成する。
ただし、Joinと違って、つなげた結果に重複する要素がある場合には、初出のみ残し、あとは削除する。
list1 = {3,6,2,4,3}, list2 = {4,6,1,5,6}のとき、以下の値を確認せよ。
(1)Join[list1, list2]
(2)Join[list2,list1]
(3)Union[list1, list2]
(4)Union[list2, list1]
(5)Unique[ Join[list1, list2] ]
解答
(1){3,6,2,4,3,4,6,1,5,6} →Joinは、2つのリストを単純につなげる。
(2){4,6,1,5,6,3,6,2,4,3} →Joinは、入力した引数の順番通りにつなぐ。
(3){3,6,2,4,1,5} →(1)の結果のうち、重複する要素を初出のみ残したもの。
(4){4,6,1,5,3,2} →(2)の結果のうち、重複する要素を初出のみ残したもの。
(4){1,2,3,4,5,6} →Uniqueを実行すると、重複を削除のうえ、昇順に並び替わる。
FitPoly[ <点のリスト>, <多項式の次数> ]
rawData = {(1, 2), (2, 2), (3, 2), (2, 3), (4, 4), (4, 3), (3, 3), (3, 4), (1, 4), (-2, 4), (-2, 6), (-3, 7), (-3, 6), (-2, 6), (-1, 4), (-1, 3), (-1, 5), (5, 4), (6, 6), (7, 6), (9, 6), (9, 4), (7, 5), (6, 5), (8, 5), (8, 6), (6, 7), (5, 6), (7, 3), (1, 3), (5, 5), (5, 8)}
を作成する。
rawDataから、3次多項式による近似曲線を求めよ。
解答
FitPoly[rawData,3] (その値は、y = -0.02108x³ + 0.25513x² - 0.38431x + 3.02024)
解説
FitPoly[ <点のリスト>, <多項式の次数> ]は、指定の点のリストから、指定の次数の多項式による近似曲線を作成する。
Zip[ <式>, <変数1>, <リスト1>, <変数2>, <リスト2>, ... ]
list1 = {1,2,3,4,5}, list2 = {5,4,3,2,1}とする。
各要素の積からなるリスト {1×5, 2×4, 3×3, 4×2, 5×1}を作成せよ。
解答
Zip[s*t, s, list1, t, list2] (その値は、{5,8,9,8,5}である。)
解説
Zip[ <式>, <変数1>, <リスト1>, <変数2>, <リスト2>, ... ]は、要素数が等しい複数のリストから、同じ位置の要素を取り出してきて、<式>で指定した演算を行い、新たなリストを作成する。
list1 = {1,2,3,4,5}とする。list1の各要素に10を足したリスト{11,12,13,14,15}を作成せよ。
解答
Zip[k+10, k, list1]
list1 = {"もも", "かくざとう", "にほんおおかみ"}から、
{"ももの文字数は2文字です。", "かくざとうの文字数は5文字です。", "にほんおおかみの文字数は7文字です"}というリストを作成せよ。
解答
Zip[s + "の文字数は" + Length[s] + "文字です。", s, list1]