1. 序
经过了一天的修炼,深深被恶心了,在虚拟环境中配置pyspark花式报错,由于本人实在是不想卸载3.6版的python,所以硬刚了一天,终于摸清了配置方法,并且配置成功,不抱怨了,开讲:

2. 需求环境
Anaconda3;(我的是最新版的Anaconda4.3.1(64位))

3. 安装虚拟环境
1、创建Python虚拟环境。
使用 conda create -n your_env_name python=3.5(2.7、3.6等) anaconda 命令创建python版本为X.X、名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到。
2、 激活虚拟环境
activate your_env_name
3、 安装虚拟环境包
conda install -n your_env_name
至此一个名字是your_env_name的虚拟环境就建好了,它的python版本是3.5版本的,可以通过cmd进入,然后输入activate your_env_name在输出python然后查看到

4. 资源准备
spark_2.2.0_bin-hadoop2.7.tgz

根据自己的需求版本,可以下载不同的spark版本,我用的是spark-2.0.1-bin-hadoop2.7,之后解压,注意存放的路径一定不能带空格,例如放到C:\Program Files就不行。这里我放到了D:\spark;之后就是添加环境变量。
有两种方法:
1、直接在path中添加环境变量:将D:\spark\spark-2.0.1-bin-hadoop2.7\bin,和D:\spark\spark-2.0.1-bin-hadoop2.7\sbin都加到环境变量中。
2、先新建一个SPARK_HOME的环境变量,值为D:\spark\spark-2.0.1-bin-hadoop2.7,之后将%SPARK_HOME%\bin和%SPARK_HOME%\sbin加入到path中
如果想看是否添加成功,需要将虚拟环境加入到path变量中,然后上移到原始python=3.6的路径前面,之后再cmd中输入pyspark就会出现下面的情况。注意:如果虚拟环境的路径不在原始路径前面会出现找不到路径的情况,当然这个路径只是为了看是否安装成功,跟在pycharm中运行成功与否没有任何关系,你也可以再变换回去。

spark的依赖环境中有对hadoop的需求,因此还需要下载对应版本的hadoop,这里面我下载的是有关hadoop2.7+的资源,无需安装完整的Hadoop,但需要hadoop.dll,winutils.exe等。根据下载的Spark版本,下载相应版本的hadoop2.7.1。
解压,添加环境变量(如pyspark添加环境变量一样,同样有两种方法),经过我的测试,好像这里面的资源不太够,反正我用着会报错,因此我选择了从原始资源中下载bin文件,然后替换了前面hadoop2.7.1里面的bin文件。
要想在PyCharm中调用pySpark,需要加载包。将D:\spark\spark-2.0.1-bin-hadoop2.7\python文件夹下pySpark文件夹拷贝到D:\ProgramData\Anaconda3\envs\tensorflow\Lib\site-packages**(注:这个地方是要拷贝到虚拟环境的包路径)

4. 1关键
注意咯,,,接下来这步操作决定我们是否能够完成配置,,,
1、在D:\spark\spark-2.0.1-bin-hadoop2.7\bin文件夹下找到pyspark文件,然后用notepad++打开。
2、找到export PYSPARK_PYTHON然后把这个地方变成export PYSPARK_PYTHON=python3
3、保存。。。大功告成
4、重启(可以先略过此步,进行下面验证,如果验证还是花式报错(2)就可以上本步,成为大绝杀,然后可以爽歪歪用pyspark了)
到目前为止,我们的准备工作终于做好了,,,不容易啊。。。其实到现在为止我们也算是安装完成,,惊不惊喜,意不意外,,没想到这么简单吧,哈哈哈哈哈哈,接下来我们就可以验证了。。

5. 验证
在这里引用雪伦的例子,

新建wordCount.py文件,写代码
注意setAppName、setMaster中千万不要带空格,否则会出现“Java gateway process exited before sending the driver its port number”的报错

import sys
from operator import add

from pyspark import SparkContext

if __name__ == "__main__":
sc = SparkContext(appName="PythonWordCount")
lines = sc.textFile('words.txt')
counts = lines.flatMap(lambda x: x.split(' ')) \
.map(lambda x: (x, 1)) \
.reduceByKey(add)
output = counts.collect()
for (word, count) in output:
print "%s: %i" % (word, count)

sc.stop()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
其中words.txt中的内容是

good bad cool
hadoop spark mlib
good spark mlib
cool spark bad
1
2
3
4
然后运行,,,你会发现——————————————————————————报错了是不是,哈哈哈。虽然不知道你报的什么错,肯定报错了,这才是虚拟环境装pyspark迷人的地方,花式报错,,别着急,那是因为我们没有添加项目的环境变量,在图中环境变量位置把SPARK_HOME的路径添加进去,之后再运行

出现

这就说明我们已经大功告成啦啦啦啦啦啦!!!!!!!!!!!!!!
---------------------
作者:Biorad
来源:CSDN
原文:https://blog.csdn.net/loverminger/article/details/76095845
版权声明:本文为博主原创文章,转载请附上博文链接!

