0

iso列がdatetime64[ns]フォーマットされたパンダデータフレームがあります。私の目標は、まずこの列を ISO 8601 形式に変換してから、プレーンな文字列に変換することです。

dtrain.shape
(10886, 12)

dtrain.dtypes
season                 int64
holiday                int64
workingday             int64
weather                int64
temp                 float64
atemp                float64
humidity               int64
windspeed            float64
casual                 int64
registered             int64
count                  int64
iso           datetime64[ns]

エラーをスローする StackOverflow に記載されているいくつかのメソッドを試しました。

dtrain['iso'].astype(datetime)
dtrain['iso'].tolist()/1e9

以下は機能しますが、列を両方の形式を含む Python オブジェクトに変換し、str()またはを使用して文字列に変換することはできません。as.type('str')

dtrain['iso'] =dtrain['iso'].dt.strftime('%Y-%m-%dT%H:%M%:%SZ')
dtrain['iso'].dtype
dtype('O')
dtrain['iso'] = dtrain['iso'].astype('str')
dtrain['iso']


datetime
2011-01-01 00:00:00    2011-01-01T00:00:00Z
2011-01-01 01:00:00    2011-01-01T01:00:00Z
2011-01-01 02:00:00    2011-01-01T02:00:00Z
2011-01-01 03:00:00    2011-01-01T03:00:00Z
2011-01-01 04:00:00    2011-01-01T04:00:00Z
                               ...         
2012-12-19 19:00:00    2012-12-19T19:00:00Z
2012-12-19 20:00:00    2012-12-19T20:00:00Z
2012-12-19 21:00:00    2012-12-19T21:00:00Z
2012-12-19 22:00:00    2012-12-19T22:00:00Z
2012-12-19 23:00:00    2012-12-19T23:00:00Z
Name: iso, Length: 10886, dtype: object

この場合、pandas データフレーム オブジェクト列を文字列列 (ISO 8601 形式のみを含む) に変換する回避策は何ですか?

4

0 に答える 0