私は最近、行を反復する関数.iloc
を使用する関数が非常に遅いことに気付きました。私は.iat
と呼ばれるより速い方法があることを知りました。これは.iloc
に相当すると言われています。私はそれを試し、それは実行時間を約75%削減しました。パンダの.ilocと.iatの違いは?
しかし、私は少し躊躇しています:なぜ、より速い「同等の」方法がありますか?これら2つの内部の仕組みと、その両方が存在する理由とより速いものが存在する理由との間には、ある程度の違いがなければならない。私はどこにでも見てみましたが、でもパンダのドキュメントは、ちょうどその
DataFrame.iat
高速整数の場所スカラーアクセサを述べています。ilocと同様に、iatは整数ベースのルックアップを提供します。これらのインデクサを使用して設定することもできます。
これは役に立ちません。
.iat
には制限がありますか?なぜより速いのですか?それはかゆいですか?または、私は.iat
を使用して喜んで.iloc
を忘れてしまったことに変わりますか?
'、スカラのみを使用.iat''スカラー+ DF、シリーズでの作業.iloc' - >より一般 - > slowier – jezrael
注意注意を:あなたは非常に頻繁に行を反復処理している場合、問題は 'ではありませんat 'vs' loc'ではなく、最初の行をめったに繰り返すべきではありません;-) – JohnE