前回(その1)で、データをダミー変数にするget_dummies()を紹介した。
この関数の仕様が2023年4月3日にリリースされたPandas 2.0.0で変更になっている。

以前は、データごとに列が作られ、列の値として1,0が入るようになっていた。
Pandas 2.0.0からは、1,0ではなく真偽値型すなわちTrue,Falseが入る。

PythonでTrueとFalseを四則演算に使うと
それぞれ1,0の整数として扱われる。
このためget_dummies()の出力結果が
1,0でなくTrue,Falseとなっても、
基本的には従来通り統計処理に使用することができる。
(DataFrameでは加算と乗算のみが有効)

get_dummies()の仕様を変更することについては、
2022年2月~11月にかけて議論されている。
従来の1,0とする仕様だと、反転のために’~'チルダを付けると
1が254に、0が255になってしまうという問題があった。

メモリの効率的な使用も考えると、
結果をTrue,Falseの真偽値型にするのがもっとも妥当という結論となり、
先の変更に至っている。

真偽型ならTrue,Falseを反転すればFalse,Trueになる。