Python 2.7 Python时间序列

Python 2.7 Python时间序列,python-2.7,pandas,time-series,Python 2.7,Pandas,Time Series,我正在进行房地产现金流模拟 我最终想要的是一个时间序列,每天我都会报告房产是否空置、出租以及是否收取租金 在我现在的代码中,我首先创建一个利润数组,其值为租赁、空置或今天您收取的租金为1000美元,因此我使用此值来创建我的时间序列: rng=pd.date_range('6/1/2016', periods=len(profit), freq='D') ts=pd.Series(profit, index=rng) 简单来说,我假设我每30天收一次租金。现在我想更具体一点,比如每月5日收集一次

我正在进行房地产现金流模拟

我最终想要的是一个时间序列,每天我都会报告房产是否空置、出租以及是否收取租金

在我现在的代码中,我首先创建一个利润数组,其值为租赁、空置或今天您收取的租金为1000美元,因此我使用此值来创建我的时间序列:

rng=pd.date_range('6/1/2016', periods=len(profit), freq='D')
ts=pd.Series(profit, index=rng)
简单来说,我假设我每30天收一次租金。现在我想更具体一点,比如每月5日收集一次,并在下一个租户入住时灵活安排

你知道命令或一个好的来源,我可以学习如何逐月迭代


如果有任何帮助,我们将不胜感激。

您可以使用date\u range和。shift freq='M'用于使用pd.datetools.day的月末频率,如下所示:

然后使用此序列从DateTimeIndex中选择日期,使用

或者,您可以使用pd.DateOffset,如下所示:

现在添加5天:

ts + pd.DateOffset(days=5)
要获得:

DatetimeIndex(['2015-06-06', '2015-07-06', '2015-08-06', '2015-09-06',
               '2015-10-06', '2015-11-06', '2015-12-06'],
              dtype='datetime64[ns]', freq=None)

您可以使用date_range构建日期序列。shift freq='M'用于使用pd.datetools.day的月末频率,如下所示:

然后使用此序列从DateTimeIndex中选择日期,使用

或者,您可以使用pd.DateOffset,如下所示:

现在添加5天:

ts + pd.DateOffset(days=5)
要获得:

DatetimeIndex(['2015-06-06', '2015-07-06', '2015-08-06', '2015-09-06',
               '2015-10-06', '2015-11-06', '2015-12-06'],
              dtype='datetime64[ns]', freq=None)

,而且,我看了这两个参考资料,但还是弄不清楚。假设我有一个时间序列,我想在一年中的任意一天和之后的每个月输入值1000。对不起,熊猫人应该插话。我可以用一个固定的日期时间和一个随机日的随机模块来完成它——基本上循环12个月。我想datetime可以和pandas timeseries兼容……但我对pandas一无所知!,我看了两份参考资料,但还是弄不清楚。假设我有一个时间序列,我想在一年中的任意一天和之后的每个月输入值1000。对不起,熊猫人应该插话。我可以用一个固定的日期时间和一个随机日的随机模块来完成它——基本上循环12个月。我想datetime可以与熊猫时间系列兼容……但我对熊猫一无所知!这太完美了。我使用date_sequence和date_sequence.union创建了一个时间序列,该时间序列从不同的点开始,以不同的时间长度连接时间序列。谢谢是否可以创建一个从6月6日到12月6日的时间序列,例如不使用.shift?我问这个问题的原因是,通过反复使用shift,我最终会犯一些小错误,比如:2月11日、3月14日、4月12日、5月13日等等,这样就不会坚持到今天。这个错误很小,可能可以忽略不计,但我想知道我是否能做到准确。谢谢那有点管用。让我解释一下。我的代码中的轮班天数正在增加。假设我开始换班8天,然后换班16天……当我达到32天时,它就换班2个月零一天,而不是一个月零一天。似乎当我输入pd.DateOffsetdays=32时,它会读作pd.DateOffsetmonths=1,days=32也许您可以问一个新问题,并更详细地显示您当前的代码和所需的输出是什么样子的?我一直在试图回答你最初的问题,但我们似乎还没有得出结论。对不起,你的帮助太棒了。我将发布另一个问题,希望能让情况更清楚。希望你能回复它这是完美的。我使用date_sequence和date_sequence.union创建了一个时间序列,该时间序列从不同的点开始,以不同的时间长度连接时间序列。谢谢是否可以创建一个从6月6日到12月6日的时间序列,例如不使用.shift?我问这个问题的原因是,通过反复使用shift,我最终会犯一些小错误,比如:2月11日、3月14日、4月12日、5月13日等等,这样就不会坚持到今天。这个错误很小,可能可以忽略不计,但我想知道我是否能做到准确。谢谢那有点管用。让我解释一下。我的代码中的轮班天数正在增加。假设我开始换班8天,然后换班16天……当我达到32天时,它就换班2个月零一天,而不是一个月零一天。似乎当我输入pd.DateOffsetdays=32时,它会读作pd.DateOffsetmonths=1,days=32也许您可以问一个新问题,并更详细地显示您当前的代码和所需的输出是什么样子的?我一直在试图回答你最初的问题,但我们似乎还没有得出结论。对不起,你的帮助太棒了。我将发布另一个问题,希望能让情况更清楚。希望你能回复
DatetimeIndex(['2015-06-06', '2015-07-06', '2015-08-06', '2015-09-06',
               '2015-10-06', '2015-11-06', '2015-12-06'],
              dtype='datetime64[ns]', freq=None)