我目前正在研究使用 CSV 格式将股票数据导入 python 的“Quandl”。但是,我一直在试图找到一种选择参数的方法(即挑选出 2 列来绘制在图表上——例如“日期”和“收盘价”,并过滤掉行,所以我只绘制最后一个100 天的交易价格)。
import urllib
import csv
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import style
style.use('fivethirtyeight')
url = 'https://www.quandl.com/api/v3/datasets/EOD/V.csv?api_key=Fa1P1yZLGnGSsXktrvzL'
With open(url, ‘rb’) as f:
reader = csv.reader(f)
for row in reader:
print row
csv = urllib.urlopen(url).read().decode()
with open('file.csv', 'r') as csvfile:
plots = csv.reader(csvfile, delimiter=' ')
csv = csv.writer(csvfile, delimiter=' ', quotechar=' ', quoting=csv.QUOTE_MINIMAL, skiprows=1)
x, y = np.loadtxt('https://www.quandl.com/api/v3/datasets/EOD/V.csv?api_key=Fa1P1yZLGnGSsXktrvzL',
dtype={'names': ('Date', 'Price'),
'formats': ('%d/%m%Y', 'i6')},
unpack=True)
plt.plot(x, y, label='Stock Values')
plt.title('End of Day Visa Stock Prices for US Exchange')
plt.ylabel('Stock Price')
plt.xlabel('Date')
plt.legend()
plt.show()
这就是我到目前为止所拥有的,但无法在工作模型附近的任何地方获得它。很高兴听到如何解决这个问题并进行调整。
使用熊猫。它更容易:
url = 'https://www.quandl.com/api/v3/datasets/EOD/V.csv?api_key=Fa1P1yZLGnGSsXktrvzL'
df = pd.read_csv(url, parse_dates=True,index_col=0)
df = df.rename(columns={'Close':'Stock Price'})
s = df['Stock Price']
s_to_plot = s.sort_index(ascending=True).tail(100)
ax = s_to_plot.plot(title='End of Day Visa Stock Prices for US Exchange')
ax.set_ylabel('Stock Price')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句