2016-10-24 34 views
3

Es sei Gegenstand gegeben Ich habe eine Offset-String 'BM' oder '7W'
weiß, dass ich die Antwort für 'BM' ist pd.offsets.BMonthEnd()
für '7W'pd.offsets.Week(7)wie komme ich an den pandas.offsets bekommen einen Offset-String

ein generisches Gibt es ist Lösung, in der ich eine Zeichenfolge übergeben und das Offset-Objekt erhalten kann?

+2

für andere Referenz http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases –

Antwort

6

Es sieht aus wie pandas.tseries.frequencies.to_offset ist, was intern verwendet wird von Offset-Strings zu einem DateOffset Objekt zu konvertieren:

from pandas.tseries.frequencies import to_offset 

freq = to_offset('7W') 

Sie können es auch in eher ein hackier Weg ohne Importe, indem das freq Attribut eines Trivial DateTimeIndex:

freq = pd.date_range('2016-03-14', periods=0, freq='7W').freq 

Bei beiden Methoden:

print(freq) 
<7 * Weeks: weekday=6> 

print(type(freq)) 
<class 'pandas.tseries.offsets.Week'> 
+0

fand es zur gleichen Zeit. Lösche meine Antwort. –

+0

Sie haben mir geholfen, meine andere Frage http://stackoverflow.com/q/40222583/2336654 zu beantworten – piRSquared

Verwandte Themen