時系列(タプルの順番)では、基準が初めて満たされたときに最も効率的な方法は何ですか?レベルよりも大きな値を見つける - Python Pandas
特に、パンダのデータフレームの列の値が100を超えたときを判断する最も効率的な方法は何ですか?
私は巧妙なベクトル化された解を望んでおり、df.iterrows()
を使用する必要はありませんでした。
たとえば、値が100を超えると、価格データまたはカウントデータ。 DF [ 'COL']> 100
price
date
2005-01-01 98
2005-01-02 99
2005-01-03 100
2005-01-04 99
2005-01-05 98
2005-01-06 100
2005-01-07 100
2005-01-08 98
が、潜在的に非常に大規模なシリーズのため。 iterate(slow)する方が良いか、ベクトル化されたソリューションがありますか?
for row, ind in df.iterrows():
if row['col'] > value_to_check:
breakpoint = row['value_to_record'].loc[ind]
return breakpoint
return None
しかし、私の質問は、効率性(潜在的に、うまくスケールしますベクトル化ソリューション)の詳細です:
df.iterrows()
ソリューションである可能性があります。 "> 99"
df[df['price'].gt(99)].index[0]
戻り"2"
、第2のインデックス列:
データの例は、この問題を解決するのに役立ちます。 –
@ juanpa.arrivillaga私は質問を編集しました - 明確にする希望。 – Jared