<p dir="auto">When storing a DataFrame using HDFStore the datetime information is altered. My guess is that there is some problem with daylight saving and time zones when the DataFrame is loaded from the h5 file.  An example:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="In [1]: from pandas import *

In [2]: df = DataFrame([0,1], [datetime(2011, 3, 27, 2, 2, 2),datetime(2011, 3, 27, 3, 2, 2)])

In [3]: s = HDFStore(&quot;test.h5&quot;)

In [4]: s[&quot;test&quot;] = df

In [5]: df
Out[5]: 
                     0
2011-03-27 02:02:02  0
2011-03-27 03:02:02  1

In [6]: s[&quot;test&quot;]
Out[6]: 
                     0
2011-03-27 03:02:02  0
2011-03-27 03:02:02  1"><pre class="notranslate"><code class="notranslate">In [1]: from pandas import *

In [2]: df = DataFrame([0,1], [datetime(2011, 3, 27, 2, 2, 2),datetime(2011, 3, 27, 3, 2, 2)])

In [3]: s = HDFStore("test.h5")

In [4]: s["test"] = df

In [5]: df
Out[5]: 
                     0
2011-03-27 02:02:02  0
2011-03-27 03:02:02  1

In [6]: s["test"]
Out[6]: 
                     0
2011-03-27 03:02:02  0
2011-03-27 03:02:02  1
</code></pre></div>
<p dir="auto">E.g. for reindex on panel</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="elp on method reindex in module pandas.core.generic:

reindex(self, *args, **kwargs) method of pandas.core.panel.Panel instance
    Conform DataFrame to new index with optional filling logic, placing
    NA/NaN in locations having no value in the previous index. A new object
    is produced unless the new index is equivalent to the current one and
    copy=False

    Parameters
    ----------
    axes : array-like, optional (can be specified in order, or as keywords)
        New labels / index to conform to. Preferably an Index object to
        avoid duplicating data
    method : {'backfill', 'bfill', 'pad', 'ffill', None}, default None
        Method to use for filling holes in reindexed DataFrame
        pad / ffill: propagate last valid observation forward to next valid
        backfill / bfill: use NEXT valid observation to fill gap
    copy : boolean, default True
        Return a new object, even if the passed indexes are the same
    level : int or name
        Broadcast across a level, matching Index values on the
        passed MultiIndex level
    fill_value : scalar, default np.NaN
        Value to use for missing values. Defaults to NaN, but can be any
        &quot;compatible&quot; value
    limit : int, default None
        Maximum size gap to forward or backward fill
    takeable : boolean, default False
        treat the passed as positional values

    Examples
    --------"><pre class="notranslate"><code class="notranslate">elp on method reindex in module pandas.core.generic:

reindex(self, *args, **kwargs) method of pandas.core.panel.Panel instance
    Conform DataFrame to new index with optional filling logic, placing
    NA/NaN in locations having no value in the previous index. A new object
    is produced unless the new index is equivalent to the current one and
    copy=False

    Parameters
    ----------
    axes : array-like, optional (can be specified in order, or as keywords)
        New labels / index to conform to. Preferably an Index object to
        avoid duplicating data
    method : {'backfill', 'bfill', 'pad', 'ffill', None}, default None
        Method to use for filling holes in reindexed DataFrame
        pad / ffill: propagate last valid observation forward to next valid
        backfill / bfill: use NEXT valid observation to fill gap
    copy : boolean, default True
        Return a new object, even if the passed indexes are the same
    level : int or name
        Broadcast across a level, matching Index values on the
        passed MultiIndex level
    fill_value : scalar, default np.NaN
        Value to use for missing values. Defaults to NaN, but can be any
        "compatible" value
    limit : int, default None
        Maximum size gap to forward or backward fill
    takeable : boolean, default False
        treat the passed as positional values

    Examples
    --------
</code></pre></div>
<p dir="auto">Functions that need parameters list/explanation:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> swapaxes</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> pop [what does 'items' mean?]</li>
</ul>
<p dir="auto">Functions that only need list of axes:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> filter [need to check if it should be defined for Series at all]</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> fillna [Series, Frame]</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> reindex_axis [needs class name + axes]</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> rename [might need a bit more logic to do docstring + note that args interpreted like axes??]</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> transpose</li>
</ul>
<p dir="auto">Functions needing a little work:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> reindex
<ul dir="auto">
<li>needs to have panel check that both major and major_axis aren't passed, same with minor and minor_axis (like <code class="notranslate">SparsePanel</code> does)</li>
<li>would be better if there were individual functions for Series Frame and Panel that explicitly enumerate axes in type signature.</li>
</ul>
</li>
</ul>
<p dir="auto">Functions that may not need to be changed:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> align</li>
</ul>
<p dir="auto">Functions that could use slight wording tweaks:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> truncate</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> where</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> mask</li>
</ul>