Çoğu durumda, bunun için to_timedelta
işlevini kullanabilirsiniz.
In [9]: pd.to_timedelta('30min')
Out[9]: Timedelta('0 days 00:30:00')
In [10]: pd.to_timedelta('2S')
Out[10]: Timedelta('0 days 00:00:02')
Ancak bu işe yaramazsa o pd.to_timedelta ('30T') görünüyor, ama bu belki eksik bir özellik olarak kabul edilebilir: Bu bir timedelta bir dizeyi dönüştürür.
Ama, önce bir frekans nesnesine dönüştürmek eğer bu bir çalışır ve sonra to_timedelta
bunu tedarik:
In [19]: from pandas.tseries.frequencies import to_offset
In [20]: pd.to_timedelta(to_offset('30T'))
Out[20]: Timedelta('0 days 00:30:00')
Bir DatetimeIndex bir freqstr
dan başlarsanız, ikinci yaklaşım her zaman çalışır.
In [34]: dtidx = pd.date_range('2012-01-01', periods=5, freq='30min')
In [35]: pd.to_timedelta(dtidx.freq)
Out[35]: Timedelta('0 days 00:30:00')
Eğer giriş izin verir misin: Ama, aynı zamanda doğrudan bir frekans nesnesi döndüren yerine
freqstr
aitfreq
, kullanabilir? –olası bir kopyası [Basit bir dizeden bir timedelta nesnesi nasıl oluşturulur] (http://stackoverflow.com/questions/4628122/how-to-construct-a-timedelta-object-from-a-simple-string) – SiHa
@ColonelBeauvel: giriş, DateTimeIndex'in 'freqstr' özniteliğiyle olduğu gibi ya da kurtarılmış olarak" 30T "gibi dizelerdir. –