パンダのilocとlocの違い



Difference Between Iloc



Pandasは、辞書のような方法でdf [‘A’]などの列の値を取得します。これにより、dfのA列が取得されます。特定の行に興味がある場合は?現在、2つの方法があります。1つはilocメソッドで、もう1つはlocメソッドです。 Locは場所の意味を指し、ilocのiは整数を指します。 2つの違いは次のとおりです。

Loc is positioned by the index of the data Iloc is obtained by positioning the position (line number) of the data.

つまり、locはインデックスに従ってインデックス付けされます。たとえば、以下のdfはインデックスを定義し、locはインデックスに従って対応する行にインデックスを付けます。 Ilocはインデックスに従ってインデックス付けされませんが、行番号に従ってインデックス付けされます。行番号は0から始まり、1ずつ増加します。



>>> import pandas as pd >>> import numpy as np >>> df = pd.DataFrame(np.random.randn(5,2),index=range(0,10,2),columns=list('AB')) >>>df A B 0 -0.278122 0.216761 2 -0.779450 -0.117409 4 -1.105425 -0.012334 6 -0.871037 1.047657 8 -0.840948 0.708334 >>> df.iloc[[2]] A B 4 -1.105425 -0.012334 >>> df.loc[[2]] A B 2 -0.77945 -0.117409