- 博客(6)
- 收藏
- 关注
原创 一个很简单的双均线策略(Tushare的python接口)
我用tushare是几年前,当时是不需要注册的老版。现在它出了个pro版,弄了个积分制度。高校学生党可以送一年的积分。以下的策略只需要价量的接口,不需要充钱。代码如下:import tushare as tsimport pandas as pdimport numpy as npmytoken = "..."ts.set_token(mytoken)pro = ts.pro_api()data = ts.pro_bar(ts_code='600000.SH', adj='qfq',
2020-08-23 22:24:21
1179
1
原创 python pandas dropna ValueError: Cannot convert non-finite values (NA or inf) to integer
对于一个大的dataframe,用df.dropna()似乎会报错:ValueError: Cannot convert non-finite values (NA or inf) to integer这样的结果在下面两个网站中提到:https://stackoverflow.com/questions/60748411/dropna-results-in-valueerror-cannot-convert-non-finite-values-na-or-inf-to-inhttps://stac
2020-06-28 22:35:08
2313
1
原创 pandas滚动回归实现
python的pandas包的groupby似乎难以直接滚动回归。原因似乎是rolling的结果是一个Series。代码如下:import pandas as pddf = pd.DataFrame({"a": [i for i in range(100)], "b": [i ** 2 for i in range(100)]})def tmp(x): print(x) return 1s = df.rolling(3).apply(tmp)解决方法:使用numpy的as
2020-06-21 20:32:26
2096
原创 python 多进程 AttributeError: Cant pickle local object
AttributeError: Can’t pickle local objectpython闭包不支持pickle(序列化)。多进程需要函数能pickle。有几种方式解决:0.将函数体中的函数挪出。这是最简单的方法。但是有时因为函数接口已经给定,需要使用函数来定义函数。考虑以下两种方法。1.更换pickle,考虑以下代码: from pathos.multiprocessing import ProcessingPool as Pool网址https://github.com/uqfou
2020-06-21 20:07:40
20840
3
原创 EM算法及python简单实现
EM算法及python简单实现最大期望算法(Expectation-maximization algorithm,又译为期望最大化算法),是在概率模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐性变量z。算法为:0.初始化概率分布参数1.估计隐变量分布2.最大化下式3.循环上述两步举例:给定一组数据。每个数据可能来自于两种正态分布,其中每种正态分布均值不知道,方差已知。以下是代码:import numpy as npx1 = np.random.no
2020-06-21 19:20:25
559
2
原创 Lasso 的 python实现
Lasso 的 python实现由于最近一些任务需要在Lasso的基础上修改一些细节,需要重写Lasso的代码。而python的sklearn模块中, Lasso的坐标梯度下降是由c语言编写。于是自己重新写了一份代码,优化方法选择坐标梯度下降法。代码在最下边。sklearn中使用坐标梯度下降法求解sklearn中的Lasso类的fit方法调用了sklearn.linear_model.co...
2020-04-06 01:57:41
3227
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人