IT・情報処理 / Python 認定

Python 3 エンジニア認定 データ分析試験の無料問題集・例題・出題範囲

NumPy/pandas/Matplotlib/統計・機械学習基礎/前処理

  • 422問
  • 5分野
  • 解説つき・無料で演習
  • 問題の最終更新:

出題範囲(5分野)

  • 可視化(Matplotlib/Seaborn)84問
  • pandasの基礎/データ操作84問
  • 前処理/欠損/特徴量84問
  • NumPyの基礎85問
  • 統計/機械学習の基礎85問

Python 3 エンジニア認定 データ分析試験の例題(6問・解説つき)

スキルサートのAIが出題範囲に沿って作成した演習問題です(過去問ではありません)。アプリでは毎週新しい問題が追加されます。

例題1可視化(Matplotlib/Seaborn)

Matplotlibにおいて、データの分布を把握するために用いられ、最大値、最小値、中央値、四分位数を示すグラフ(箱ひげ図)を作成する関数はどれか。

  1. plt.hist()
  2. plt.scatter()
  3. plt.pie()
  4. plt.boxplot()
  5. plt.bar()
解答と解説を見る

正解: plt.boxplot()

正解は「plt.boxplot()」です。箱ひげ図(Box Plot)は、データのばらつきを視覚的に要約する手法であり、最大値、最小値、中央値、第1四分位数、第3四分位数を示します。外れ値も個別にプロットされるのが一般的です。他の選択肢について、plt.hist()は度数分布を示すヒストグラム、plt.scatter()は2変数間の相関を見るための散布図、plt.bar()は棒グラフ、plt.pie()は円グラフを作成するための関数であり、用途が異なります。

例題2pandasの基礎/データ操作

pandasのDataFrameにおいて、特定の行や列を削除して新しいオブジェクトを返すメソッドとして正しいものはどれか。

  1. delete
  2. discard
  3. erase
  4. remove
  5. drop
解答と解説を見る

正解: drop

正解は「drop」です。pandasにおいて、行や列を削除する際には drop メソッドを使用します。引数 axis で行(0)か列(1)を指定します。デフォルトでは元のオブジェクトを変更せず、削除後の新しいオブジェクトを返しますが、inplace=True を指定することで元のオブジェクトを直接変更することも可能です。remove や delete は Python の標準リスト操作などで使われますが、pandasのデータ操作には drop が適しています。

例題3前処理/欠損/特徴量

pandasを用いた欠損値処理に関する記述のうち、誤っているものはどれか。

  1. fillna(method='ffill')を実行すると、欠損値はその位置より後にある有効な値(直後の値)で補完される。
  2. dropnaメソッドを使用することで、欠損値(NaN)を含む行または列をデータセットから削除することができる。
  3. interpolateメソッドを使用すると、時系列データなどの場合に前後の値から計算される線形補完によって欠損値を埋めることができる。
  4. isnullメソッドを使用すると、データフレームの各要素が欠損値であるかどうかを判定した結果をブール値で取得できる。
  5. fillnaメソッドに特定の値を渡すことで、データ内のすべての欠損値をその値で一括して補完することができる。
解答と解説を見る

正解: fillna(method='ffill')を実行すると、欠損値はその位置より後にある有効な値(直後の値)で補完される。

正解は「fillna(method='ffill')を実行すると、欠損値はその位置より後にある有効な値(直後の値)で補完される。」です。pandasのfillnaメソッドにおいて、引数methodに'ffill'(forward fill)を指定した場合、欠損値は「直前の有効な値」で補完されます。これに対し、欠損値を「直後の値」で補完したい場合は'bfill'(backward fill)を使用します。欠損値処理は分析の精度に直結するため、データの特性に合わせて補完方向を正しく選択することが重要です。

例題4NumPyの基礎

NumPy配列(ndarray)の属性に関する記述のうち、誤っているものはどれか。

  1. ndimは配列の次元数(軸の数)を表す。
  2. shapeは各次元の大きさを表すタプルである。
  3. itemsizeは配列の各要素のメモリサイズ(バイト単位)を表す。
  4. dtypeは要素のデータ型を表し、1つの配列内に異なる型を混在させることができる。
  5. sizeは配列に含まれる全要素の個数を表す。
解答と解説を見る

正解: dtypeは要素のデータ型を表し、1つの配列内に異なる型を混在させることができる。

正解は『dtypeは要素のデータ型を表し、1つの配列内に異なる型を混在させることができる。』です。NumPyのndarray(多次元配列)は、全ての要素が同じデータ型である必要があります。これを一質性(Homogeneity)と呼び、これにより計算速度の向上とメモリ効率の最適化を実現しています。一方で、Python標準のリスト(list)は異なる型を混在させることが可能ですが、NumPyの利点を活かすためには同一の型で構成される必要があります。

例題5統計/機械学習の基礎

統計量やデータの要約に関する説明として、誤っているものはどれか。

  1. 最頻値(モード)はデータセットの中で最も頻繁に出現する値のことであり、数値データだけでなくカテゴリデータにも適用できる。
  2. 分散はデータのばらつきを表す指標であり、各データと平均値の差を2乗したものの平均である。
  3. 相関係数は-1から1の範囲をとり、1に近いほど正の相関が強く、-1に近いほど負の相関が強いことを示す。
  4. 中央値はデータを大きさの順に並べたときの中央の数値であり、極端な外れ値の影響を強く受ける性質がある。
  5. 標準偏差は分散の正の平方根をとったもので、元のデータと同じ単位で扱えるため、データのばらつきを直感的に理解しやすい。
解答と解説を見る

正解: 中央値はデータを大きさの順に並べたときの中央の数値であり、極端な外れ値の影響を強く受ける性質がある。

