首頁 > 後端開發 > Python教學 > 使用Python中的Pandas顯示給定年份的所有星期日

使用Python中的Pandas顯示給定年份的所有星期日

WBOY
發布: 2023-08-20 11:37:18
轉載
957 人瀏覽過

使用Python中的Pandas顯示給定年份的所有星期日

Pandas 是一個強大的 Python 函式庫,用於資料處理和分析。 Pandas 的一個關鍵特性是其有效處理日期和時間資料的能力。在本文中,我們將展示如何使用 Pandas 來顯示給定年份的所有星期日。

在本文中,我們將探討如何使用Pandas,一個在Python中廣受歡迎的資料操作庫,來顯示給定年份的所有星期日。我們將逐步介紹提取一年中的星期日並以可讀格式顯示它們的過程。

先決條件

在開始之前,請確保您的電腦上已安裝Pandas。您可以透過在終端機中執行以下命令來安裝它 -

pip install pandas
Getting Started
登入後複製

在Python中使用Pandas

首先,我們將開始匯入Pandas庫並建立一個Pandas DataFrame來儲存一年中的日期。我們將使用date_range函數產生一年的日期範圍。以下是產生2023年日期範圍的代碼 −

##
import pandas as pd
year = 2023
start_date = pd.to_datetime(f'{year}-01-01')
end_date = pd.to_datetime(f'{year}-12-31')
dates = pd.date_range(start_date, end_date)
登入後複製

我們使用pd.to_datetime函數建立了一個start_date和一個end_date物件。使用pd.date_range函數建立了dates變量,該函數從start_date到end_date產生了一系列日期。

提取星期日

要從日期範圍中提取星期日,我們將使用Pandas提供的dt訪問器。 dt存取器提供了各種方法來操作Pandas DataFrame的日期和時間值。我們將使用dt存取器的day_name方法來取得dates DataFrame中每個日期的星期幾名稱。以下是提取星期日的程式碼:

sundays = dates[dates.dt.day_name() == 'Sunday']
登入後複製

dates.dt.day_name()方法傳回dates DataFrame中每個日期的星期幾名稱。然後,我們將dates DataFrame過濾,只保留星期日的行。

顯示星期日

為了以可讀的格式顯示星期日,我們將使用dt訪問器的strftime方法。 strftime方法用於格式化Pandas DataFrame的日期和時間值。以下是顯示星期日的程式碼:

for sunday in sundays:
   print(sunday.strftime('%Y-%m-%d'))
登入後複製

strftime('%Y-%m-%d')方法將日期格式化為YYYY-MM-DD格式。然後,我們透過sundays DataFrame循環,並以所需的格式列印每個星期日。

Final Code

的中文翻譯為:

最終程式碼

#這是顯示2023年所有星期日的完整程式碼 −

import pandas as pd
year = 2023
start_date = pd.to_datetime(f'{year}-01-01')
end_date = pd.to_datetime(f'{year}-12-31')
dates = pd.date_range(start_date, end_date)
sundays = dates[dates.dt.day_name() == 'Sunday']
for sunday in sundays:
   print(sunday.strftime('%Y-%m-%d'))
登入後複製

輸出

DatetimeIndex(['2023-01-01', '2023-01-08', '2023-01-15', '2023-01-22',
               '2023-01-29', '2023-02-05', '2023-02-12', '2023-02-19',
               '2023-02-26', '2023-03-05', '2023-03-12', '2023-03-19',
               '2023-03-26', '2023-04-02', '2023-04-09', '2023-04-16',
               '2023-04-23', '2023-04-30', '2023-05-07', '2023-05-14',
               '2023-05-21', '2023-05-28', '2023-06-04', '2023-06-11',
               '2023-06-18', '2023-06-25', '2023-07-02', '2023-07-09',
               '2023-07-16', '2023-07-23', '2023-07-30', '2023-08-06',
               '2023-08-13', '2023-08-20', '2023-08-27', '2023-09-03',
               '2023-09-10', '2023-09-17', '2023-09-24', '2023-10-01',
               '2023-10-08', '2023-10-15', '2023-10-22', '2023-10-29',
               '2023-11-05', '2023-11-12', '2023-11-19', '2023-11-26',
               '2023-12-03', '2023-12-10', '2023-12-17', '2023-12-24',
               '2023-12-31'],
              dtype='datetime64[ns]', freq=None)>
登入後複製

使用Pandas顯示給定年份的所有星期日

要顯示給定年份的所有星期日,我們首先需要建立一個Pandas DataFrame,日期範圍跨越整個年份。然後,我們可以過濾此DataFrame,只包括星期日。

這是完成此任務的Python程式碼。在這裡。讓我們逐步分解程式碼−

  • 我們使用 import 語句導入 Pandas 函式庫。

  • 我們使用pd.date_range()函數來建立一個跨越整個年份的日期範圍。我們分別使用start和end參數指定開始結束日期。我們將'2022'替換為所需的年份。

  • 我們透過使用日期範圍的.weekday 屬性來篩選只包含星期日的日期範圍,該屬性將星期幾作為整數傳回(星期一= 0,星期二= 1,等等)。星期日用整數6表示。

  • 我們將篩選後的日期範圍儲存在一個名為sundays的變數中。

  • 最後,我們透過在 sundays 變數上呼叫 print() 函數來列印星期日的列表。

import pandas as pd
# Replace '2022' with the desired year
date_range = pd.date_range(start='1/1/2022', end='12/31/2022')
# Filter the date range to only include Sundays
sundays = date_range[date_range.weekday == 6]
# Print the list of Sundays
print(sundays)
登入後複製

輸出

當您執行上述程式碼時,您應該會看到給定年份中所有星期日的清單−

DatetimeIndex(['2022-01-02', '2022-01-09', '2022-01-16', '2022-01-23',
               '2022-01-30', '2022-02-06', '2022-02-13', '2022-02-20',
               '2022-02-27', '2022-03-06', '2022-03-13', '2022-03-20',
               '2022-03-27', '2022-04-03', '2022-04-10', '2022-04-17',
               '2022-04-24', '2022-05-01', '2022-05-08', '2022-05-15',
               '2022-05-22', '2022-05-29', '2022-06-05', '2022-06-12',
               '2022-06-19', '2022-06-26', '2022-07-03', '2022-07-10',
               '2022-07-17', '2022-07-24', '2022-07-31', '2022-08-07',
               '2022-08-14', '2022-08-21', '2022-08-28', '2022-09-04',
               '2022-09-11', '2022-09-18', '2022-09-25', '2022-10-02',
               '2022-10-09', '2022-10-16', '2022-10-23', '2022-10-30',
               '2022-11-06', '2022-11-13', '2022-11-20', '2022-11-27',
               '2022-12-04', '2022-12-11', '2022-12-18', '2022-12-25'],
              dtype='datetime64[ns]', freq=None)
登入後複製

結論

在本文中,我們探討如何使用Pandas提取和顯示給定年份的所有星期日。我們使用了Pandas庫的date_range、dt和strftime方法來產生日期範圍,提取星期日,並以可讀格式顯示它們。 Pandas提供了一種強大而靈活的方式來操作Python中的日期和時間值,使其成為資料分析和視覺化的有用工具。

以上是使用Python中的Pandas顯示給定年份的所有星期日的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板