Python3エンジニア認定データ分析模試試験2回目　-間違えた問題-

<H1>獲得点数　475/1000点</H1>
<H2>正答率: 47.5 % ( 19問 / 40問 正解 )</H2>

```python
行列Aのサイズが(n,m)、行列Bのサイズが（m,n）のとき、この２つの行列の積ABのサイズとして正しいものを選べ
A,（n,n）
```
:::note info
２行３列と３行２列の行列の積は、2行２列である
:::

```python
以下のコードを実行した際の出力として正しいものを選べ
import numpy as np

a = np.array([[0,1,10],[0,1,10]])
b = a.copy()
a2 = a.reshape(3,2)
b*a2

A,エラーになり、計算は実行できない
```

:::note info
numpy.reshape()関数は、既に存在するNumPy配列を、
任意のシェイプ（=行数と要素数）の二次元配列に
形状変換した新しいNumPy配列を生成する関数です。
:::


```python
サポートベクターマシンについて説明している以下の文章のうち正しいものを選べ

A,カーネルをrbfカーネルなどにすることで非線形構造を有するデータに対しても使用することができる

```

:::note info
信号処理医療アプリケーションや自然言語処理、音声および画像認識などの
多くの分類と回帰の問題に使用される,
教師あり学習アルゴリズム

「本当に予測に必要となる一部のデータ」のことをサポートベクトル
:::

```python
以下のような２つの集合がある
A = {1,2,3,4}, B = {3,4,5,6}
A∪Bとして正しいものを選べ

A,{1,2,3,4,5,6}

```

```python

以下のコードを実行した場合の出力として正しいものを選べ。

import numpy as np

A = np.arange(10)
A.reshape(5,2)

A,array([[0, 1], [2, 3], [4, 5], [6, 7], [8, 9]])
```

```python
以下のコードを実行した場合の出力として、正しいものを選べ。
import numpy as np

np.log(np.exp(np.eye(2)))

A,array([[1., 0.], [0., 1.]])

```

:::note info
identity関数は行数、列数が同じ正方行列しか生成できないのに対し、
eye関数は行数と列数各々を指定して単位行列を生成できるところに違いがあります。

NumPyのexp関数は、底をネイピア数e とする指数関数の値を計算する関数です。
:::


```python
以下のコードを実行した場合の出力として、正しいものを選べ。
import numpy as np

A = np.array([[1, 3, 5]])
B = np.array([[6, 8, 10]])
C = np.concatenate([A, B], axis=0)
# axis = 0は行方向に結合
# 指定がない場合またはaxis=1は列方向に結合
D = np.diff(C, axis=0) 
# 隣り合う要素同士の差分を計算
# axis = 0は行方向に並ぶ要素同士の差分を計算
# 指定しない場合またはaxis=1は列方向の差分
np.sum(D)

A,15
```

```python
pandasデータフレームdfをNumPy配列に変換する処理として正しいものを選べ

A,df.values
# 配列からベクトルを作る　a = np.array([1, 2, 3])

```

:::note info
numpy.ndarrayはデータ型（正確にはpythonのクラス）である
numpy.arrayは、numpy.ndarrayを作成するための関数である
:::

```python
Matplotlibを用いて、１つの描画オブジェクト中に表示された2つのグラフに対して、
タイトルを指定するコードとして正しいものを選べ

A,
import matplotlib.pyplot as plt

fig, axes = plt.subplots(ncols=2)
#列数nrows, 行数ncols figは一つ作られる
axes[0].set_title("graph left") #axesにset_titleで設定
axes[1].set_title("graph right")
fig.suptitle("fig title")
plt.show()

```

```python
import pandas as pd
import matplotlib.pyplot as plt 

df = pd.DataFrame({"国名":["日本","アメリカ","イタリア","フランス", "ロシア", "ブラジル", "イギリス"], "人口/万人":[12700, 32800, 6000, 6700, 14500, 20900, 6600]})

df = df.sort_values("人口/万人") #人口/万人で昇順
plt.rcParams["font.family"] = "AppleGothic"
plt.bar(df["国名"], df["人口/万人"]) #縦の棒グラフ、左が国名、下が人口/万人
plt.ylabel("人口(万人)")
plt.show()

```



```python
このデータフレームを始値の降順に並び替えるコードとして正しいものを選べ

df.sort_values(“始値”, ascending=False)

```

```python
以下のような日付ごとの利用回数と利用料金が格納されたpandasデータフレームdfがある。各利用回数が何日存在するかをカウントしたものをデータフレームとして出力するコードとして正しいものを選べ

A,df[“利用回数”].value_counts().to_frame()
```

```python
1×2×3×4×5と同じ意味を表す数式として正しいものを選べ

A,大文字のパイ　Π
```

```python
正規分布に従う乱数を生成するNumPyのメソッドとして、正しいものを選べ

A,np.random.randn()

```

```python
fig, ax = plt.subplots()

x = [1,2,3]
y1 = [10, 20, 30]
y2 = [30, 20, 10]

ax.bar(x, y1)
ax.bar(x, y2, bottom=y1)
plt.show()

A,y1が下にある、積み上げ棒グラフ
```

```python
matplotlibでテキストをグラフ内に描画するメソッドに
ついて説明している以下の文章のうち間違っているものを選べ

A,add_text()メソッドを用いる　 #text()を使う
```

```python
以下のような日付ごとのサービス利用回数が格納されたデータフレームdfがある。
日付ごとの利用回数の推移を可視化するためのコードとして正しいものを選べ

A,
import matplotlib.pyplot as plt 

df["利用回数"].plot() #データフレームにplot()関数を当てる
plt.show()
```

```python
決定木の不純度の指標として、間違っているものを以下の中から選べ

A,情報利得
```

```python
分散正規化を実施する以下のコードのXXXの部分に当てはまるものとして正しいものを選べ

※dfはデータが格納されているpandas データフレームとする
from sklearn.preprocessing import StandardScaler

stdsc = StandardScaler()
XXX

A, stdsc.fit_transform(df)
```
```python
ROC曲線の横軸と縦軸が意味するものとして正しい組み合わせを以下の中から選べ

A,（横軸, 縦軸）= （偽陽性率, 真陽性率）
```
```python
以下の文章のうちF値の説明として正しいものを選べ

A,適合率と再現率の調和平均
```
```python
勾配ブースティングの手法として正しくないものを選べ

A,
ニューラルネットワーク
```

```python
以下のような、ユーザーごとのサービス利用状況が格納されたデータフレームdfがある。
カラムごとの欠損値の割合を円グラフとして可視化するコードとして正しいものを選べ

A,
import matplotlib.pyplot as plt 

plt.pie(df.isnull().sum()/len(df), labels=df.columns, autopct="%1.1f%%")
plt.show()

```

```python
以下のコードは、欠損値をカラムごとの平均値で埋めるために書かれたコードである。以下のコードのXXXの部分に記述されるコードとして正しいものを選べ
※dfは欠損を含むデータが格納されているpandasデータフレームである, versionは0.20以上

A,
imp = SimpleImputer(strategy=”mean”) #version0.2以降はaxisは使わない

```