提问人:sundowner 提问时间:2/11/2016 最后编辑:cottontailsundowner 更新时间:1/30/2023 访问量:93075
哪些值在 Pandas 'Freq' 标签中有效?
What values are valid in Pandas 'Freq' tags?
问:
我正在尝试使用 .我遇到了一些对 、 和 有效的值,我希望能够快速查找正确的字符串以获得我想要的东西。date_range
freq
BME
BMS
哪些值在 Pandas 'Freq' 标签中有效?
答:
267赞
jezrael
2/11/2016
#1
您可以找到它,称为 Offset Aliases:
为有用的公共时间序列频率提供了许多字符串别名。我们将这些别名称为偏移别名。
Alias Description
B business day frequency
C custom business day frequency
D calendar day frequency
W weekly frequency
M month end frequency
SM semi-month end frequency (15th and end of month)
BM business month end frequency
CBM custom business month end frequency
MS month start frequency
SMS semi-month start frequency (1st and 15th)
BMS business month start frequency
CBMS custom business month start frequency
Q quarter end frequency
BQ business quarter end frequency
QS quarter start frequency
BQS business quarter start frequency
A, Y year end frequency
BA, BY business year end frequency
AS, YS year start frequency
BAS, BYS business year start frequency
BH business hour frequency
H hourly frequency
T, min minutely frequency
S secondly frequency
L, ms milliseconds
U, us microseconds
N nanoseconds
2赞
cottontail
1/30/2023
#2
如何查找偏移量别名
您可以通过以下方式找到有效频率的完整列表
pd.offsets.__all__
返回
['BusinessDay', 'MonthBegin', 'Hour', 'Minute', 'Second', ...]
事实证明,它们中的每一个都是一个类,并且它们都有一个属性,即别名。因此,例如,可以通过_prefix
Minute
pd.offsets.Minute._prefix # 'T'
# some other aliases
pd.offsets.MonthEnd._prefix # 'M'
pd.offsets.MonthBegin._prefix # 'MS'
事实上,如果我们看一下源代码,别名字典是通过访问每个偏移类来构造的。_prefix
锚定偏移量
除了 jezrael 帖子中的偏移量外,您还可以为某些频率指定锚定后缀。
每周频率可以在一周中的任何一天具有锚点:、、、、和 。W-SUN
W-MON
W-TUE
W-WED
W-THU
W-FRI
W-SAT
例如,若要将周定位到星期一结束,可以使用(请注意,它不区分大小写)。W-MON
pd.date_range('2022-01-01', '2022-02-01', freq='w-mon')
# DatetimeIndex(['2022-01-03', '2022-01-10', '2022-01-17', '2022-01-24', '2022-01-31'],
# dtype='datetime64[ns]', freq='W-MON')
此外,季度和年度频率可以在一年中的任何月份都有锚点;即以下频率可以以月份为后缀,以便每个频率都可以锚定为在该月结束:
Q
QS
BQ
BQS
A
AS
BA
BAS
有效后缀为 、 、 、 、 、 和 。JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
NOV
DEC
例如,要将年份定位到 5 月初结束,可以使用A-MAY
pd.date_range('2020-01-01', '2023-02-01', freq='AS-May')
# DatetimeIndex(['2020-05-01', '2021-05-01', '2022-05-01'], dtype='datetime64[ns]', freq='AS-MAY')
评论