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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持程序员的世界。如有错误或未考虑完全的地方,望不吝赐教。

Python3 使用pip安装git并获取Yahoo金融数据的操作的更多相关文章

  1. python 网页解析器掌握第三方 lxml 扩展库与 xpath 的使用方法

    今天说的则是使用另外一种扩展库 lxml 来对网页完成解析。同样的,lxml 库能完成对 html、xml 格式的文件解析,并且能够用来解析大型的文档、解析速度也是相对比较快的。要掌握 lxml 的使用,就需要掌握掌握 xpath 的使用方法,因为 lxml 扩展库就是基于 xpath 的,所以这一......

  2. python 下载文件的几种方式分享

    1 、一般同步下载示例代码:import requestsimport osdef downlaod(url, file_path):headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68......

  3. python基于pexpect库自动获取日志信息

    1. 前言对大部分的人来说,解决 Bug 都是依靠关键字去日志去定位问题!在调试情况下,我们可以实时在控制台查看日志;但对于部署到服务器上的应用,日志都存放在服务器某个目录下,没法通过本地查看到这种情况下,就需要我们先登录服务器,然后进入到日志目录文件夹,最后通过日志文件去定位问题;如果涉及到 K8......

  4. Python实现钉钉/企业微信自动打卡的示例代码

    每天急匆匆赶地铁上班的时候总会一不小心就会忘记打卡,尤其是软件打卡,那有没有什么办法可以解决忘打卡的问题呢?今天给大家推荐一下一款神器,利用Python实现定时自动打卡。1 前期工具准备不用说的Python一部24小时可以放公司的安卓手机或电脑安装模拟器ADB工具2 ADB的安装配置去下载ADB安装......

  5. python实现固定尺寸图像拼接

    本文实例为大家分享了python实现固定尺寸图像拼接,供大家参考,具体内容如下讲解1、代码效果:固定尺寸图像拼接代码import osimport cv2import numpy as npdef joint(or_path, tar_path, size):determination = tar_......

  6. pytorch tensor int型除法出现的问题

    昨天晚上跑起来一个classification实验,今天发现训练loss在降,然而accuracy永远是0 。。。直觉告诉我evaluation有问题然后发现自己写了个很愚蠢的bugaccuracy对应的tensor出来是int型的,我用到了一个除法取平均。而pytorch里无论用 / or // ......

  7. Python学习(1) (python特点、优缺点)

    Python学习(1)一、python的特点二、python的优缺点1.优点2.缺点三、python源程序的基本概念一、python的特点1. python 是完全面向对象的语言 函数、模块、数字、字符串都是对象,在python中一切皆为对象完全支持继承、重载、多重继承支持重载运算符,也支持泛型设计......

  8. Python中的类对象

    目录抽象特点具体细节总结抽象特点Python 一切皆对象,基于此概念,对 类 class 有以下特点:类与实例的属性类对象创建可选择定义类属性,创建实例对象时,实例属性自动执行类的__init__方法初始化实例对象自动继承相应的类属性(如果有),但实例属性优先级更高实例方法,类方法,静态方法的参数实......

  9. Q-Q图原理详解及Python实现

    【导读】在之前的《数据挖掘概念与技术 第2章》的文章中我们介绍了Q-Q图的概念,并且通过调用现成的python函数, 画出了Q-Q图, 验证了Q-Q图的两个主要作用,1. 检验一列数据是否符合正态分布 2. 检验两列数据是否符合同一分布。本篇文章将更加全面的为大家介绍QQ图的原理以及自己手写函数实现......

  10. 详解python的变量缓存机制

    变量的缓存机制变量的缓存机制(以下内容仅对python3.6.x版本负责)机制只要有两个值相同,就只开辟一个空间为什么要有这样的机制在计算机的硬件当中,内存是最重要的配置之一,直接关系到程序的运行速度和流畅度。在过去计算机内存资源昂贵而小的年代中,程序的内存管理成为编程中的重要技术之一。python......

随机推荐

  1. Python 字符串去除空格的五种方法

    在处理Python代码字符串的时候,我们常会遇到要去除空格的情况,所以就总结了多种方法供大家参考。1、strip()方法去除字符串开头或者结尾的空格str = " Hello world "str.strip()输出:"Hello world"2、lstrip......

  2. Opencv+Python识别PCB板图片的步骤

    任务要求:基于模板匹配算法识别PCB板型号使用工具:Python3、OpenCV使用模板匹配算法,模板匹配是一种最原始、最基本的模式识别方法,研究某一特定对象物的图案位于图像的什么地方,进而识别对象物,模板匹配具有自身的局限性,主要表现在它只能进行平行移动,即原图像中的匹配目标不能发生旋转或大小变化......

  3. Java中的clone方法实例详解

    Java中对象创建clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。那么在java语言中,有几种方式可以创建对象呢?1 使用new操作符创建一个对象2 使用clone方法复制......

  4. 基于 Python 实践感知器分类算法

    Perceptron是用于二进制分类任务的线性机器学习算法。它可以被认为是人工神经网络的第一种和最简单的类型之一。绝对不是“深度”学习,而是重要的组成部分。与逻辑回归相似,它可以快速学习两类分类任务在特征空间中的线性分离,尽管与逻辑回归不同,它使用随机梯度下降优化算法学习并且不预测校准概率。在本教程......

  5. 使用 React 和 Threejs 创建一个VR全景项目

    最近我在学习使用 React 配合 Three.js 来搭建一个可以浏览720全景图片的项目实现的是加载一张 2:1 的720全景分享一下我的创建过程一、搭建框架并安装需要的插件npx create-react-app parano // 创建一个 React 项目npm install -S ty......

  6. python中yield的用法详解

    首先我要吐槽一下,看程序的过程中遇见了yield这个关键字,然后百度的时候,发现没有一个能简单的让我懂的,讲起来真TM的都是头头是道,什么参数,什么传递的,还口口声声说自己的教程是最简单的,最浅显易懂的,我就想问没有有考虑过读者的感受。接下来是正题:首先,如果你还没有对yield有个初步分认识,那么......

  7. C# unity实现物体延时出现

    本文实例为大家分享了unity实现物体延时出现的具体代码,供大家参考,具体内容如下新建一个cube和plane,隐藏cube,脚本挂在plane上。1. update计时器实现using System.Collections;using System.Collections.Generic;usin......

  8. 搭建 mariadb 数据库主从同步

    一、主(master)数据库配置1. my.cnf 添加配置[mariadb]log-binserver_id=1log-basename=master1binlog-format=mixedmax_binlog_size=200Mexpire_logs_days=7 server_id 必须唯一。......

  9. msxml3.dll 错误 800c0019 系统错误:-2146697191解决方法

    一个asp后台使用了XMLHTTP组件的页面无法无法生成静态页面了,运行时提示"msxml3.dll 错误 '800c0019′" 系统错误:-2146697191 请查找行 数。之前一直以为是服务器配置或数据库的原因,或者IE浏览器有问题,因为这是一个XMLHTTP对象组件,可......

  10. Mysql函数调用优化

    函数调用优化MySQL函数在内部被标记为确定性或不确定性。如果给定参数固定值的函数可以为不同的调用返回不同的结果,则它是不确定的。不确定函数的示例: RAND(), UUID()。如果某个函数被标记为不确定的,则将WHERE针对每一行(从一个表中选择时)或行的组合(从多表联接中选择时)评估子句中对该......