使用Numpy创建Yahoo财务价格表 [英] Using Numpy to create Yahoo finance price table
本文介绍了使用Numpy创建Yahoo财务价格表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
不使用matplotlib财务模块.我喜欢将url数据放入一个numpy数组中. 我可以在列标题处进行数学运算.像:
Without using matplotlib finance module. I like to get the url data into a numpy array. where I can to column heading to do math. Like:
prices = r.adj_close
发件人: http://matplotlib.sourceforge.net/examples/pylab_examples/finance_work2.html
除了我不想使用:
fh = finance.fetch_historical_yahoo(ticker, startdate, enddate)
# a numpy record array with fields: date, open, high, low, close, volume, adj_close)
r = mlab.csv2rec(fh); fh.close()
r.sort()
使用手动创建网址:
url = http://ichart.yahoo.com/table.csv?a=2&c=2011&b=30&e=7&d=7&g=d&f=2011&s=msft&ignore=.csv
f = urllib.urlopen(url)
fr = f.read()
hdata = np.asarray(fr, dtype='object')
prices = hdata.adj_close
print prices
推荐答案
使用numpy.loadtxt()加载csv:
use numpy.loadtxt() to load csv:
import numpy as np
import pylab as pl
import urllib
url = "http://ichart.yahoo.com/table.csv?a=2&c=2011&b=30&e=7&d=7&g=d&f=2011&s=msft&ignore=.csv"
f = urllib.urlopen(url)
title = f.readline().strip().split(",")
data = np.loadtxt(f, dtype=np.float, delimiter=",", converters={0: pl.datestr2num}))
第一列是日期,因此请使用pylab.datestr2num将其转换为数字.
the first column is date, so use pylab.datestr2num to convert it to number.
这篇关于使用Numpy创建Yahoo财务价格表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文