Python處理表格日期的常用場景和方法
1. 提取日期
有時候我們只需要從日期中提取出年、月、日等信息,以便更好地進行數據分析和可視化??梢允褂?code>dt屬性實現:
# 創(chuàng)建一個數據集
df = pd.DataFrame({'date': ['2019-05-01 10:00:00', '2020-07-12 12:00:00', '2022-08-10 14:00:00'],
'value': [1, 2, 3]})
# 將日期列轉化為時間格式
df['date'] = pd.to_datetime(df['date'])
# 提取年份
df['year'] = df['date'].dt.year
# 提取月份
df['month'] = df['date'].dt.month
# 提取日
df['day'] = df['date'].dt.day
# 輸出數據集
print(df)
2. 計算時間差
在時間序列分析中,我們通常需要計算時間差,例如兩個日期之間的天數、小時數等??梢允褂?code>timedelta實現:
# 創(chuàng)建一個數據集
df = pd.DataFrame({'date': ['2019-05-01 10:00:00', '2020-07-12 12:00:00', '2022-08-10 14:00:00'],
'value': [1, 2, 3]})
# 將日期列轉化為時間格式
df['date'] = pd.to_datetime(df['date'])
# 計算兩個日期之間的天數
df['days_diff'] = (df['date'] - df['date'].min()).dt.days
# 計算兩個日期之間的月份數
df['months_diff'] = (df['date'].dt.year - df['date'].min().year) * 12 + (df['date'].dt.month - df['date'].min().month)
# 計算兩個日期之間的年份數
df['years_diff'] = (df['date'].dt.year - df['date'].min().year)
# 輸出數據集
print(df)
3. 將日期列設為索引
在時間序列分析中,我們通常需要將日期列設為索引,以便更好地進行數據分析和可視化??梢允褂?code>set_index()函數實現:
# 創(chuàng)建一個數據集
df = pd.DataFrame({'date': ['2019-05-01 10:00:00', '2020-07-12 12:00:00', '2022-08-10 14:00:00'],
'value': [1, 2, 3]})
# 將日期列轉化為時間格式
df['date'] = pd.to_datetime(df['date'])
# 將日期列設為索引
df = df.set_index('date')
# 輸出數據集
print(df)
4. dataframe: 日期格式轉字符串
可以使用strftime()函數將日期格式的列轉為字符串。
在strftime()函數中,%Y表示四位數的年份,%m表示兩位數的月份,%d表示兩位數的日期??梢愿鶕枰M行調整。
下面是一個使用示例:
#如何使用strftime
# 創(chuàng)建一個包含日期的dataframe
df = pd.DataFrame({'date': ['2021-10-01', '2021-10-02', '2021-10-03']})
# 將日期列轉換為日期格式
df['date'] = pd.to_datetime(df['date'])
# 將日期格式的列轉為字符串
df['date'] = df['date'].dt.strftime('%Y-%m-%d')
# 輸出dataframe
print(df)
5. 字符串轉日期格式
5.1 dataframe:字符串轉日期格式 - pd.to_datetime函數
pd.to_datetime()函數是pandas中用于將字符串或者數字轉化為時間格式的函數。該函數通常用于將數據集中的時間列轉化為pandas能夠識別的時間格式,以便更好地進行數據分析和時間序列分析。
下面是使用pd.to_datetime()函數的一個例子:
import pandas as pd
# 創(chuàng)建一個包含日期文本的dataframe
df = pd.DataFrame({'date': ['2021-10-01', '2021-10-02', '2021-10-03']})
# 將日期列轉換為日期格式
df['date'] = pd.to_datetime(df['date'])
# 輸出dataframe
print(df)
5.2 dataframe:字符串轉日期格式 - strptime
除了pd.to_datetime()函數,還可以使用Python中的datetime模塊中的datetime.strptime()函數將字符串轉為日期格式。
下面是一個使用datetime.strptime()函數的例子:
import pandas as pd
from datetime import datetime
# 創(chuàng)建一個包含日期文本的dataframe
df = pd.DataFrame({'date_str': ['2021-10-01', '2021-10-02', '2021-10-03']})
# 將日期列轉換為日期格式
df['date'] = df['date_str'].apply(lambda x: datetime.strptime(x, '%Y-%m-%d'))
# 輸出dataframe
print(df)
在datetime.strptime()函數中,第一個參數是要轉換的字符串,第二個參數是字符串的格式。例如,%Y表示四位數的年份,%m表示兩位數的月份,%d表示兩位數的日期??梢愿鶕枰M行調整。
pd.to_datetime()函數在處理日期時更加靈活和方便,因此一般情況下建議使用pd.to_datetime()函數。
到此這篇關于Python處理表格日期的常用場景和方法的文章就介紹到這了,更多相關Python處理表格日期內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python操作Excel工作簿的示例代碼(\*.xlsx)
這篇文章主要介紹了Python操作Excel工作簿的示例代碼(\*.xlsx),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03

