0
私は特定の周波数でサンプリングされたpandasデータフレームを使用するクラスを作成しています。これらの周波数を指定するために使用する引数は、パンダでよく使用されるfrequency stringsです(例: 'H'、 '15min'、 'D')Python Pandasの周波数文字列の比較
私の方法の1つは、これらの周波数を互いに比較する必要がありますもう一方に収まる。これを行うスマートで直接的な方法はありますか?
my_object._get_relative_timediff('8H', 'min')
480.0
しかし、私はそこに良い方法があります(またはあるべき)を想像する必要があります。私は、次のことを書いたが、それはとても不格好と間接ようだ:
def _get_relative_timediff(self, freq1, freq2):
""" Returns how many (based on seconds) of frequency 2 goes into frequency 1
"""
old = pd.period_range(start='1/1/1900', freq=freq1, periods=2)[1].to_timestamp()
new = pd.period_range(start='1/1/1900', freq=freq2, periods=2)[1].to_timestamp()
old = (old - pd.to_datetime('1/1/1900')).seconds
new = (new - pd.to_datetime('1/1/1900')).seconds
relative = float(old/new)
return relative
それは動作します。ありがとう!