目次
Pandas
前回、lmfitでフィッティング精度を上げられるかもしれない4つの方法を紹介しました。
【lmfit】フィッティング精度を上げられるかもしれない4つの方法[Python]
lmfit 前回、再帰処理を使って積立の複利計算をする方法を紹介しました。 今回はlmfitでフィッティング精度を上げられるかもしれない4つの方法を紹介します。 ちなみにl…
今回はPandasのread_csvでcsvファイルを読み込んだ際の読み込む列の指定方法を紹介します。
まずは読み込むcsvファイルをこんな感じに作成してみました。
この表で「dummy」と書かれているところが今回読み込みたくない行列です。
測定器なんかでは測定条件が載っていたり、注釈があったりと必要なデータ以外のものが記載されていたりします。
ファイルも置いておきますので、試してみたい方はどうぞ。
まずはこのcsvファイルをPandasのread_csvで読み込むとこうなります。
import pandas as pd
filename = "python-pandas-49.csv"
df = pd.read_csv(filename)
print(df)
実行結果
dummy dummy dummy.1
dummy 0 1 2 3 4 5
1 2 4 6 8 10
2 3 6 9 12 15
3 4 8 12 16 20
NaN 4 5 10 15 20 25
5 6 12 18 24 30
それでは始めていきましょう。
おさらい:スキップする行の指定(skiprows)
まずはおさらいで、スキップする行の指定方法ですが、read_csvのオプション引数として「skiprows=スキップする行数」を加えます。
上から何行スキップするかを指定しますので、何行目をスキップしたいという使い方はできません。
import pandas as pd
filename = "python-pandas-49.csv"
df = pd.read_csv(filename, skiprows=1)
print(df)
実行結果
dummy 0 1 2 3 4 5
0 dummy 1 2 4 6 8 10
1 dummy 2 3 6 9 12 15
2 dummy 3 4 8 12 16 20
3 NaN 4 5 10 15 20 25
4 NaN 5 6 12 18 24 30
1行目がスキップされ、データがある2行目から表示されたことで少しスッキリしました。
読み込む列の指定(usecols)
列の場合はスキップする列を指定するのではなく、読み込む列を指定します。
その際には「usecols=読み込む列のリスト」をread_csvに追加します。
import pandas as pd
filename = "python-pandas-49.csv"
df = pd.read_csv(filename, skiprows=1, usecols=[1, 2, 3, 4, 5, 6])
print(df)
実行結果
0 1 2 3 4 5
0 1 2 4 6 8 10
1 2 3 6 9 12 15
2 3 4 8 12 16 20
3 4 5 10 15 20 25
4 5 6 12 18 24 30
リスト形式で指定すればいいのでrange関数と組み合わせても使えます。
import pandas as pd
filename = "python-pandas-49.csv"
start_col = 1
end_col = 7
df = pd.read_csv(filename, skiprows=1, usecols=range(start_col, end_col))
print(df)
実行結果
0 1 2 3 4 5
0 1 2 4 6 8 10
1 2 3 6 9 12 15
2 3 4 8 12 16 20
3 4 5 10 15 20 25
4 5 6 12 18 24 30
読み込む列を指定するので、全部指定しなくても、欲しい場所だけ指定しても大丈夫です。
import pandas as pd
filename = "python-pandas-49.csv"
df = pd.read_csv(filename, skiprows=1, usecols=[1, 3, 5])
print(df)
実行結果
0 2 4
0 1 4 8
1 2 6 12
2 3 8 16
3 4 10 20
4 5 12 24
次回はPythonでコメントアウトする方法を紹介します。
ではでは今回はこんな感じで。
コメント