如何创建从"2000-01-01"开始的时间序列,之后的10个周末(星期六)以随机数作为值。(在蟒蛇中)?


rnge = pd.date_range(start = "2000-01-01" ,periods =14 , freq = "D")
rnge

我想把星期六排除在外。

dates = pd.date_range('2000-01-01', periods=10, freq='W-SAT')
# Create a list of random numbers
values = np.random.randint(0, 10, size=10)
df = pd.Series(values, index=dates)
print(df)

输出:

2000-01-01    7
2000-01-08    0
2000-01-15    8
2000-01-22    1
2000-01-29    5
2000-02-05    3
2000-02-12    8
2000-02-19    7
2000-02-26    8
2000-03-04    4
Freq: W-SAT, dtype: int64

"W-SAT"是指每周六。您可以在此处查看date_range函数。pandas.date_range--pandas1.5.2文档

我不确定我是否理解这个问题(没有得到关于随机数的部分(。如果你只想过滤掉周六,那么可以这样做:

rnge = pd.date_range(start="2000-01-01", periods=14, freq="D")
rnge = rnge[rnge.weekday != 5]

结果:

DatetimeIndex(['2000-01-02', '2000-01-03', '2000-01-04', '2000-01-05',
'2000-01-06', '2000-01-07', '2000-01-09', '2000-01-10',
'2000-01-11', '2000-01-12', '2000-01-13', '2000-01-14'],
dtype='datetime64[ns]', freq=None)

最新更新