介绍

Anaconda是开源的Python包管理器。既是Python各种库的大礼包集合,特别是数据分析和科学计算方面的库都预装了,也是一个能创建虚拟机环境的工具。

我为什么安装

我安装它的原因不是科学计算,是因为我要用AkShare库获取数据,要求Python 3.6 及以上版本。我电脑Python 2.7.15,又不想升级,所以安装anaconda,用anaconda创建虚拟机环境,在虚拟机环境使用Python3.7,本地电脑保持原版本不变。

安装过程

下载地址www.anaconda.com选择download,



下载最新版本安装包Anaconda3-2020.02-Windows-x86_64.exe,





这里选择安装目录,将来创建的各个版本Python的环境文件也都放在这个目录的子目录下



这里我勾选了下面,没有勾选上面,开始安装

怎么用

打开

安装完成,在开始搜索ana会出现Anaconda prompt,我是以管理员身份运行的,不用管理员权限应该也没问题。



打开后窗口最前面的(base)表示你正处于Anaconda的基础环境,基础环境一般不真正使用,要根据自己具体项目需要建立自己的环境,否则这个工具的威力大打折扣了。

对比base环境的Python版本和正常命令行工具的Python版本,可以看到两者互不影响。

Ana窗口



普通cmd

修改channels

建立环境的时候要下载很多包,如果下载速度慢会导致下载timeout而终止,会报错,



解决办法是把channels设置为清华大学的镜像地址,在命令行依次执行下面命令。建议先设置下面的channels,然后创建你的第一个环境。

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/

新建环境

建立自己环境的命令conda create -n ak_test python=3.7.6, ak_test是新建环境的名称,叫什么随意,3.7.6是我指定的版本,需要哪个版本就写哪个。









到这里说明创建ak_test环境完成,同时提示进入环境和离开环境的命令。

执行conda activate ak_test,看到(base)变成了(ak_test),说明已经进入了ak_test环境。

安装akshare

这步每个人都不一样,按需要安装自己要的库。科学计算类的库Anaconda是预装的,安装更简单。

我建立这个环境是要使用akshare,安装,报错time out





是国内网络问题,使用阿里云镜像进行安装,命令如下

pip install akshare -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com  --upgrade





安装成功!

使用akshare

下面两个小例子展示akshare库的功能。

股票策略指数曲线

aksharetest.py

import akshare as ak
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False stock_df = ak.zdzk_fund_index(30, plot=False)
futures_df = ak.zdzk_fund_index(32, plot=False) fig = plt.figure(111, figsize=(20, 10), dpi=300)
adjust_stock_df = stock_df["20150102":] / stock_df["20150102"] * 1000
adjust_stock_df.plot(linewidth=4)
adjust_futures_df = futures_df["20150102":] / futures_df["20150102"] * 1000
adjust_futures_df.plot(linewidth=4)
plt.title("index example")
plt.legend()
plt.show()



会画出图片

股票指数查询

aksharetest02.py

import akshare as ak
stock_df = ak.stock_zh_index_spot()
print(stock_df)

ak_test环境和base是隔离的

如果执行conda deactivate离开这个环境切换到(base)环境,可以看到找不到akshare模块,说明base和ak_test环境是隔离的。

自建环境像是新建了个虚拟机

下面是vmware的虚拟机文件目录和Anaconda的自建环境文件目录,是不是有点像



总结

Anaconda可以迅速建立一套Python的开发运行环境,环境和宿主机互不影响,所建不同环境之间也互不影响,少了很多Python和库版本上的牵绊。

它在包管理上的使用,本文没有涉及。如果需要的库是anaconda里面预装的库和包,过程比本文要简单,堪称一键装机。

