Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonPandas-DateTimeIndexのタイムスタンプを最も近い発生頻度にスナップします


DateTimeIndexのタイムスタンプを最も近い頻度にスナップするには、 DateTimeIndex.snap()を使用します 方法。 freqを使用して頻度を設定します パラメータ。

まず、必要なライブラリをインポートします-

import pandas as pd

期間6、頻度をD、つまり日-

としてDatetimeIndexを作成します。
datetimeindex = pd.date_range('2021-10-20 02:30:50', periods=6, tz='Australia/Adelaide', freq='D')

DateTimeIndexを表示-

print("DateTimeIndex...\n", datetimeindex)

タイムスタンプを最も近い場所にスナップします。つまり、ここで月末になります-

print("\nSnap time stamps to nearest occurring frequency...\n",
datetimeindex.snap(freq='M'))

以下はコードです-

import pandas as pd

# DatetimeIndex with period 6 and frequency as D i.e. day
# The timezone is Australia/Adelaide
datetimeindex = pd.date_range('2021-10-20 02:30:50', periods=6, tz='Australia/Adelaide', freq='D')

# display DateTimeIndex
print("DateTimeIndex...\n", datetimeindex)

# display DateTimeIndex frequency
print("\nDateTimeIndex frequency...\n", datetimeindex.freq)

# Snap time stamps to nearest occurring i.e. Month end here
print("\nSnap time stamps to nearest occurring frequency...\n",
datetimeindex.snap(freq='M'))

出力

これにより、次のコードが生成されます-

DateTimeIndex...
DatetimeIndex(['2021-10-20 02:30:50+10:30', '2021-10-21 02:30:50+10:30',
'2021-10-22 02:30:50+10:30', '2021-10-23 02:30:50+10:30',
'2021-10-24 02:30:50+10:30', '2021-10-25 02:30:50+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq='D')
DateTimeIndex frequency...
<Day>

Snap time stamps to nearest occurring frequency...
DatetimeIndex(['2021-10-31 02:30:50+10:30', '2021-10-31 02:30:50+10:30',
'2021-10-31 02:30:50+10:30', '2021-10-31 02:30:50+10:30',
'2021-10-31 02:30:50+10:30', '2021-10-31 02:30:50+10:30'],
dtype='datetime64[ns, Australia/Adelaide]', freq=None)

  1. PythonPandas-特定の時系列頻度でDateTimeIndexから時間を抽出します

    特定の時系列頻度でDateTimeIndexから時間を抽出するには、 DateTimeIndex.hourを使用します プロパティ。 まず、必要なライブラリをインポートします- import pandas as pd 期間6、頻度をH、つまり時間とするDatetimeIndex。タイムゾーンはオーストラリア/シドニー- datetimeindex = pd.date_range('2021-10-20 02:35:55', periods=6, tz='Australia/Sydney', freq='H') DateTimeIndexを

  2. Python-PandasDataFrameを時間でフィルタリング

    DataFrameを時間でフィルタリングするには、locを使用し、その中に条件を設定してレコードをフェッチします。まず、必要なライブラリをインポートします- import pandas as pd 日付レコードを含むリストの辞書を作成する- d = {'Car': ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'],'Date_of_Purchase': ['2021-07-10', &