所以我完全理解如何使用resample,但文档没有很好地解释选项。

所以resample函数中的大多数选项都非常简单,除了这两个:

规则:表示目标转换的偏移字符串或对象 How:字符串,向下或重新采样的方法,默认为' mean '

所以从我在网上找到的很多例子中,我可以看到规则,你可以用“D”表示一天,“xMin”表示分钟,“xL”表示毫秒,但这是我能找到的全部。

因为我看到了下面这些词:'first', np。Max, last, mean和n1n2n3n4…Nx ',其中Nx是每个列索引的第一个字母。

那么,文档中是否有我遗漏的地方显示了熊猫的每个选项。重新采样的规则和如何输入?如果有,在哪里因为我找不到。如果没有,他们有哪些选择?


B         business day frequency
C         custom business day frequency (experimental)
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 endfrequency
QS        quarter start frequency
BQS       business quarter start frequency
A         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

请参阅时间序列文档。它包括一个偏移量(和“锚定”偏移量)列表,以及关于重新采样的部分。

请注意,这里没有所有不同的how选项的列表,因为它可以是任何NumPy数组函数,任何通过groupby调度可用的函数都可以传递给how by名称。


除此之外,你可能还在寻找这个列表:

B   business day frequency
C   custom business day frequency (experimental)
D   calendar day frequency
W   weekly frequency
M   month end frequency
BM  business month end frequency
MS  month start frequency
BMS business month start frequency
Q   quarter end frequency
BQ  business quarter endfrequency
QS  quarter start frequency
BQS business quarter start frequency
A   year end frequency
BA  business year end frequency
AS  year start frequency
BAS business year start frequency
H   hourly frequency
T   minutely frequency
S   secondly frequency
L   milliseconds
U   microseconds

来源:https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html offset-aliases


如果你不确定你会得到什么,使用这个函数:

from pandas.tseries.frequencies import to_offset
print(to_offset("7D")) # <7 * Days>
print(to_offset("W")) # <Week: weekday=6>
print(to_offset("M")) # <MonthEnd>
print(to_offset("m")) # <MonthEnd>
print(to_offset("min")) # <Minute>

例如,大写和小写是相同的(不像通常的M=月和M=分钟)

请注意

因此这是不一样的,会得到不同的结果:

s.resample("7d").mean()
s.resample("W").mean() # is not the same!

原因你可以在这里看到一个:“警告:标签和关闭的默认值是'左'所有频率偏移除了' M ', ' a ', ' Q ', ' BM ', ' BA ', ' BQ '和' W '都有一个默认值'右'。”