pandasで特定の列を、何番目と何番目というように、数値で抽出する(listで[2,5,8]など)


複数カラムあるデータフレームで、特定の列だけ番号で複数指定して抽出したいという
シチュエーションは皆さんよくあることだと思いますが、
私は書く度にググってるのので自分用のメモを書いときます。

dfの2番目、5番目、8番目の列を抽出したいときは次のようになります。

df.iloc[:, [2,5,8]]

これを見ると、なんだー、という感じなのですが、ググってもなかなか出てきません。。

特定の列をカラム名で指示して抽出する方法はこちらにのっていました。
https://qiita.com/guai3/items/f5ce0ab817f51e0a5d04

追記:
連番はスライスが使えないようなので、このようにrangeを使いリストの足し算で解決しました。

df.iloc[:, [2]+list(range(5,8))]  #2,5,6,7列目