次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、Q1 ~ 4 に答えてください. Q1:変数 arr_2d の要素のうち、5 を出力してください. Q2:変数 arr_2d から、以下の行列をスライスし出力してください. [[3, 4] [6, 7]] Q3:ndarray.sum() 関数を使って arr_2d から、以下のような配列を作成し出力してください. [3, 12, 21] import numpy as np arr_2d = np.arange(0,9).reshape(3,3) print(arr_2d) # Q1 print(##########) [Q1の選択肢] 1. arr_2d[1,2] 2. arr_2d[2,3] 3. arr_2d[2,1] # Q2 print(##########) [Q2の選択肢] 1. arr_2d[1:, :2, :] 2. […]
Monthly Archives: June 2020
2 次元配列 – 行列
次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、 変数 list を 2 次元の ndarray 配列に変換してから変数 my_arr に代入し出力してください. また、変数 my_arr の各次元ごとの要素数を出力してください. さらに、変数 my_arr を 4 x 2 の行列に変換してください. import numpy as np list = [[1, 2, 3, 4], [5, 6, 7, 8]] # Q1:変数 list を 2 次元の ndarray 配列に変換し変数 my_arr に代入してください. my_arr = ########## print(my_arr) [Q1の選択肢] 1. np.array2d(list) […]
乱数と np.random モジュール
次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、np.random モジュールから randit() 関数、rand() 関数を import してください.また、変数 my_arr に各要素が 0 以上 5 以下の整数からなる 2 x 2 行列を代入し、出力してください. さらに、0 以上 1 未満の一様分布をもつ乱数を 2 つ作成し、変数 my_arr2 に代入してから 出力してください. import numpy as np # Q1:np.random モジュールから randit() 関数、rand() 関数を import してください. ########## [Q1の選択肢] 1. from random import randint, rand 2. from numpy.random import radint, […]
転置行列
次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、下記の設問に答えてください. Q1:変数 my_arr を転置し、出力してください. import numpy as np my_arr = np.arange(15).reshape(5, 3) # Q1 print(##########) [Q1の選択肢] 1. np.transpose(my_arr) 2. transpose(my_arr) 3. my_arr.T
ソート
次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 4 から選び、下記の設問に答えてください. Q1:行ごとに変数 my_arr の要素をソートした場合のインデックスを表す配列を出力してください. Q2:行ごとに変数 my_arr の要素を昇順にソートし出力してください. Q3:変数 my_arr を列ごとにソートしてください. import numpy as np my_arr = np.array([[3, 4, 5], [9, 2, 6], [7, 8, 1]]) # Q1 print(##########) # Q2 print(##########) # Q3 print(##########) [Q1,Q2,Q3の選択肢] 1. np.sort(my_arr, axis=0) 2. np.sort(my_arr, axis=1) 3. my_arr.argsort() 4. argsort(my_arr)
行列計算 とノルム
次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、下記の設問に答えてください. Q1 : 変数 arr_2d の転置行列と arr_2d のドット積を計算し、出力してください. Q2 : 変数 my_vec の l1 ノルムを計算し出力してください. import numpy as np arr_2d = np.arange(9).reshape(3, 3) my_vec = np.arange(9) #Q1 print(##########) [Q1の選択肢] 1. arr_2d.T・arr_2d 2. np.dot(arr_2d * arr_2d) 3. np.dot(arr_2d.T, arr_2d) #Q2 print(##########) [Q2の選択肢] 1. np.linalg.norm(my_vec) 2. np.linalg(my_vec) 3. np.norm(my_vec)
統計関数、平均・最大・最小・標準偏差・分散
次のコードで空欄になっている行に入る適切な選択肢を選び、下記の設問に答えてください. Q1:変数 my_arr の各行ごとの平均を出力してください. Q2:変数 my_arr の各列ごとの最小値を出力してください. Q3:変数 my_arr のそれぞれの行の最大値のインデックスを出力してください. import numpy as np arr_2d = np.arange(25).reshape(5, 5) # Q1 print(##########) # Q2 print(##########) # Q3 print(##########) [Q1,Q2,Q3の選択肢] 1. my_arr.max(axis=0) 2. my_arr.min(axis=0) 3. my_arr.mean(axis=0) 4. my_arr.argmin(axis=0) 5. my_arr.mean(axis=1) 6. my_arr.argmax(axis=1)
ブロードキャスト
次のコードで空欄になっている行に入る適切な選択肢を 1 ~ 3 から選び、下記の設問に答えてください. Q1:変数 arr_2d の各要素に各行のインデックス番号を掛けてください. また、各行のインデックス番号を表す5 行 1 列の配列を用意してください. import numpy as np arr_2d = np.arange(25).reshape(5, 5) # Q1 y = np.arange(5).reshape(5, 1) print(arr_2d * y) [Q1の選択肢] 1. y = np.arange(5).reshape(1, 5) print(arr_2d * y) 2. y = np.arange(5).reshape(5, 1) print(arr_2d * y) 3. y = np.arange(5).reshape(5, 1) print(np.dot(arr_2d, y))
Series の生成
下記の設問に対する答えとして相応しものを選択肢から選び、次のコードの空欄(##########)を埋めてください. Q1:リスト型の変数 PRICE から Series を作成してください. Q2:バリューに PRICE、インデックスに FRUITS を指定して Series を作成し変数 series に代入してください. Q3:変数 series を辞書型に変換し変数 series_dict に代入してください. Q4:series_dict と FRUIT_LIST を用いて Series を作成し、再び series に代入してください. ( インデックスには FRUIT_LIST を用いる.) import pandas as pd from pandas import Series PRICE = [120, 100, 50, 350] FRUIT = [“Orange”, “Grape”, “Strawberry”, “Apple”] FRUIT_LIST = [“Apple”, “Grape”, […]
スライスと view
Q1 : 下記のコードを動かした場合、得られる出力として正しいもの 1 ~ 3 から選んでください. import numpy as np my_list = [1, 2, 3, 4, 5] my_arr1 = np.array(my_list) my_arr2 = np.array(my_list) my_arr1_copy = my_arr1[:] my_arr1_copy[0] = 10 my_arr2_copy = my_arr2.copy() my_arr2_copy[0] = 10 print(“スライスと ndarray.copy() による挙動の違いから view について理解する.”) print(“my_arr1 : “, my_arr1) print(“my_arr1_copy : “, my_arr1_copy) print(“my_arr2 : “, my_arr2) print(“my_arr2_copy : […]