如何使用 python 绘制大型 CSV 文件的元素?

罗斯·欧文

我目前正在研究使用 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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章