如何用 pandas 优雅拼装 k 线数据

yellowtail:方法一使用 resample
按照网上案例写得,很简短,不过 apply 给字典参数的操作没有看懂。而且可能是因为中午休市的原因,超过六十分钟以上,取样会出问题,一天会出现五根一小时 k 线(一天四个交易时)
写法为
ohlc_dict ={
'o':'first',
'h':'max',
'l':'min',
'c': 'last'
}
dft = dft.resample(period, closed='right',label = 'right').apply(ohlc_dict).dropna()

方法二是用 cut
dfx =pd.DataFrame()

df['tst'] = pd.cut(df.index,right=False,bins=range(len(df))[::120])

dfx['o']=df.groupby('tst')['o'].first()

dfx['c']=df.groupby('tst')['c'].last()

dfx['h']=df.groupby('tst')['h'].max()

dfx['l']=df.groupby('tst')['l'].min()

dfx['trade_date']=df.groupby('tst')['trade_date'].last()
感觉太丑了...希望能给点优化意见

yellowtail:https://imgchr.com/i/wTGMOf resample 方法 60 分钟以上的错误

pandas 分组后如何去后百分之 80 的值

sznewbee096:在练习的时候,python 数据处理用 pandas.groupby 分组后取后百分之 80 的值,tail 只能取具体的后几行。

如何更改索引和转置 Pandas - python

我是 Pandas 的新手,正在尝试在日期框架上进行一些转换,但到达了封闭路径。我的数据框是: entity_name request_status dcount 0 entity1 0 1 1 entity1 1 6 2 entity1 2 13 3 entity2 1 4 4 entity2 2 7 我需要此数据框如下所示:index 0 1 2 ent…

pandas DataFrame:根据另一列中的布尔值计算总和 - python

我对Python相当陌生,我尝试在pandas中模拟以下逻辑我目前正在循环抛出行,并希望对前几行的AMOUNT列中的值求和,但只求和最后一次看到的“ TRUE”值。实际数据似乎效率低下(我的数据框大约有500万行)?想知道用Python处理这种逻辑的有效方法是什么?逻辑:逻辑是,如果FLAG为TRUE,我想对前几行的AMOUNT列中的值求和,但只求和最后一次…

如何使用 Pandas 加快加载数据? - python

我正在使用 Pandas 和木星笔记本。我正在读取700MB CSV文件,加载需要69秒。出于测试目的,这是可以接受的,因为我只需要加载一次,并且在笔记本实例的整个过程中它会保留在内存中。pd.read_csv(path, names=['Date','Time','Seconds','C…

多索引的 Pandas 图 - python

在对groupby.sum()执行DataFrame后,尝试创建想要的绘图时遇到了一些麻烦。如何为每个kind='bar'创建一个子图(Code),其中x轴是Month,而条形图是ColA和ColB? 参考方案 我发现unstack(level)方法可以完美地工作,它的另一个好处是不需要先验知识来了解有多少代码。df.unstack(le…