2013-06-16 28 views

答えて

214

最も簡単な方法は、to_datetimeを使用することです:

df['col'] = pd.to_datetime(df['col']) 

それはまた、欧州回dayfirst引数を提供しています(ただし、this isn't strictを注意してください)。

ここではアクションである:

In [11]: pd.to_datetime(pd.Series(['05/23/2005'])) 
Out[11]: 
0 2005-05-23 00:00:00 
dtype: datetime64[ns] 

あなたが特定のformatを渡すことができます。

In [12]: pd.to_datetime(pd.Series(['05/23/2005']), format="%m/%d/%Y") 
Out[12]: 
0 2005-05-23 
dtype: datetime64[ns] 
+0

再生していただきありがとうございます。そのフォーマットを定義できますか? '%d /%m /%Y'のようなものですか?非常に高く評価されています – perigee

+0

さて、それはそのオプションを持っていると主張しますが、これは無視されると思います。 : –

+0

それは動作しますが、フォーマット文字列はうまくいきます、ありがとうございます – perigee

6

あなたの日付列はフォーマットの文字列である場合は「2017年1月1日」を ますpandas astypeを使用してdatetimeに変換できます。

df['date'] = df['date'].astype('datetime64[ns]')

たり、デイ精度ではなくナノ秒をしたい場合は、pandas.to_datetime

を使用する場合など

print(type(df_launath['date'].iloc[0]))

利回り

<class 'pandas._libs.tslib.Timestamp'> 同じ[D]をdatetime64使用

他と試すことができますフォーマットは '%Y-%m-%d'ですが、少なくともこれは機能します。

関連する問題