スポンサーリンク
loc,ilocを使いDataFrameの列を入れ替える
まずは、下記のようにcsvファイルを読み込んで、'id', 'region', 'weather', 'value'の列名を付与します。
data = pd.read_csv('in.txt', names=('id', 'region', 'weather', 'value'))
locを使う場合は、入れ替えたい順番を、列名のリストで指定します。
下記の場合は、'region', 'id'の順に入れ替えしました。
dataExchange = data.loc[:, ['region', 'id', 'weather', 'value']]
ilocを使う場合は、列名を入れ替えたい順番を、番号のリストで指定します。
先頭が0番目になります。
dataExchange = data.iloc[:, [3,2,1,0]]
スポンサーリンク
サンプルコード
例えば、下記のin.txtがあったとします。
$ cat in.txt 1,H,雪,20 2,I,曇,55 3,J,晴,10
下記がサンプルコードになります。
$ 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) dataExchange = data.loc[:, ['region', 'id', 'weather', 'value']] print(dataExchange) dataExchange = data.iloc[:, [3,2,1,0]] print(dataExchange)
下記が実行結果になります。
$ ./sample.py id region weather value 0 1 H 雪 20 1 2 I 曇 55 2 3 J 晴 10 region id weather value 0 H 1 雪 20 1 I 2 曇 55 2 J 3 晴 10 value weather region id 0 20 雪 H 1 1 55 曇 I 2 2 10 晴 J 3
スポンサーリンク