列を日付形式に変換する (Pandas データフレーム) 質問する

列を日付形式に変換する (Pandas データフレーム) 質問する

次のようなパンダデータフレームがあります。

Symbol  Date
A       02/20/2015
A       01/15/2016
A       08/21/2015

で並べ替えたいのですDateが、列は だけですobject

列を日付オブジェクトにしようとしましたが、その形式が必要な形式ではないという問題が発生しました。必要な形式は2015-02-20,etcです。

そこで今、NumPy を使って「アメリカの」日付を ISO 標準に変換し、日付オブジェクトにして並べ替えられるようにする方法を考えています。

これらのアメリカの日付を ISO 標準に変換するにはどうすればよいでしょうか。あるいは、パンダ内でもっと簡単な方法が見つからないのでしょうか。

ベストアンサー1

datetime オブジェクトに変換するには を使用できますpd.to_datetime()。format パラメータが必要ですが、今回の場合は必要ないと思います。

>>> import pandas as pd
>>> df = pd.DataFrame( {'Symbol':['A','A','A'] ,
    'Date':['02/20/2015','01/15/2016','08/21/2015']})
>>> df
         Date Symbol
0  02/20/2015      A
1  01/15/2016      A
2  08/21/2015      A
>>> df['Date'] =pd.to_datetime(df.Date)
>>> df.sort('Date') # This now sorts in date order
        Date Symbol
0 2015-02-20      A
2 2015-08-21      A
1 2016-01-15      A

今後の検索では、ソートステートメントを変更できます。

>>> df.sort_values(by='Date') # This now sorts in date order
        Date Symbol
0 2015-02-20      A
2 2015-08-21      A
1 2016-01-15      A

おすすめ記事