0

値とペアになった不規則な間隔でエポック GMT タイムスタンプを持つ CSV があります。CSV から読み取ろうとしましたが、すべてのタイム ゾーンがローカル タイムゾーンにシフトされます。そのまま(GMTで)読み取るにはどうすればよいですか?次に、再サンプルを 1 分間隔にしたいと思いますが、ユーザーが指定した値よりも大きいギャップをスキップしたいと思います。これが不可能な場合、1 分にリサンプリングする方法はありますが、ギャップには 0.0 のような任意の値を入れますか?

 Data:
 Time,Data
 1354979750250,0.2343
 1354979755250,2.3433
 1354979710250,1.2343

 def date_utc(s):
     return parse(s, tzinfos=tzutc)

 x = read_csv("time2.csv", date_parser=date_utc, converters={'Time': lambda x:datetime.fromtimestamp(int(x)/1000.)}).set_index('Time')
4

1 に答える 1

1

次のように、ローカル日時を GMT 日時に変換します。

gmtDatetime = localdatetime - datetime.timedelta(hours=8)

タイムゾーンは +08 (中国) です。

または「datetime.utcfromtimestamp」を使用します。

classmethod datetime.utcfromtimestamp(timestamp)
classmethod datetime.fromtimestamp(timestamp, tz=None)

POSIX タイムスタンプに対応する UTC 日時を tzinfo None で返します。これにより、タイムスタンプがプラットフォーム C の gmtime() 関数でサポートされている値の範囲外の場合は OverflowError が発生し、gmtime() が失敗した場合は OSError が発生する可能性があります。これは 1970 年から 2038 年までの年に制限されるのが一般的です。 fromtimestamp() も参照してください。

于 2013-01-17T03:01:48.890 に答える