正解は「中央値はデータを大きさの順に並べたときの中央の数値であり、極端な外れ値の影響を強く受ける性質がある。」です。中央値(メディアン)はデータを昇順に並べた際に真ん中に位置する値を指し、極端に大きな値や小さな値(外れ値)が含まれていてもその影響をほとんど受けないという耐性(ロバスト性)を持っています。これに対し、平均値はすべてのデータを合算して算出するため、一部の極端な外れ値によって大きく変動してしまいます。データの分布が歪んでいる場合や外れ値が含まれる場合には、平均値よりも中央値の方が集団の代表値として適切な場合が多いです。

例題6可視化(Matplotlib/Seaborn)

Seabornライブラリに関する記述として、誤っているものはどれか。

  1. Matplotlibの機能を完全に置き換えるものであり、グラフの詳細なカスタマイズにMatplotlibを併用することはない。
  2. Matplotlibをベースに構築されており、MatplotlibのFigureやAxesを操作して調整が可能である。
  3. sns.set() メソッドを用いることで、デフォルトのフォントやスタイルを一括で設定できる。
  4. PandasのDataFrameオブジェクトをそのまま引数として受け取ることができる。
  5. sns.pairplot() を使うと、データフレームの各変数間の関係を散布図行列として一括で可視化できる。
解答と解説を見る

正解: Matplotlibの機能を完全に置き換えるものであり、グラフの詳細なカスタマイズにMatplotlibを併用することはない。

正解は「Matplotlibの機能を完全に置き換えるものであり、グラフの詳細なカスタマイズにMatplotlibを併用することはない。」です。SeabornはMatplotlibをベースにした高レベルなライブラリで、簡潔なコードで美しいグラフを描画できますが、Matplotlibを完全に置き換えるものではありません。サブプロットのレイアウト調整、軸の細かな設定、凡例の位置調整など、柔軟なカスタマイズを行うためには依然としてMatplotlibの知識や機能との併用が必要になります。

Python 3 エンジニア認定 データ分析試験の重要用語

Figure
Matplotlibにおける描画領域全体のことを指します。一つのFigureの中に、複数のグラフ(Axes)を配置することが可能です。キャンバスのような役割を果たし、グラフのサイズ設定や保存、レイアウトの調整など、描画全体を管理するために使用されます。試験では、plt.figure()関数で生成されるオブジェクトとして、階層構造の最上位に位置するものとして頻出します。
DataFrame
pandasで最も多用される2次元のデータ構造です。行と列を持つ表形式のデータであり、各列で異なるデータ型(数値、文字列など)を保持できます。ExcelのシートやSQLのテーブルのようなイメージで、統計解析や機械学習の前処理に不可欠なオブジェクトであり、インデックスとカラム名によって効率的にデータを管理・抽出できるのが特徴です。
isnull
データセット内に欠損値(NaNなど)が含まれているかを確認するためのメソッドです。pandasのDataFrameやSeriesに対して使用し、各要素が欠損値であればTrue、そうでなければFalseを返します。欠損値の総数を把握する際は「isnull().sum()」のように記述し、分析の最初にデータの不備を把握するための重要なステップとして利用されます。
ndarray
NumPyで中心的な役割を果たす多次元配列オブジェクトです。Python標準のリストとは異なり、全ての要素が同一のデータ型(dtype)である必要があります。これによりメモリ消費を抑え、高速な数値計算を可能にしています。試験ではリストとの性質の違いや、効率的なデータ保持の仕組みについて問われることが多い重要な用語です。
教師あり学習
正解となるラベルが付与されたデータを用いてモデルを学習させる手法です。主に「回帰」と「分類」の2つのタスクに分けられます。回帰は連続値を予測し、分類はカテゴリを予測します。データ分析試験では、与えられた入力から正しい出力を導き出すための学習プロセスとして非常に重要な概念であり、多くのアルゴリズムの基礎となります。
Axes
Figure内にある具体的なグラフを描画する個別の領域のことです。座標軸、ラベル、タイトル、プロットデータなどはすべてこのAxesオブジェクトに保持されます。1つのFigureに複数のAxesを配置することで、複数のグラフを並べて表示できます。Matplotlibのオブジェクト指向インターフェースにおいて、グラフの細かなカスタマイズを行う際に中心となる重要な要素です。
Series
pandasにおける1次元のデータ構造で、DataFrameの1つの列に相当します。同じデータ型の値の並びと、それに対応するインデックス(見出し)で構成されます。リストや1次元のNumPy配列に似ていますが、各要素にラベルを付けて管理できる点が特徴で、ベクトル化された計算処理も高速に行うことができます。
dropna
データセットから欠損値を含む行や列を削除するためのメソッドです。引数axisで「0(行)」または「1(列)」を指定でき、how='any'(一つでもあれば削除)やhow='all'(全て欠損なら削除)といった条件設定が可能です。安易な削除は情報を失うリスクがありますが、データ量が十分にあり欠損が限定的な場合には、整合性を保つための簡便な手法です。

よくある質問

Python 3 エンジニア認定 データ分析試験の問題はスキルサートで何問解けますか?
全422問・5分野の問題を用意しています。問題は出題範囲に沿って随時追加しています。
無料で使えますか?
無料プランで週10回の演習(1回10問)と、毎日の「今日の1問」を利用できます。解説を読み、わからない点はAIに質問できます。
ここの問題は過去問ですか?
過去問ではありません。出題範囲に沿ってAIが作成した演習問題です。すべて解説つきで、間違えた問題は繰り返し解けます。

Python 3 エンジニア認定 データ分析試験の対策はアプリで

AIが毎週生成する新作問題・ランクマッチ・週次ランキング・AI診断で「続けられる」資格学習を。無料で始められます。