crosstab
次のコードを実行したときの出力として、正しいものを1つ選べ。
import pandas as pd
df = pd.DataFrame({"r": ["a", "a", "b"], "c": ["x", "y", "x"]})
print(pd.crosstab(df["r"], df["c"]).values.tolist())
- A
[[1, 1], [1, 0]] - B
[[1, 1], [1, 1]] - C
[[2, 1]] - D
[[1, 0], [1, 1]]
正解と解説を見る
正解:A
pd.crosstab は、2 つのカテゴリ変数の組み合わせの出現回数(クロス集計表)を作る。normalize で割合にできる。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import pandas as pd` | — |
| 2 | `df = pd.DataFrame({"r": ["a", "a", "b"], "c":…` | df = DataFrame(3行×2列) |
| 3 | `print(pd.crosstab(df["r"], df["c"]).values.to…` | df = DataFrame(3行×2列) |
| 結果 | 実際の出力 | [[1, 1], [1, 0]] |

- A
正しい。行
rと列cの組み合わせの出現回数を数える。bとyの組はないので 0。 - B
誤り。
bとyの組み合わせはない。 - C
誤り。行ごとに、列の値別に数える。
- D
誤り。列と行の対応が違う。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。