小ネタ - pandas
ページとして新規に立てるほど長くもない小ネタ集。
カラムの選択・更新など
特定列以外の列を指定
a,b,c,…,z の26列があるDataFrameで、c列だけ除いたカラムを指定したい場合。
単純に除いた列だけのDataFrameが欲しいなら df.drop() を使えばいいけど、
特定列以外をint型にしたいとか、特定列だけ fillna() などの処理方法が異なりそれ以外をまとめて処理したいとかで、drop() ではやりたいことができないことがある。
DataFrameやSeriesの行を値でフィルタリングするときと同じように、カラムに対してフィルタリングした配列を作ればよい。
1 2 3 4 5 6 7 |
target_cols = df.columns[df.columns != 'c']df[target_cols]# 複数行を除く場合target_cols = df.columns[~df.columns.isin(['c', 'd'])]df[target_cols] |

