名義変数のPandasデータフレームの列の内容を知る(表現)する方法。
こちらも意外とすぐ検索で見つからないためメモ。
(3、4を7/4/2018に追記)
1、df[something].describe()
データの数、ユニークバリューの数等はわかる。
名義変数の種類や頻度はわからない。
欠損数もわからない。
2、df[something].value_counts()
私が知りたい、使いたいのはどちらかというとこちら。
3、上記の2でうまくいっていると思っていたことが、うまくいっていなかった。
ある列が名義変数(2値変数,例えば0or1)で示されている場合、以下で把握することができると思っていたが、それをfor文で回すと、値として格納されている、0or1がどちらにくるのか予想できないことが判明。
df[something].value_counts()[0]
df[something].value_counts()[1]
よって、以下のように値を指定して、要素数をカウントをすることとした。
df[something][df[something] == 0].count()
df[something][df[something] == 1].count()
4、おまけ。そうかCount()使えば一貫したコードになると考え、Null値も同様の方法でカウントしようとしたが、要素として格納されているNan値はCount()することができない。実行すると0が帰ってきてしまう。よって、Nanのカウントは以下のように記載した。ややこしい。
df[something].isnull().sum()
参考サイト
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.html
https://note.nkmk.me/python-pandas-count-condition/