请 [注册] 或 [登录]  | 返回主站

量化交易吧 /  量化平台 帖子:3366808 新帖:15

JQ平台如何把DataFrame对象pickle或者json出来?

专门套利发表于:5 月 10 日 03:36回复(1)

@平安 ,两个问题:1、从上周四吧(好像是)我的“投资研究”里面运行速度一下子慢了,我用来计算市场估值,会有测十几只指数,之前一般十分钟跑完程序(从点击运行到结果存文件和打印输出),现在跑完要2个多小时,然而诡异的是我程序里是有耗时记录的,记录的结果是十来分钟,比以前多不了多少。不知道什么原因,平台运行完输出慢?开始以为偶然现象,这几天一直这样。
2、为了加快速度,想缓存中间过程,结果dataframe对象pickle或者json出来都失败,提示只支持UTF-8编码的文件,pickle list对象等时默认编码是UTF-8,而pickle dataframe默认是ANSI导致失败。怎么破?试过json也是一样的问题,pd.to_json/to_pickle也不行。

import cPickle as pickle
#import pickle
import pandas as pd
import matplotlib.pyplot as plt

t1 = ('this is a string', 42, [1, 2, 3], '案发时发生',None)  
p1 = pickle.dumps(t1)  
t2 = pickle.loads(p1)

filename = r"data/temp.pkl"
pickle_file = file(filename, 'wb')
pickle.dump(t1, pickle_file, True) 

a = pd.Series(data = [1,3,4])
b = pd.Series(data = [1,6,6])
c = pd.Series(data = [1,9,4])
d = pd.Series(data = [1,11,9])
df = pd.DataFrame()
df['a']= a
df['b'] = b
df['c'] = c
df['d'] = d
pickle.dump(df, pickle_file, True) 

全部回复

0/140

量化课程

    移动端课程