こんにちは、しらすです。
28日目です。本日の習得スキルは「loc, ilocを使ってpandas.DataFrameにアクセス」です!
loc, ilocを使ってpandas.DataFrameにアクセスでできること
pandas.DataFrame形式で読み込んだデータに対してデータの抜き出すことができます。
使い方
import pandas as pd
df=pd.DataFrame([[1,2,3,4,5,6],
[10,20,30,40,50,60],
[100,200,300,400,500,600],
[1000,2000,3000,4000,5000,6000]],
index=['row_0', 'row_1','row_2','row_3'],
columns=['col_0','col_1','col_2','col_3','col_4','col_5'])
#locの使い方
result1 = df.loc['row_1','col_1'] #行、列を指定して値を取得
結果
おためし編(loc)
行を全選択にして、列を指定
result2 = df.loc[:,'col_0']
行、列をスライスで取得
result3 = df.loc['row_0':'row_2','col_2':'col_5']
複数の指定行、列を取得
result4 = df.loc[['row_0','row_2'],['col_2','col_5']]
ラベルと行列の番号の混合で参照
result5 = df.loc[df.index[2]:,df.columns[3]:'col_5']
おためし編(iloc)
行、列を指定して値を取得
result6 = df.iloc[1,1]
行でスライス
result7 = df.iloc[0:2]
列でスライス
result8 = df.iloc[:,0:2]
ステップでスライス
result9 = df.iloc[::2,::3]
複数の指定行、列を取得
result10 = df.iloc[[1,3],[3,5]]
参考
pandasで任意の位置の値を取得・変更するat, iat, loc, iloc | note.nkmk.me
pandas.DataFrameの任意の位置のデータを取り出したり変更(代入)したりするには、at, iat, loc, ilocを使う。at()ではなくat[]のように記述する。 pandas.DataFrame.at — pandas 2.0.3 documentation pandas.Data ...
コメント