Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 按自定义周拆分数据帧_Python_Pandas - Fatal编程技术网

Python 按自定义周拆分数据帧

Python 按自定义周拆分数据帧,python,pandas,Python,Pandas,我正在使用以下格式的大熊猫数据帧: In [15]: data.info() <class 'pandas.core.frame.DataFrame'> DatetimeIndex: 2869438 entries, 2011-09-26 22:00:00.078000 to 2011-12-30 22:14:57.413000 Data columns (total 3 columns): Symbol 2869438 non-null values Price 2

我正在使用以下格式的大熊猫数据帧:

In [15]: data.info()
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 2869438 entries, 2011-09-26 22:00:00.078000 to 2011-12-30 22:14:57.413000
Data columns (total 3 columns):
Symbol    2869438  non-null values
Price     2869438  non-null values
Vol       2869438  non-null values
dtypes: float64(1), int64(1), object(1)
对于这个特定的数据帧,周被定义为“星期一、星期二、星期二、星期四、星期五”

from pandas.tseries.offsets import CustomBusinessDay
weekmask = 'Sun Mon Tue Wed Thu Fri'
bday = CustomBusinessDay(weekmask=weekmask)
weeks = data.groupby(bday)
这给了我时间戳索引的组,而不是按周数

这可能不是实现这一目标的最佳方式,有人能提供其他技术吗

更新:

以下是我使用的数据集的开头和结尾:

data.head()
                             Symbol Price   Vol
DateTime            
2011-09-26 22:00:00.078000   CLX11   81.48   1
2011-09-26 22:00:00.192000   CLX11   81.46   1
2011-09-26 22:00:00.343000   CLX11   81.47   1
2011-09-26 22:00:00.443000   CLX11   81.46   1
2011-09-26 22:00:00.443000   CLX11   81.45   4

data.tail()
                             Symbol Price   Vol
DateTime            
2011-12-30 22:14:40.877000   CLG12   99.05   1
2011-12-30 22:14:43.287000   CLG12   99.06   1
2011-12-30 22:14:55.165000   CLG12   99.04   1
2011-12-30 22:14:55.165000   CLG12   99.03   1
2011-12-30 22:14:57.413000   CLG12   99.06   3
我只想做的是将这些数据切割成几周,并将其写入CSV文件,我已经可以在传统的几周内(周一至周日)这样做了,但我现在想切割成定义为周五的几周


有人能帮忙吗?
CustomBuisnessDay
的使用可能不是我想要的,尽管它看起来确实适合这个用例

你能发布一个数据帧的小例子吗?这样更容易操作。我不明白这个问题,你是想在计算中访问组名(周数)吗?@AndyHayden很抱歉,我已经更新了这个问题以提供更清晰的信息。
data.head()
                             Symbol Price   Vol
DateTime            
2011-09-26 22:00:00.078000   CLX11   81.48   1
2011-09-26 22:00:00.192000   CLX11   81.46   1
2011-09-26 22:00:00.343000   CLX11   81.47   1
2011-09-26 22:00:00.443000   CLX11   81.46   1
2011-09-26 22:00:00.443000   CLX11   81.45   4

data.tail()
                             Symbol Price   Vol
DateTime            
2011-12-30 22:14:40.877000   CLG12   99.05   1
2011-12-30 22:14:43.287000   CLG12   99.06   1
2011-12-30 22:14:55.165000   CLG12   99.04   1
2011-12-30 22:14:55.165000   CLG12   99.03   1
2011-12-30 22:14:57.413000   CLG12   99.06   3