2

を使用して時系列データをcsvファイルに書き込むと、csv ファイルが別のアプリケーションで開かれるときに煩わしいすべての日付インデックスにpandas.Series.to_csv追加されます。00:00:00

Date,price
2000-06-01 00:00:00,90.3
2000-06-02 00:00:00,92.69
2000-06-05 00:00:00,96.1

日付値を余分な日付なしで日付として書き込むクリーン/パイソン的な方法はあり00:00:00ますか?

そして、より一般的にはpandas、タイムスタンプではなく日付のインデックス列を持つことは可能ですか?

編集:この質問にアクセスする可能性のある人のために、これは私が思いついた解決策です:

with io.StringIO() as sout:
  data.to_csv(sout, header=True, index=True)
  with open(fname, 'w') as fout:
    fout.write(sout.getvalue().replace(' 00:00:00',''))
4

2 に答える 2

2

Pandas の新しいバージョンでは、 to_csvメソッドの date_format パラメータを使用できます。

df.to_csv(filename, date_format='%Y%m%d')
于 2014-04-01T23:33:27.433 に答える
2

csv ファイルに書き込む前に、シリーズ/データフレームをマップします。

In [8]: import pandas as pd

In [9]: import datetime

In [10]: s = pd.Series([datetime.datetime.utcnow()])

In [11]: s.map(lambda x:x.date() if isinstance(x, datetime.datetime) else x).to_csv('test.csv')

test.csv:

0,2013-03-27
于 2013-03-27T08:40:33.757 に答える