如何仅从最近的星期一开始接受数据

Slartibartfast

我有以下代码:

import pandas as pd
from pandas import datetime
from pandas import DataFrame as df
import matplotlib
from pandas_datareader import data as web
import matplotlib.pyplot as plt
import datetime
import numpy as np

stock = '^GSPC'
start = datetime.date(2000,1,1)
end = datetime.date.today()
data = web.DataReader(stock, 'yahoo',start, end)
data.index = pd.to_datetime(data.index, format ='%Y-%m-%d')
data['Day Name'] = data.index.weekday_name
data.set_index('day',append=True,inplace=True)
data.set_index('Day Name', append=True, inplace=True)
data['pct_day']= data['Adj Close'].pct_change()
df = data.groupby(['Day Name']).mean()
df = df.drop( index=['Saturday','Sunday'])
df = df.reindex(['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'])

我需要在这里做的是,无论输入什么日期,都应仅从最近的星期一开始接受该数据,在此之前不接受任何数据。在此感谢您的任何帮助。

耶斯列尔

您可以先Monday使用删除值Series.eqSeries.cumsum然后使用不等于的0方式获得所有行Series.ne

data['Day Name'] = data.index.weekday_name

data = data[data['Day Name'].eq('Monday').cumsum().ne(0)].copy()

data.set_index('day',append=True,inplace=True)

另一个想法是使用Series.idxmax第一个索引值并传递给DataFrame.loc,仅Monday在数据中至少需要一个

data['Day Name'] = data.index.weekday_name

data = data.loc[data['Day Name'].eq('Monday').idxmax():]

data.set_index('day',append=True,inplace=True)

样品

rng = pd.date_range('2017-04-01', periods=10)
data = pd.DataFrame({'a': range(10)}, index=rng)  

data['Day Name'] = data.index.weekday_name
data = data[data['Day Name'].eq('Monday').cumsum().ne(0)].copy()
print (data)
            a   Day Name
2017-04-03  2     Monday
2017-04-04  3    Tuesday
2017-04-05  4  Wednesday
2017-04-06  5   Thursday
2017-04-07  6     Friday
2017-04-08  7   Saturday
2017-04-09  8     Sunday
2017-04-10  9     Monday

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

日历从星期一开始

来自分类Dev

如何使FreeCSD变体在星期一开始校准?

来自分类Dev

getdate [“ weekday”]如何从星期一开始而不是星期日开始?

来自分类Dev

我如何获得从星期一开始的星期几订单

来自分类Dev

从星期一开始的周间隔查询

来自分类Dev

Bootstrap Datetimepicker从星期一开始

来自分类Dev

如何使Java日历从星期一开始工作日?

来自分类Dev

当每周从星期一开始时,如何简化逻辑?

来自分类Dev

使用python,我如何从星期三而不是星期日或星期一开始我的几周?

来自分类Dev

如何从星期日而不是星期一开始在ng bootstrap Datepicker中启动日历周?

来自分类Dev

从每年的04:00开始,从星期一开始获取星期数

来自分类Dev

SAP HANA SQL-从星期几开始?WEEK()默认从星期一开始

来自分类Dev

Bootstrap 3 Datetimepicker 3.0.0-在星期一开始一个星期

来自分类Dev

在标准 sql 中获取从星期一开始的星期日期

来自分类Dev

仅启用星期一并在 html5 中从星期一开始

来自分类Dev

从下一个星期一开始在wordpress中安排活动

来自分类Dev

对于通过DayOfWeek枚举从星期一开始的每个循环?

来自分类Dev

Highstocks工具提示删除短语“从星期一开始”

来自分类Dev

H2 DB DAY_OF_WEEK星期一开始

来自分类Dev

Python:查找日期,从今天的前两个月开始,从星期一开始

来自分类Dev

bash:删除所有早于1个月的文件,但从星期一开始保留文件

来自分类Dev

查找数据框的最近星期一

来自分类Dev

如何从一开始就启动vim?

来自分类Dev

如何使我的代码在一开始就失去空白?

来自分类Dev

Logstash一开始就崩溃

来自分类Dev

此for循环如何从一开始就知道此数组数据结构将持续多长时间?

来自分类Dev

Java的DateTimeFormatter开始星期从星期一

来自分类Dev

将数据从一个活动发送到另一开始活动

来自分类Dev

如何从一开始就使正则表达式匹配模式?

Related 相关文章

  1. 1

    日历从星期一开始

  2. 2

    如何使FreeCSD变体在星期一开始校准?

  3. 3

    getdate [“ weekday”]如何从星期一开始而不是星期日开始?

  4. 4

    我如何获得从星期一开始的星期几订单

  5. 5

    从星期一开始的周间隔查询

  6. 6

    Bootstrap Datetimepicker从星期一开始

  7. 7

    如何使Java日历从星期一开始工作日?

  8. 8

    当每周从星期一开始时,如何简化逻辑?

  9. 9

    使用python,我如何从星期三而不是星期日或星期一开始我的几周?

  10. 10

    如何从星期日而不是星期一开始在ng bootstrap Datepicker中启动日历周?

  11. 11

    从每年的04:00开始,从星期一开始获取星期数

  12. 12

    SAP HANA SQL-从星期几开始?WEEK()默认从星期一开始

  13. 13

    Bootstrap 3 Datetimepicker 3.0.0-在星期一开始一个星期

  14. 14

    在标准 sql 中获取从星期一开始的星期日期

  15. 15

    仅启用星期一并在 html5 中从星期一开始

  16. 16

    从下一个星期一开始在wordpress中安排活动

  17. 17

    对于通过DayOfWeek枚举从星期一开始的每个循环?

  18. 18

    Highstocks工具提示删除短语“从星期一开始”

  19. 19

    H2 DB DAY_OF_WEEK星期一开始

  20. 20

    Python:查找日期,从今天的前两个月开始,从星期一开始

  21. 21

    bash:删除所有早于1个月的文件,但从星期一开始保留文件

  22. 22

    查找数据框的最近星期一

  23. 23

    如何从一开始就启动vim?

  24. 24

    如何使我的代码在一开始就失去空白?

  25. 25

    Logstash一开始就崩溃

  26. 26

    此for循环如何从一开始就知道此数组数据结构将持续多长时间?

  27. 27

    Java的DateTimeFormatter开始星期从星期一

  28. 28

    将数据从一个活动发送到另一开始活动

  29. 29

    如何从一开始就使正则表达式匹配模式?

热门标签

归档