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

Python(pandas)で特定の月の日数を取得して表示する方法

はじめに

データ分析を行っていると、日付データから「その月が何日あるのか」を知りたい場面があります。本記事では、Pythonのpandasライブラリを使って、特定の月の日数を簡単に取得・表示する方法を解説します。

入力データの前提

ここでは、月の日数を求めたい日付シリーズ(date series)がすでに用意されているものとします。

解決の手順

この問題は、以下のステップで解決できます。

  • 日付シリーズを定義する
  • pd.date_range() の値として 2020-02-10 を設定する
  • Series.dt.daysinmonth を使って、その月の日数を取得する

コード例

実際の動きを理解しやすくするために、完全な実装例を見てみましょう。

import pandas as pd

# 日付範囲を作成(2020年2月10日、期間は1件)
date = pd.date_range('2020-02-10', periods=1)

# Seriesに変換
data = pd.Series(date)

# 月の日数を表示
print(data.dt.daysinmonth)

出力結果

0    29

解説

2020年2月はうるう年にあたるため、29日間あります。Series.dt.daysinmonth を使うことで、うるう年の判定も自動的に行われ、正確な日数を簡単に取得できるのがポイントです。

なお、類似のプロパティとして Series.dt.days_in_month もあり、こちらは同じ結果を返すエイリアスとなっています。用途に応じて使い分けるとよいでしょう。

  1. Pythonで「Hello World!」を表示する方法|printの基本をわかりやすく解説

    Pythonで画面に文字を出力する基本:print Pythonで画面(標準出力)に文字列を表示する最も基本的な方法は、printを使うことです。 >>> print Hello, world Hello, world このようにprintの後に表示したい文字列を書くだけで、ターミナルやコンソールにその内容が出力されます。 複数の値をスペース区切りで表示する 同じ行に複数の文字列などを表示したい場合は、各要素をカンマ(,)で区切ります。カンマの間には自動的に半角スペースが挿入されます。 >>> print Hello,, World Hello, Worl

  2. Pythonで画面に出力するには?print文の基本と使い方を解説

    Pythonで画面(標準出力)に文字や値を表示する最も基本的な方法は、print文を使うことです。>>> print Hello, world Hello, worldカンマ区切りで複数の項目を出力する同じ行に複数の項目をスペースで区切って表示したい場合は、項目の間をカンマで区切ります。>>> print Hello,, World Hello, Worldこの例では、どちらの文字列にもスペースは含まれていませんが、2つのオブジェクトの間にあるカンマによって、print文が自動的にスペースを挿入してくれます。さまざまなデータ型の出力print文は文字列だけで