2016-12-02 6 views
0

で実行されるようになりますどのくらいの時間関数で、私は機能を定義したのpython

def func1(id): 
    .... 
    logic 
    dataframe2.to_sql(query) 
    .... 

言ういくつかの操作を実行し、データベース

に結果を格納し、私はパンダのデータフレーム内のテーブルを持っていますその中にid列があり、別のIDを持つ約1000行があります

私はこの機能を.apply関数を使って呼び出します。

df['id'].apply(func1) 

これは一度に1つのIDを取得し、操作を実行してデータベースに格納します。データフレーム内のすべてのIDについても同じことが起こります。

df内のすべてのIDに対して を実行するのに要した時間の合計を計算する方法はありますか?

私は多分timeパッケージを使用して考えていました。私は初心者です。

import time 
start_time = time.time() 
main() 
print("--- %s seconds ---" % (time.time() - start_time)) 

これを行う方法はありますか?

+0

@EdChum確かに!なぜあなたは投票に投票しませんか?今やりました。 –

+0

@ Jean-FrançoisFabre私は近くの票を使い果たしました。そうでなければ、私はこのハンマーを欺くでしょう。 – EdChum

+0

ごめんなさい。 Pythonのゴールドバッジに私の方法を働いているが、パスは長くなります:) –

答えて

0

コンテキストマネージャを使用してチェックすることもできます。それを再利用したいときには時間を節約することができます。

>>> class TimeMyFunc(object): 
...  def __enter__(self): 
...   self.begin = time.time() 
...  def __exit__(self,*args): 
...   elapsed = time.time() - self.begin 
...   print elapsed 
...   
>>> with TimeMyFunc(): 
...  time.sleep(1) 
...  
1.0 
関連する問題