當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Pandas DataFrame.tz_localize用法及代碼示例


Pandas DataFrame是帶有標簽軸(行和列)的二維大小可變的,可能是異構的表格數據結構。算術運算在行和列標簽上對齊。可以將其視為Series對象的dict-like容器。這是 Pandas 的主要數據結構。

Pandas DataFrame.tz_localize()函數將Series或DataFrame的tz-naive索引本地化為目標時區。此操作將索引本地化。

用法: DataFrame.tz_localize(tz, axis=0, level=None, copy=True, ambiguous=’raise’, nonexistent=’raise’)

參數:
tz:字符串或pytz.timezone對象
axis:定位軸
level:如果軸為MultiIndex,則定位特定級別。否則必須為None
copy:同時複製基礎數據
ambiguous:當時鍾由於DST而向後移動時,可能會產生不明確的時間
nonexistent:在特定時區中不存在不存在的時間,在該特定時區中由於DST而使時鍾向前移動

返回:與輸入相同的類型。

範例1:采用DataFrame.tz_localize()函數將數據幀的給定tz-naive索引本地化到目標時區。

# importing pandas as pd 
import pandas as pd 
  
# Creating the DataFrame 
df = pd.DataFrame({'Weight':[45, 88, 56, 15, 71], 
                   'Name':['Sam', 'Andrea', 'Alex', 'Robin', 'Kia'], 
                   'Age':[14, 25, 55, 8, 21]}) 
  
# Create the index 
index_ = pd.date_range('2010-10-09 08:45', periods = 5, freq ='H', tz = 'US / Central') 
  
# Set the index 
df.index = index_ 
  
# Print the DataFrame 
print(df)

輸出:

現在我們將使用DataFrame.tz_localize()函數將 DataFrame 的給定tz-naive索引本地化為“歐洲/柏林”時區。

# Let's find out the current timezone 
# of the given dataframe 
print(df.index) 
  
# Let's localize the timezone of the 
# dataframe index to 'Europe / Berlin' 
df = df = df.tz_localize(tz = 'Europe / Berlin') 
  
# Let's find out the current timezone 
# of the given dataframe 
print(df.index) 

輸出:

正如我們在輸出中看到的,DataFrame.tz_localize()函數已成功將給定數據幀的tz-naive索引本地化為目標時區。

範例2:采用DataFrame.tz_localize()函數定位給定數據幀的tz-naive索引。給定數據幀的索引是一個MultiIndex。

# importing pandas as pd 
import pandas as pd 
  
# Creating the DataFrame 
df = pd.DataFrame({'Weight':[45, 88, 56, 15, 71], 
                   'Name':['Sam', 'Andrea', 'Alex', 'Robin', 'Kia'], 
                   'Age':[14, 25, 55, 8, 21]}) 
  
# Create the MultiIndex 
index_ = pd.MultiIndex.from_product([['Date'], pd.date_range('2010-10-09 08:45', periods = 5, freq ='H')], 
           names =['Level 1', 'Level 2']) 
  
# Set the index 
df.index = index_ 
  
# Print the DataFrame 
print(df)

輸出:

現在我們將使用DataFrame.tz_localize()函數將給定 DataFrame 的tz-naive索引本地化為“美國/中央”。

# Let's find out the current timezone 
# of the Level 1 of the given dataframe 
print(df.index[1]) 
  
# Let's localize the timezone of the 
# level 1 of the dataframe to 'US / Central' 
df = df.tz_localize(tz = 'US / Central', level = 1) 
  
# Let's find out the current timezone 
# of the level 1 of the given dataframe 
print(df.index[1]) 

輸出:

正如我們在輸出中看到的,DataFrame.tz_localize()函數已成功將給定 DataFrame 的tz-naive索引本地化為“美國/中央”。



相關用法


注:本文由純淨天空篩選整理自Shubham__Ranjan大神的英文原創作品 Python | Pandas DataFrame.tz_localize。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。