タイムデルタ操作の結果が間違っています

デビッド

dta_hはDataFrameであり、dta_h.Datetimeは次のようになります。

0    2013-03-01 00:00:00
1    2013-02-28 23:00:00
2    2013-02-28 22:00:00
3    2013-02-28 21:00:00
...
Name: Datetime, Length: 63001, dtype: datetime64[ns]

最近まで(これが何を意味するかについては後で説明します)、これを実行して、各期間の1時間を差し引くことができました。

dta_h.Datetime-np.timedelta(hours=1)

しかし今、私が上記を行うと、私はこれを手に入れています:

0    2013-03-01 00:11:34.967296
1    2013-02-28 23:11:34.967296
2    2013-02-28 22:11:34.967296
3    2013-02-28 21:11:34.967296
...

これは明らかに私が望んでいることではありません。ただし、これは次のとおりです。

[i-timedelta(hours=1) for i in dta_h.Datetime ]

それでも望ましい結果が得られます。

0    2013-02-28 23:00:00
1    2013-02-28 22:00:00
2    2013-02-28 21:00:00
3    2013-02-28 20:00:00
....
Length: 63001, dtype: datetime64[ns]

この問題は、Pandas 0.11にアップグレードしたときに始まったと99%確信しています。私は、成功せずにそれを説明するかもしれないバージョンの違いについてドキュメントを探し回っています。私もこの投稿を見つけました:

numpy timedelta64 [ms]のパンダ処理

これはこのパンダの問題を指します

https://github.com/pydata/pandas/issues/3009

私がそこで読んだものに基づいて、私は試しました:

dta_h.Datetime-np.timedelta64(hours=1)

しかし、これは実際には何もしません。

0    2013-03-01 00:00:00
1    2013-02-28 23:00:00
2    2013-02-28 22:00:00
3    2013-02-28 21:00:00
...

1)df-np.timedeltaが機能しなくなった理由、および2)内包リストバージョンが引き続き機能する理由について何か考えはありますか?助けてくれてありがとう。

参考までに、私はNumpy 1.6.2を使用していますが、先ほど申し上げましたが、最近Pandas0.9から0.11にアップグレードしました。

ジェフ

Numpyは、タイムデルタの1.6.2 / 1ではかなりバグがあります。30分未満の間隔で動作します(理由はわかりません)。最善の策は、より安定したnumpy 1.7.0 / 1にアップグレードし、datetime.timedeltaを使用することです。

In [33]: df = DataFrame(dict(date = [Timestamp('20130301'),Timestamp('20130228 23:00:00'),Timestamp('20130228 22:00:00'),Timestamp('20130228 21:00:00')]))

In [34]: df
Out[34]: 
                 date
0 2013-03-01 00:00:00
1 2013-02-28 23:00:00
2 2013-02-28 22:00:00
3 2013-02-28 21:00:00

In [37]: df['date'] + timedelta(hours=1)
Out[37]: 
0   2013-03-01 01:00:00
1   2013-03-01 00:00:00
2   2013-02-28 23:00:00
3   2013-02-28 22:00:00
Name: date, dtype: datetime64[ns]

In [38]: np.__version__
Out[38]: '1.7.1'

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Objective-Cでは、fabsf()の結果タイプが間違っています

分類Dev

クエリ結果でのHibernate結合継承のタイプが間違っています

分類Dev

私のカスタムモバイルネットトレーニングモデルは結果を表示していません。私は何が間違っているのですか?

分類Dev

CSS要素のタイトルが間違っています

分類Dev

FlutterFirebaseデータベースのタイムスタンプの順序が間違っています

分類Dev

MySQLの結合が間違っています結果

分類Dev

lttngのタイムスタンプが間違っています

分類Dev

Syslogのタイムスタンプが間違っています

分類Dev

eulerProjectの関数の結果が間違っています

分類Dev

RTSPストリームをファイルに保存するときのフレームレートとメタデータが間違っています

分類Dev

&でデータをフィルタリングしたいのですが、間違った結果が得られました

分類Dev

MDX結果の合計が間違っています

分類Dev

ElasticSearch結果のスコアが間違っています

分類Dev

dimplejs散布図の結果が間違っています

分類Dev

Application.Sumの結果が間違っています

分類Dev

NSDateFormatter dateFromStringの結果が間違っていますか?

分類Dev

!dumpheapの結果が間違っています

分類Dev

Python math.arctan()の結果が間違っていますか?

分類Dev

usort関数の結果が間違っています

分類Dev

リアルタイムデータベースにデータを追加していますが、間違った子を追加しています

分類Dev

デイライト節約時間文字列をタイムスタンプに変換すると、間違った結果が得られます

分類Dev

php my adminのデフォルトのタイムスタンプは、正しいタイムゾーンを使用しても間違っています

分類Dev

AndroidStudioのカスタムクラスのファイルパスが間違っています

分類Dev

変数のデータ型が間違っていますか?

分類Dev

SQLServerの日時タイプのデフォルト値が間違っています

分類Dev

第1引数のタイプが間違っています

分類Dev

MOVF操作後の作業レジスタの値が間違っています

分類Dev

TwinCAT3-MatlabでADSデータストリームから読み取るときのタイムスタンプの値が間違っています

分類Dev

SQLの結果が重複しています:クエリのスペルが間違っているか、データベース構造が不適切ですか?

Related 関連記事

  1. 1

    Objective-Cでは、fabsf()の結果タイプが間違っています

  2. 2

    クエリ結果でのHibernate結合継承のタイプが間違っています

  3. 3

    私のカスタムモバイルネットトレーニングモデルは結果を表示していません。私は何が間違っているのですか?

  4. 4

    CSS要素のタイトルが間違っています

  5. 5

    FlutterFirebaseデータベースのタイムスタンプの順序が間違っています

  6. 6

    MySQLの結合が間違っています結果

  7. 7

    lttngのタイムスタンプが間違っています

  8. 8

    Syslogのタイムスタンプが間違っています

  9. 9

    eulerProjectの関数の結果が間違っています

  10. 10

    RTSPストリームをファイルに保存するときのフレームレートとメタデータが間違っています

  11. 11

    &でデータをフィルタリングしたいのですが、間違った結果が得られました

  12. 12

    MDX結果の合計が間違っています

  13. 13

    ElasticSearch結果のスコアが間違っています

  14. 14

    dimplejs散布図の結果が間違っています

  15. 15

    Application.Sumの結果が間違っています

  16. 16

    NSDateFormatter dateFromStringの結果が間違っていますか?

  17. 17

    !dumpheapの結果が間違っています

  18. 18

    Python math.arctan()の結果が間違っていますか?

  19. 19

    usort関数の結果が間違っています

  20. 20

    リアルタイムデータベースにデータを追加していますが、間違った子を追加しています

  21. 21

    デイライト節約時間文字列をタイムスタンプに変換すると、間違った結果が得られます

  22. 22

    php my adminのデフォルトのタイムスタンプは、正しいタイムゾーンを使用しても間違っています

  23. 23

    AndroidStudioのカスタムクラスのファイルパスが間違っています

  24. 24

    変数のデータ型が間違っていますか?

  25. 25

    SQLServerの日時タイプのデフォルト値が間違っています

  26. 26

    第1引数のタイプが間違っています

  27. 27

    MOVF操作後の作業レジスタの値が間違っています

  28. 28

    TwinCAT3-MatlabでADSデータストリームから読み取るときのタイムスタンプの値が間違っています

  29. 29

    SQLの結果が重複しています:クエリのスペルが間違っているか、データベース構造が不適切ですか?

ホットタグ

アーカイブ