win10下Anaconda3在虚拟环境python_version=3.5.3 中配置pyspark的更多相关文章

  1. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

  2. win10下通过Anaconda安装TensorFlow-GPU1.3版本,并配置pycharm运行Mnist手写识别程序

    折腾了一天半终于装好了win10下的TensorFlow-GPU版,在这里做个记录. 准备安装包: visual studio 2015: Anaconda3-4.2.0-Windows-x86_64 ...

  3. win10下Anaconda3配置环境变量

    有时候在win10安装好Anaconda3后,使用conda命令时依然会出现: C:\Users\dell\PycharmProjects\pytorch>conda list 'conda' ...

  4. Win10下Anaconda3安装CPU版本TensorFlow并使用Pycharm开发

    环境:windows10 软件:Anaconda3 1.安装Anaconda 选择相应的Anaconda进行安装,下载地址点击这里,下载对应系统版本的Anaconda3. 运行 开始菜单->An ...

  5. win10下anaconda3环境配置

    WINDOW系统设置环境变量:我的电脑右键-属性-高级系统设置-高级-环境变量中在path中加入你系统安装anaconda的目录下的scripts中: C:\Users\***\anaconda3\S ...

  6. win10 下的python虚拟环境安装使用(使用powershell)

    安装virtualenv 若要使用python虚拟环境进行开发,首先需要安装virtualenv.命令:pip install virtualenv 我已经装过了

  7. Win10下免安装版MySQL5.7的安装和配置

    1.MySQL5.7解压 2.新建配置文件my.ini放在D:\Free\mysql-5.7.26-winx64目录下 [mysql] # 设置mysql客户端默认字符集 default-charac ...

  8. java环境的配置——实现win10下双击直接运行jar文件

    java环境的配置--实现win10下双击直接运行jar文件 在渗透测试的过程中很多工具的安装和使用需要java环境,下面我来介绍一下java环境配置的超详细步骤(包含怎样实现win10下双击直接运行 ...

  9. Anaconda3(5-2)程序编辑器 win10下PyCharm安装及配置Pytorch流程

    由于破解和付费问题,不推荐.优先用自带的spyder Win10 下PyCharm安装流程:(1)官网:https://www.jetbrains.com/pycharm/download/#sect ...

随机推荐

  1. LINUX中错误 SELinux is disabled

    解决: setenforce: SELinux is disabled 那么说明selinux已经被彻底的关闭了 如果需要重新开启selinux,请按下面步骤: vi /etc/selinux/con ...

  2. 算法Sedgewick第四版-第1章基础-1.4 Analysis of Algorithms-005计测试算法

    1. package algorithms.analysis14; import algorithms.util.StdOut; import algorithms.util.StdRandom; / ...

  3. ZROI2018提高day5t2

    传送门 分析 考场上傻了,写了个树剖还莫名weila...... 实际就是按顺序考虑每个点,然后从他往上找,一边走一边将走过的边染色,如果走到以前染过色的边就停下.对于每一个a[i]的答案就是之前走过 ...

  4. Linux-shell获取天气

    用Linux中的shell获取天气,本来觉的比较难,原来,真简单,个位数的代码就搞定. 获取对应城市天气 所有天气信息都从中国天气网获取.每一个城市多会对应一个id(比如,北京为101010100,因 ...

  5. 数据结构与算法(Java版)_堆

    完全二叉树叫做堆. 完全二叉树就是最后一个节点之前不允许有不满的节点,就是不允许有空洞. 可以使用数组来做完全二叉树(堆). 堆分为大顶堆和小顶堆.大顶堆就是根节点上的数字是最大的,小顶堆就是根节点上 ...

  6. 数据结构--树--AVL树

    详情查看:http://www.cnblogs.com/skywang12345/p/3577360.html

  7. C++面试笔记--继承和接口

    整个C++程序设计全面围绕面向对象的方式进行.类的继承特性是C++的一个非常重要的机制.继承特性可以使一个新类获得其父类的操作和数据结构,程序员只需在新类中增加原有类没有的成分. 在面试过程中,各大企 ...

  8. 对C语言中static的理解

    对C语言中的static关键字的深入理解 在一次面试的时候面试官问我static全局变量与全局变量的区别,之前虽然用过但是并没仔细去搞懂他,这次来细心的学习一下. 基本概念 使用static有三种情况 ...

  9. 公司内部Wiki及搭建wiki系统-confluence

    Wiki 是一个协同著作平台或称开放编辑系统.我们可以用Wiki来建设帮助系统,知识库系统.国内公共wiki最著名就是百度百科.那公司内部为什么要使用wiki呢? 2.内部wiki的作用 1.鼓励分享 ...

  10. Ground Truth

    ground truth就是参考标准,一般用来做误差量化.比方说要根据历史数据预测某一时间的温度,ground truth就是那个时间的真实温度.error就是(predicted temperatu ...