2016-08-19 16 views
0

私はPythonのアドバイスを見て、2つの日付の差を計算する方法を試しました。 Difference between two dates?。それは機能しますが、私はデータフレーム内の変数を扱っています。Pythonデータフレームの2つの日付の差を計算します。

df['DAYSDIFF'] = (datetime.datetime.strptime(df['SDATE'],"%d/%m/%Y") - datetime.datetime.strptime(df['QDATE'],"%d/%m/%Y")) 

おかげで再び助けを:

TypeError: strptime() argument 1 must be str, not Series 

はここのコードです:私は、私が読んだアドバイスを以下だが、私は取得しています確信しています!

答えて

0

使用pandas.to_datetime

df["SDATE"] = pd.to_datetime(df["SDATE"], format="%d/%m/%Y") 
df["QDATE"] = pd.to_datetime(df["QDATE"], format="%d/%m/%Y") 

df["DAYSDIFF"] = df["SDATE"] - df["QDATE"] 

datetime.strptimeはパンダのシリーズを認識しないと、文字列を期待しているので。

+0

ありがとうございます。 DAYSDIFFは2の代わりに「2日」として出ていますが、これは書式設定のものですか? – Angus

+0

はい、これは単なる書式設定のものです。時系列データの詳細については、[documentation](http://pandas.pydata.org/pandas-docs/stable/timeseries.html)を参照してください。 –

+1

'DAYSDIFF'を' np.timedelta(1、 "D") 'で区切ってintを得ることができます。 – jdmcbr

関連する問題