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

Python Pandas入門:date_range()で範囲内の日付を生成する方法

PythonのPandasライブラリでは、date_range()メソッドを使うことで、指定した範囲内の日付を簡単に生成できます。時系列データの分析や前処理において非常に便利な機能です。

pandasのインポート

まず、必要なpandasライブラリをエイリアス(別名)付きでインポートします。慣例として「pd」という別名が広く使われています。

import pandas as pd

date_range()で日付範囲を生成する

次に、生成したい日付の開始日を指定します。ここでは例として、2021年6月1日から始まり、期間は60日間とします。periods=60を指定することで、開始日から60日分の日付が自動的に生成されます。

dates = pd.date_range('6/1/2021', periods=60)

コード例全体

以下が完全なサンプルコードです。

import pandas as pd

# 範囲内の日付を生成
# 期間は60日(2021年6月1日からの60日間)
dates = pd.date_range('6/1/2021', periods=60)

print("範囲内の日付を表示...\n", dates)

実行結果

このコードを実行すると、以下のような出力が得られます。

範囲内の日付を表示...
    DatetimeIndex(['2021-06-01', '2021-06-02', '2021-06-03', '2021-06-04',
                   '2021-06-05', '2021-06-06', '2021-06-07', '2021-06-08',
                   '2021-06-09', '2021-06-10', '2021-06-11', '2021-06-12',
                   '2021-06-13', '2021-06-14', '2021-06-15', '2021-06-16',
                   '2021-06-17', '2021-06-18', '2021-06-19', '2021-06-20',
                   '2021-06-21', '2021-06-22', '2021-06-23', '2021-06-24',
                   '2021-06-25', '2021-06-26', '2021-06-27', '2021-06-28',
                   '2021-06-29', '2021-06-30', '2021-07-01', '2021-07-02',
                   '2021-07-03', '2021-07-04', '2021-07-05', '2021-07-06',
                   '2021-07-07', '2021-07-08', '2021-07-09', '2021-07-10',
                   '2021-07-11', '2021-07-12', '2021-07-13', '2021-07-14',
                   '2021-07-15', '2021-07-16', '2021-07-17', '2021-07-18',
                   '2021-07-19', '2021-07-20', '2021-07-21', '2021-07-22',
                   '2021-07-23', '2021-07-24', '2021-07-25', '2021-07-26',
                   '2021-07-27', '2021-07-28', '2021-07-29', '2021-07-30'],
                  dtype='datetime64[ns]', freq='D')

ポイント解説

  • DatetimeIndex: date_range()の戻り値はDatetimeIndex型で、DataFrameやSeriesのインデックスとしてそのまま利用できます。
  • freq='D': 出力末尾にあるfreq='D'は、日ごとの頻度(Daily)で日付が生成されていることを示しています。引数にfreq='M'(月ごと)やfreq='H'(時間ごと)などを指定すれば、さまざまな周期で日付や時刻を生成することも可能です。
  • start・end引数: periodsの代わりにend='2021/7/30'のように終了日を指定して範囲を定義することもできます。

このように、pd.date_range()を使えば、開始日と期間を指定するだけで連続した日付データを一瞬で作成でき、時系列分析の基盤として活用できます。

  1. Pythonで行列(マトリックス)を初期化する2つの方法

    はじめに この記事では、Python 3.xにおいて2次元リストを使って行列(マトリックス)を初期化する方法を解説します。行列の初期化には大きく分けて2つのアプローチがあり、それぞれ特徴が異なります。 方法1:リスト内包表記を使う(Pythonらしい書き方) まずは、Pythonならではの直感的な初期化方法です。リスト内包表記を活用することで、内側のリスト(各行)を生成しながら、それを複数行へと一気に拡張できます。コードが簡潔になり、Pythonicなスタイルとして好まれる書き方です。 コード例 # 行数を指定 N = 3 # 列数を指定 M = 3 # リスト内包表記で行列を初期化(各要

  2. Pythonで数値のピラミッドを生成する方法|基本パターンをコード例付きで解説

    Pythonでは、数値を使ったピラミッド(三角形のパターン)を生成する方法がいくつかあります。この記事では、最も基本的な3つのパターンを、実際のコード例と出力結果とともにわかりやすく解説します。 パターン1:各行で1から連番を出力する まずは基本となる形です。外側のループで行数を制御し、内側のループで各行に出力する数字の個数を制御します。内側のループ変数 j に1を足すことで、1から始まる連番を表示しています。 for i in range(5): for j in range(i + 1): print(j + 1, end=) print() 出力結果 1