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

Python Pandas – Periodオブジェクトからその年がうるう年かどうかを確認する方法

Periodオブジェクトから、その年がうるう年(閏年)かどうかを確認するには、period.is_leap_year プロパティを使用します。このプロパティは、Periodオブジェクトが属する年がうるう年であれば True、そうでなければ False を返します。

まず、必要なライブラリをインポートしましょう。

import pandas as pd

pandas.Period は、一定の期間(時点)を表すオブジェクトです。ここでは、2つのPeriodオブジェクトを作成します。

period1 = pd.Period("2020-09-23 05:55:30")
period2 = pd.Period(freq="Y", year=2021, month=7, day=16, hour=2, minute=35)

作成したPeriodオブジェクトを表示してみます。

print("Period1...\n", period1)
print("Period2...\n", period2)

続いて、それぞれの年がうるう年かどうかを確認します。

res1 = period1.is_leap_year
res2 = period2.is_leap_year

実行例

以下に完全なサンプルコードを示します。

import pandas as pd

# pandas.Period は期間を表すオブジェクト
# 2つのPeriodオブジェクトを作成
period1 = pd.Period("2020-09-23 05:55:30")
period2 = pd.Period(freq="Y", year=2021, month=7, day=16, hour=2, minute=35)

# Periodオブジェクトを表示
print("Period1...\n", period1)
print("Period2...\n", period2)

# その年がうるう年かどうかを確認
res1 = period1.is_leap_year
res2 = period2.is_leap_year

# うるう年の場合はTrue、それ以外はFalseを返す
print("\n1つ目のPeriodオブジェクトの年はうるう年か...\n", res1)
print("\n2つ目のPeriodオブジェクトの年はうるう年か...\n", res2)

出力結果

上記のコードを実行すると、次のような出力が得られます。

Period1...
2020-09-23 05:55:30
Period2...
2021

1つ目のPeriodオブジェクトの年はうるう年か...
True

2つ目のPeriodオブジェクトの年はうるう年か...
False

解説

1つ目のPeriodオブジェクト「2020」は、4で割り切れる年であるためうるう年と判定され、True が返されます。一方、2つ目のPeriodオブジェクト「2021」はうるう年ではないため、False が返されます。

このように、is_leap_year プロパティを使えば、日付や頻度(freq)を指定して作成したPeriodオブジェクトから、簡単にうるう年かどうかを判定できます。日付データの前処理や集計処理において、年ごとの日数計算などが必要な場面で非常に便利です。

  1. Python Pandas:Timedeltaオブジェクトからナノ秒の値を取得する方法

    Timedeltaオブジェクトからナノ秒の値を取得するには、timedelta.nanosecondsプロパティを使用します。まず、必要なライブラリをインポートしましょう。import pandas as pdTimeDeltaは、Python標準のdatetimeライブラリにおける時間差(timedelta)の表現をもとにした機能です。ここでは、Timedeltaオブジェクトを作成します。timedelta = pd.Timedelta(4 days 10 min 25 s 15 ms 33 ns)作成したTimedeltaオブジェクトを表示してみます。print(Timedelta...\

  2. Python・Pandasでインデックスがobject型(dtype)かどうかを確認する方法

    Pandasのインデックスがobject型(dtype)であるかどうかを確認するには、index.is_object()メソッドを使用します。このメソッドは、インデックスの値がobject型であればTrue、そうでなければFalseを返します。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdPandasインデックスの作成文字列や数値など、異なる型が混在したPandasインデックスを作成します。index = pd.Index(["Electronics", 6, 10.5, "Accessories&qu