スポンサーリンク
axis=1を指定して、DataFrame.drop()で列を削除する
まずは、csvファイルを読み込んで、DataFrameを作成します。
import pandas as pd data = pd.read_csv('in.txt', names=('id', 'region', 'weather', 'value'))
例えば、'value'の列を削除する場合は下記のように書けます。
dataDelete = data.drop('value', axis=1)
リストで複数の列を指定して削除もできます。
dataDelete = data.drop(['id', 'weather', 'value'], axis=1)
上記の場合は、一旦dataDelete変数に格納していましたが、
inplace=Trueを指定することで、上書きできます。
data.drop('value', axis=1, inplace=True)
スポンサーリンク
delでも列を削除できます
例えば、'weather'の列を削除する場合は、下記のように書けます。
del data['weather']
サンプルコード
例えば、下記のin.txtがあったとします。
$ cat in.txt 1,E,雨,70 2,F,くもり,5 3,G,晴れ,0
下記がサンプルコードになります。
$ 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)
下記が実行結果になります。
$ ./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
スポンサーリンク