Anaconda安装和使用 akshare获取股票数据的更多相关文章

  1. Python股票分析系列——系列介绍和获取股票数据.p1

    本系列转载自youtuber sentdex博主的教程视频内容 https://www.youtube.com/watch?v=19yyasfGLhk&index=4&list=PLQ ...

  2. 实时获取股票数据,免费!——Python爬虫Sina Stock实战

    更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流. 实时股票数据的重要性 对于四大可交易资产:股票.期货.期权.数字货币来说,期货.期权.数字货币,可以从交 ...

  3. R获取股票数据

    R中好几个Pkg都提供了股票数据的在线下载方法,如果非得在其中找出一个最好的,那么quantmod当之无愧!举一个例子,譬如下载沪市大盘数据,代码可以是: library(quantmod)SSE & ...

  4. 一个采用python获取股票数据的开源库,相当全,及一些量化投资策略库

    tushare: http://tushare.waditu.com/index.html 为什么是Python? 就跟javascript在web领域无可撼动的地位一样,Python也已经在金融量化 ...

  5. Python3获取股票行情数据(中国个股/中国指数/全球指数)

    #!/usr/local/bin/python3 #coding=utf-8 #source http://www.cnblogs.com/txw1958/ import os, io, sys, r ...

  6. Python使用TuShare将股票数据保存到Oracle数据

    TuShare是个获取股票数据的模块包,我们进行分析,需要将股票数据保存到本地,避免每次都从网上获取,由于本机装有ORCALE,以ORACLE为例介绍如何保存股票数据到本地. 一.大致思路:我们先获取 ...

  7. 腾迅股票数据接口 http/javascript

    腾迅股票数据接口 http/javascript 分类: Finance Perl2012-12-21 23:48 31132人阅读 评论(3) 收藏 举报 之前使用了新浪的股票数据,由于新浪http ...

  8. 数据接口-免费版(股票数据API)

    获取股票数据的源头主要有:数据超市.雅虎.新浪.Google.和讯.搜狐.ChinaStockWebService.东方财富客户端.证券之星.网易财经. 数据超市 2016年5月6日更新.根据最近频繁 ...

  9. 用Python爬取股票数据,绘制K线和均线并用机器学习预测股价(来自我出的书)

    最近我出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,京东链接:https://item.jd.com/69241653952.html,在其中用股票范例讲述Pyth ...

随机推荐

  1. Kubernetes 初体验(先占个坑)

  2. InnoDB 引擎中的索引类型

    首先索引是一种数据结构,并且索引不是越多越好.合理的索引可以提高存储引擎对数据的查询效率. 形象一点来说呢,索引跟书本的目录一样,能否快速的查找到你需要的信息,取决于你设计的目录是否合理. MySQL ...

  3. IMX6ULL开发板Linux_WIFI驱动实验

    1.在迅为i.MX6ULL开发板上使用的是 usb 接口的 RTL8723 wifi 模块,原理图如下所示:可以看到 RTL8723 模块的接口非常简单,只有 DP1 和 DM1 连接到 usb HU ...

  4. Linux下Python3.6的安装及避坑指南

    Python3的安装 1.安装依赖环境 Python3在安装的过程中可能会用到各种依赖库,所以在正式安装Python3之前,需要将这些依赖库先行安装好. yum -y install zlib-dev ...

  5. 面向对象--有参数的__init__方法

    有参数的__init__()方法 class Hero(object): """定义了一个英雄类,可以移动和攻击""" def __init ...

  6. python实例基础(慢慢补充)

    1.有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 2.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立 ...

  7. oracle之DML和DDL语句的其他用法

    DML和DDL语句的其他用法 17.1 DML语句-MERGE 作用:把数据从一个表复制到另一个表,插入新数据或替换掉老数据. Oracle 10g中MERGE有如下一些改进: 1.UPDATE或IN ...

  8. Java中读取配置文件中的内容,并将其赋值给静态变量的方法

    应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...

  9. 分别用canvas和css3的transform做出钟表的效果

    两种方式实际上在js上的原理都是一样的.都是获取时间对象,再获取时间对象的时分秒,时分秒乘以其旋转一刻度(一秒.一分.一小时)对应的角度.css3中要赋值于transform:rotate(角度),c ...

  10. 手写spring

    体系结构 Spring 有可能成为所有企业应用程序的一站式服务点,然而,Spring 是模块化的,允许你挑选和选择适用于你的模块,不必要把剩余部分也引入.下面的部分对在 Spring 框架中所有可用的 ...