Python 模擬試験

Pythonデータ分析 模擬試験 第6回 問20・4章2節 pandas(SeriesとDataFrame)

行ごとの合計

次のコードを実行したときの出力として、正しいものを1つ選べ。

import pandas as pd
df = pd.DataFrame({"a": [1, 3], "b": [2, 4]})
print(df.apply(lambda r: r.sum(), axis=1).tolist(), df.sum(axis=1).tolist())
  1. A

    [4, 6] [4, 6]

  2. B

    [3, 7] [3, 7]

  3. C

    [3, 7] [4, 6]

  4. D

    [10] [10]

正解と解説を見る

正解:B

DataFrame.apply(関数, axis=1) は、行ごとに関数を適用する。単純な集計は、組み込みのメソッド(sum(axis=1))の方が速い。

順実行する行実行後の変数
1`import pandas as pd`—
2`df = pd.DataFrame({"a": [1, 3], "b": [2, 4]})`df = DataFrame(2行×2列)
3`print(df.apply(lambda r: r.sum(), axis=1).tol…`df = DataFrame(2行×2列)
結果実際の出力[3, 7] [3, 7]
変数 df の中身を表にしたもの。列は a, b。

コードの実行後の df(DataFrame)。

学習のポイント:apply は柔軟だが、遅くなりやすい。

この問題を演習で解く →

問題一覧へ

このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。