# -*- coding: utf-8 -*- #读取交易日历数据表“date.xlsx”,字段依次为: # 市场类型(Markettype)、日期(Clddt)、星期(Daywk)、开市状态(State) # 其中开市状态O,表示开市 # 返回2016-01-04 至 2017-12-29日的每周最小交易日和最大交易日 # 分别记为:list1和list2 def return_values(): return (list1,list2)
时间: 2023-12-06 12:45:44 浏览: 173
解锁Objective-C的KVC:深入Key-Value Coding的奥妙
以下是读取交易日历数据表并返回每周最小交易日和最大交易日的Python代码:
``` python
import pandas as pd
def return_values():
# 读取交易日历数据表
df = pd.read_excel('date.xlsx')
# 筛选2016-01-04 至 2017-12-29之间的数据
df = df[(df['Clddt'] >= '2016-01-04') & (df['Clddt'] <= '2017-12-29')]
# 将日期转换成星期几
df['Daywk'] = df['Clddt'].apply(lambda x: x.weekday())
# 筛选开市状态为O的数据
df = df[df['State'] == 'O']
# 按照周分组,求每周最小和最大交易日
grouped = df.groupby(pd.Grouper(key='Clddt', freq='W-MON'))
list1 = grouped['Clddt'].min().tolist()
list2 = grouped['Clddt'].max().tolist()
return (list1, list2)
```
该函数会返回一个元组,第一个元素为每周最小交易日的列表,第二个元素为每周最大交易日的列表。你可以根据自己的需求对这两个列表进行进一步处理。
阅读全文