スポンサーリンク
axis=1を指定して、DataFrame.drop()で列を削除する
まずは、csvファイルを読み込んで、DataFrameを作成します。
1 2 3 |
import pandas as pd data = pd.read_csv('in.txt', names=('id', 'region', 'weather', 'value')) |
例えば、’value’の列を削除する場合は下記のように書けます。
1 |
dataDelete = data.drop('value', axis=1) |
リストで複数の列を指定して削除もできます。
1 |
dataDelete = data.drop(['id', 'weather', 'value'], axis=1) |
上記の場合は、一旦dataDelete変数に格納していましたが、
inplace=Trueを指定することで、上書きできます。
1 |
data.drop('value', axis=1, inplace=True) |
スポンサーリンク
delでも列を削除できます
例えば、’weather’の列を削除する場合は、下記のように書けます。
1 |
del data['weather'] |
サンプルコード
例えば、下記のin.txtがあったとします。
1 2 3 4 |
$ cat in.txt 1,E,雨,70 2,F,くもり,5 3,G,晴れ,0 |
下記がサンプルコードになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$ cat sample.py #!/usr/bin/env python3 # coding: UTF-8 import pandas as pd data = pd.read_csv('in.txt', names=('id', 'region', 'weather', 'value')) print(data) dataDelete = data.drop('value', axis=1) print(dataDelete) dataDelete = data.drop(['id', 'weather', 'value'], axis=1) print(dataDelete) data.drop('value', axis=1, inplace=True) print(data) del data['weather'] print(data) |
下記が実行結果になります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
$ ./sample.py id region weather value 0 1 E 雨 70 1 2 F くもり 5 2 3 G 晴れ 0 id region weather 0 1 E 雨 1 2 F くもり 2 3 G 晴れ region 0 E 1 F 2 G id region weather 0 1 E 雨 1 2 F くもり 2 3 G 晴れ id region 0 1 E 1 2 F 2 3 G |
スポンサーリンク