2017-02-23 5 views
1

に2列にタイプフロートデータフレームの列を分割:私は、次のデータフレーム持っているPythonの

>>> print df.head() 
>>> print df.dtypes 

            PRICE 
2017-01-05 11:03:58.425000+00:00 340.143 
2017-01-05 11:23:37.427000+00:00 216.639 
2017-01-05 11:35:10.282000+00:00 201.093 
2017-01-05 12:54:10.408000+00:00 201.093 
2017-01-05 15:41:38.521000+00:00 201.093 

PRICE float64 
dtype: object 

を私は2つの列にこれを分割し、種類float64としてPRICE列を維持し、他を変換したいですカラムをdatetime64[ns]に変更しましたが、float64型のカラムを分割する方法がわかりません!

所望の出力:

>>> print df.head() 
>>> print df.dtypes 
         TIMESTAMP PRICE 
2017-01-05 11:03:58.425000+00:00 340.143 
2017-01-05 11:23:37.427000+00:00 216.639 
2017-01-05 11:35:10.282000+00:00 201.093 
2017-01-05 12:54:10.408000+00:00 201.093 
2017-01-05 15:41:38.521000+00:00 201.093 

TIMESTAMP datetime64[ns] 
PRICE    float64 
dtype: object 

Iは、バック別のデータフレームにそれを再度読み取り、その後、CSVにデータフレームを変換した後、列の名前を変更した後、それらの所望のタイプに列を変換することによってthsi達成することができ、しかしより少ないpythonicで、実行するのに時間がかかります!

おかげ

答えて

1

first列がindexあるので、あなたは、reset_indexを必要とする:

df = df.reset_index().rename(columns={'index':'TIMESTAMP'}) 
print (df) 
       TIMESTAMP PRICE 
0 2017-01-05 11:03:58.425 340.143 
1 2017-01-05 11:23:37.427 216.639 
2 2017-01-05 11:35:10.282 201.093 
3 2017-01-05 12:54:10.408 201.093 
4 2017-01-05 15:41:38.521 201.093 
+0

はあなたに感謝!うまくいく – nrs90

関連する問題