Python | Pandas DataFrame.tz_localize
Last Updated :
30 May, 2022
Pandas DataFrame is a two-dimensional size-mutable, potentially heterogeneous tabular data structure with labeled axes (rows and columns). Arithmetic operations align on both row and column labels. It can be thought of as a dict-like container for Series objects. This is the primary data structure of the Pandas. Pandas DataFrame.tz_localize() function localize tz-naive index of a Series or DataFrame to target time zone. This operation localizes the Index.
Syntax: DataFrame.tz_localize(tz, axis=0, level=None, copy=True, ambiguous=’raise’, nonexistent=’raise’) Parameter : tz : string or pytz.timezone object axis : the axis to localize level : If axis is a MultiIndex, localize a specific level. Otherwise must be None copy : Also make a copy of the underlying data ambiguous : When clocks moved backward due to DST, ambiguous times may arise nonexistent : A nonexistent time does not exist in a particular timezone where clocks moved forward due to DST Returns : Same type as the input.
Example #1: Use DataFrame.tz_localize() function to localize the given tz-naive index of the dataframe to the target timezone.
Python3
import pandas as pd
df = pd.DataFrame({ 'Weight' :[ 45 , 88 , 56 , 15 , 71 ],
'Name' :[ 'Sam' , 'Andrea' , 'Alex' , 'Robin' , 'Kia' ],
'Age' :[ 14 , 25 , 55 , 8 , 21 ]})
index_ = pd.date_range( '2010-10-09 08:45' , periods = 5 , freq = 'H' , tz = 'US / Central' )
df.index = index_
print (df)
|
Output : Now we will use DataFrame.tz_localize() function to localize the given tz-naive index of the dataframe to the ‘Europe/Berlin’ timezone.
Python3
print (df.index)
df = df = df.tz_localize(tz = 'Europe / Berlin' )
print (df.index)
|
Output : As we can see in the output, the DataFrame.tz_localize() function has successfully localized the tz-naive index of the given dataframe to the target timezone. Example #2 : Use DataFrame.tz_localize() function to localize the tz-naive Index of the given dataframe. The Index of the given dataframe is a MultiIndex.
Python3
import pandas as pd
df = pd.DataFrame({ 'Weight' :[ 45 , 88 , 56 , 15 , 71 ],
'Name' :[ 'Sam' , 'Andrea' , 'Alex' , 'Robin' , 'Kia' ],
'Age' :[ 14 , 25 , 55 , 8 , 21 ]})
index_ = pd.MultiIndex.from_product([[ 'Date' ], pd.date_range( '2010-10-09 08:45' , periods = 5 , freq = 'H' )],
names = [ 'Level 1' , 'Level 2' ])
df.index = index_
print (df)
|
Output : Now we will use DataFrame.tz_localize() function to localize the tz-naive index of the given dataframe to ‘US/Central’.
Python3
print (df.index[ 1 ])
df = df.tz_localize(tz = 'US / Central' , level = 1 )
print (df.index[ 1 ])
|
Output : As we can see in the output, the DataFrame.tz_localize() function has successfully localized the tz-naive index of the given dataframe to ‘US/Central’.
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...