用数据玩转python第4周

来源:互联网 发布:逆波兰计算器 c语言 编辑:程序博客网 时间:2024/05/14 12:47
正确
1 / 1 分
1。
本单元的测试题目主要是基于课堂内容,重点考察大家是否掌握了Matplotlib的雅虎财经Python接口的使用,从而希望大家可以触类旁通将来迁移到其他Python接口,并通过完成题目的过程了解一个较为完整的数据统计过程。
如下的题目都是基于如下获取雅虎财经上市公司股票的历史数据的程序:
Table 1 在线读入股票历史数据的代码:
1
2
3
4
5
6
from matplotlib.finance import quotes_historical_yahoo_ochl
from datetime import date
import pandas as pd
today = date.today()
start = (today.year-2, today.month, ____)
quotes = quotes_historical_yahoo_ochl('____', start, today)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
在上图的横线处填入答案,使得获取到的数据是从两年前的今天到现在的微软公司的股票历史数据(关于微软的公司代号,可以在该页面http://finance.yahoo.com/q/cp?s=^DJI 中找到)。请填写第一个空格处的答案。
正确
1 / 1 分
2。
请填写第1题中第二个空格处的答案。
正确
1 / 1 分
3。
继续上述的代码表格,为微软的quotes数据添加属性名:
Table 2 根据Table 1代码读入的历史数据,为这些数据添加属性名。
1
2
______ = ['date','open','close','high','low','volume']
quotesdf = pd.DataFrame(quotes, _____ = attributes)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
请填写第一个空格处的答案。
正确
1 / 1 分
4。
请填写第3题中第二个空格处的答案。
正确
1 / 1 分
5。
继续上述的代码表格,为这部分数据将索引列更换为日期,并删除掉原先的date列,日期格式是2015年1月30日,显示为 ‘15/01/30’ 注意空格和符号。
Table 3 根据Table 2代码中的quotesdf对其进行索引更换
1
2
3
4
5
6
7
list1 = []
for i in range(0, len(quotes)):
x = date.fromordinal(int(quotes[i][0]))
y = date.strftime(x, ___________)
list1.append(y)
quotesdf.index = list1
quotesdf = quotesdf.drop(['date'], axis = __ )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
请填写第一个空格处的答案。
正确
1 / 1 分
6。
请填写第5题中第二个空格处的答案。
错误
0 / 1 分
7。
判断如下陈述是否正确?
根据第3题调整过的数据,要获取2015年1月30日到2月10日这期间微软更换CEO阶段股票的开盘价和收盘价,下面的命令可以运行并得到我们想要的结果:
1
quotesdf.ix['15/01/30':'15/02/10',['open', 'close']]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正确
1 / 1 分
8。
填写以下内容,使得查询在2015年下半年(即6月1日至12月31日)微软股票收盘价大于49美元的记录。请填写第一个空格处的答案。
1
quotesdf['15/06/01':_______][ _____ >]]> 49]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正确
1 / 1 分
9。
请填写第8题中第二个空格处的答案。
正确
1 / 1 分
10。
填写以下内容,使得查询在2015年整年内(即1月1日至12月31日)微软股票收盘价最高的5天数据。请填写第一个空格处的答案。
1
quotesdf['15/01/01':'15/12/31'].sort('close', ascending=____)[____]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正确
1 / 1 分
11。
请填写第10题中第二个空格处的答案。
正确
1 / 1 分
12。
判断如下陈述是否正确?
执行语句quotesdf['15/1/1':'15/5/31'].sort('volume') 可以得到根据成交量升序排列的2015年上半年的微软股票数据。
正确
1 / 1 分
13。
在第11题的基础上,填写以下内容,使得统计在2015年整年内(即1月1日至12月31日)微软股票涨价的每个月天数据。请填写第一个空格处的答案。
1
2
3
4
5
6
list1 = []
tmpdf = quotesdf['15/01/01':'15/12/31']
for i in range(0, len(tmpdf)):
list1.append(int(tmpdf.index[i][3:5]))
tmpdf[____] = list1
print tmpdf[ tmpdf.close >]]> _____]['month'].value_counts()
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正确
1 / 1 分
14。
请填写第13题中第二个空格处的答案。
正确
1 / 1 分
15。
在第13题基础上,填写以下内容,使得统计在2015年整年内(即1月1日至12月31日)微软股票每个月的总成交量。
1
tmpdf.groupby(_____)['volume'].sum()
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正确
1 / 1 分
16。
填写以下内容,使得合并在2015年整年内(即1月1日至12月31日)微软股票收盘价最高的5天和最低的5天。请填写第一个空格处的答案。
1
2
sorted = tmpdf.sort(____)
pd.concat([sorted[:5], sorted[__:]])
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正确
1 / 1 分
17。
请填写第16题中第二个空格处的答案。