Pandas-DataFrame-的完美代替品-闪电般极速的-处置库 (pandas库有什么用)
妇孺皆知,SQL和Pandas是数据迷信畛域罕用工具,知晓这两大工具对数据迷信家来说极有价值。而最近,又有一个新的工具库——「Polars」也开局遭到青眼。
Polars简介
Polars是一个极速的DataFrame库,旨在提供极速高效的数据处置才干,准许您在不影响性能的状况下处置大型数据集。同时,它处置了Pandas的一些限度:
Polars经常使用示例
1.创立DataFrame
示例代码如下。这里经常使用pl.DataFrame函数创立了一个包括三列(name、age和city)的DataFrame对象,每一列都是一个Polars的Series对象。最后打印输入整个DataFrame。
importpolarsaspl#创立一个Polars的DataFrame对象df=pl.DataFrame({'name':['Alice','Bob','Charlie'],'age':[25,30,35],'city':['NewYork','SanFrancisco','London']})#打印输入DataFrameprint(df)
输入结果:
shape:(3,3)┌─────────┬─────┬──────────────┐│name┆age┆city││---┆---┆---││str┆i64┆str│╞═════════╪═════╪══════════════╡│"Alice"┆25┆"NewYork"│├─────────┼─────┼──────────────┤│"Bob"┆30┆"SanFrancisco"│├─────────┼─────┼──────────────┤│"Charlie"┆35┆"London"│└─────────┴─────┴──────────────┘
2.兼并数据框
示例代码如下。这里首先创立了两个DataFrame对象(df1和df2),区分代表两个不同的数据集。而后,经常使用concat函数将这两个DataFrame对象兼并为一个新的DataFrame(merged_df)。最后,打印输入兼并后的DataFrame。
importpolarsaspl#创立第一个DataFramedf1=pl.DataFrame({'name':['Alice','Bob','Charlie'],'age':[25,30,35],'city':['NewYork','SanFrancisco','London']})#创立第二个DataFramedf2=pl.DataFrame({'name':['Dave','Eve','Frank'],'age':[40,45,50],'city':['Toronto','Paris','Sydney']})#兼并两个DataFramemerged_df=df1.concat(df2)#打印输入兼并后的DataFrameprint(merged_df)
shape:(6,3)┌─────────┬─────┬──────────────┐│name┆age┆city││---┆---┆---││str┆i64┆str│╞═════════╪═════╪══════════════╡│"Alice"┆25┆"NewYork"│├─────────┼─────┼──────────────┤│"Bob"┆30┆"SanFrancisco"│├─────────┼─────┼──────────────┤│"Charlie"┆35┆"London"│├─────────┼─────┼──────────────┤│"Dave"┆40┆"Toronto"│├─────────┼─────┼──────────────┤│"Eve"┆45┆"Paris"│├─────────┼─────┼──────────────┤│"Frank"┆50┆"Sydney"│└─────────┴─────┴──────────────┘
PandasvsPolars
如下所示,经常使用Pandas和Polars区分处置了一个包括1亿行数据的大型数据集。依据输入结果可以看出,Polars在处置大型数据集时比Pandas更高效,口头期间更短。
importpandasaspdimportpolarsasplimportnumpyasnpimporttimen=100000000>Polars处置期间:10.987654秒
有没有基于python pandas的回测框架
本地运行:Quantopian开源的zipline可以,但是本地的回测程序,做美股研究可以,但是A股不适合。 线上运行:想线上回测美股可以使用Quantopian,不过有时链接不是很稳定;因为A股独特的交易机制,使得没有一款本地可以运行回测的python包。 一、你可以到JoinQuant聚宽量化交易平台,他们自己写的A股回测框架,还提供处理好的数据,这一点非常好,省去了自己数据清洗的过程。 除了A股还有基金期货的数据,可以做个轮动,对冲等等。 二、就是自己写回测框架,优点是灵活,自己随意改,缺点就是需要一定的编程基础。 总结:JoinQuant和Quantopian数据都可以取到DataFrame格式的,并且都提供notebook以及回测模式,回测研究都可以在线完成。
python的dataframe能不能效率解决这个需求
可以的。 使用apply方法。 例如 (lambda x: x + 1)(lambda x: x + 1)dataframe默认是针对所有列都进行操作。
免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。