Python3 使用pip安装git并获取Yahoo金融数据的操作


Posted in Python onApril 08, 2021

Python3.6.4必须downgrade成3.5

pip版本最低9.0.3

自己的电脑必须已经安装好git

关于anaconda prompt报错“Cannot find command 'git'”解决

在anaconda prompt执行

conda install pandas-datareader

报错,读prompt的错误,执行它提示的命令,把Python3.6.4降级成3.5,pip升级成9.0.3,过程有点长,5 6分钟。

(有点不太理解的是,Python降级后,我的程序与功能里显示的还是3.6.4 , 可能只是在anaconda里降级了?不懂)

电脑已经安装好git,在git bash里执行

git clone https://github.com/pydata/pandas-datareader.git

执行完毕后,在anaconda prompt里执行

pip install git+https://github.com/pydata/pandas-datareader.git

(因为开始我没有在git bash安装pandas-datareader就直接执行这一步,一直报Cannot find command 'git'”错,我就把git添加到环境变量了,不知道后来有没有帮助)

执行完毕,就可以使用Python获取Yahoo的金融数据了。

# 使用Yahoo Finance的API获取四个公司的股票数据
import pandas as pd
import numpy as np
from pandas_datareader import data
codes = ['AAPL', 'IBM', 'MSFT', 'GOOG'] # 四个股票
all_stock = {}
for ticker in codes:
all_stock[ticker] = data.get_data_yahoo(ticker,start='1/1/2018', end='30/3/2018') # 默认从2010年1月起始
volume = pd.DataFrame({tic: data['volume'] for tic, data in all_stock.items()})
open = pd.DataFrame({tic: data['open'] for tic, data in all_stock.items()})
high = pd.DataFrame({tic: data['high'] for tic, data in all_stock.items()})
low = pd.DataFrame({tic: data['low'] for tic, data in all_stock.items()})
close = pd.DataFrame({tic: data['close'] for tic, data in all_stock.items()})
price = pd.DataFrame({tic: data['adjclose'] for tic, data in all_stock.items()}) # 已调整或者复权后的收盘价,能比较真实反映股票的表现

补充:pip通过setup.py和git仓库安装package

安装setup.py配置文件中的包

进入到setup.py所在目录

pip install -e .

安装git仓库中的包

pip install git+git clone 仓库地址.git

python代码打包为whl格式

python setup.py bdist_wheel --universal

通过setup.py直接安装包

python setup.py build
python setup.py install

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
python 生成不重复的随机数的代码
May 15 Python
Python中的map、reduce和filter浅析
Apr 26 Python
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
Jul 11 Python
详解Django+Uwsgi+Nginx的生产环境部署
Jun 25 Python
pytorch 转换矩阵的维数位置方法
Dec 08 Python
Pycharm 实现下一个文件引用另外一个文件的方法
Jan 17 Python
spark dataframe 将一列展开,把该列所有值都变成新列的方法
Jan 29 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
Python带参数的装饰器运行原理解析
Jun 09 Python
详解Python多线程下的list
Jul 03 Python
Python+Tkinter制作专属图形化界面
Apr 01 Python
python神经网络Xception模型
May 06 Python
Django 如何实现文件上传下载
Apr 08 #Python
python3 删除所有自定义变量的操作
Apr 08 #Python
pytorch显存一直变大的解决方案
Apr 08 #Python
Python文件的操作示例的详细讲解
Django展示可视化图表的多种方式
python tkinter模块的简单使用
python如何在word中存储本地图片
You might like
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
php通用防注入程序 推荐
2011/02/26 PHP
PHP 年龄计算函数(精确到天)
2012/06/07 PHP
php文件服务实现虚拟挂载其他目录示例
2014/04/17 PHP
Laravel下生成验证码的类
2017/11/15 PHP
JS 自动安装exe程序
2008/11/30 Javascript
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
firefox火狐浏览器与与ie兼容的2个问题总结
2010/07/20 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
jquery实现表单输入时提示文字滑动向上效果
2015/08/10 Javascript
js实现三张图(文)片一起切换的banner焦点图
2015/08/25 Javascript
基于Vue.js的表格分页组件
2016/05/22 Javascript
JavaScript学习小结之被嫌弃的eval函数和with语句实例详解
2016/08/01 Javascript
微信小程序 简单DEMO布局,逻辑,样式的练习
2016/11/30 Javascript
JS遍历对象属性的方法示例
2017/01/10 Javascript
详解VUE 定义全局变量的几种实现方式
2017/06/01 Javascript
vue引入swiper插件的使用实例
2017/07/19 Javascript
详解vue-cli快速构建vue应用并实现webpack打包
2017/12/13 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
JS实现秒杀倒计时特效
2020/01/02 Javascript
vue+element_ui上传文件,并传递额外参数操作
2020/12/05 Vue.js
[50:02]完美世界DOTA2联赛PWL S2 Magma vs FTD 第三场 11.29
2020/12/03 DOTA
Python实现各种排序算法的代码示例总结
2015/12/11 Python
Python爬虫框架scrapy实现的文件下载功能示例
2018/08/04 Python
微信小程序python用户认证的实现
2019/07/29 Python
python基于json文件实现的gearman任务自动重启代码实例
2019/08/13 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
2020/01/08 Python
Python 解析pymysql模块操作数据库的方法
2020/02/18 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
2020/06/28 Python
python爬虫判断招聘信息是否存在的实例代码
2020/11/20 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
python 图像增强算法实现详解
2021/01/24 Python
css3绘制天猫logo实现代码
2012/11/06 HTML / CSS
凯撒娱乐:Caesars Entertainment
2018/02/23 全球购物
2014年政务公开工作总结
2014/12/09 职场文书
go 实现简易端口扫描的示例
2021/05/22 Golang