如何将PySpark导入Python的放实现(2种)

方法一

使用findspark

使用pip安装findspark:

pip install findspark

在py文件中引入findspark:

>>> import findspark
>>> findspark.init()

导入你要使用的pyspark库

>>> from pyspark import *

优点:简单快捷
缺点:治标不治本,每次写一个新的Application都要加载一遍findspark

方法二

把预编译包中的Python库文件添加到Python的环境变量中

export SPARK_HOME=你的PySpark目录
export PYTHONPATH=$SPARK_HOME/libexec/python:$SPARK_HOME/libexec/python/build:$PYTHONPATH

优点:一劳永逸
缺点:对于小白可能不太了解环境变量是什么

问题1、ImportError: No module named pyspark

现象:

  • 已经安装配置好了PySpark,可以打开PySpark交互式界面;
  • 在Python里找不到pysaprk。

参照上面解决

问题2、ImportError: No module named ‘py4j'

现象:

已经安装配置好了PySpark,可以打开PySpark交互式界面;
按照上面的b方式配置后出现该问题。
解决方法:

把py4j添加到Python的环境变量中

export PYTHONPATH= $SPARK_HOME/python/lib/py4j-x.xx-src.zip:$PYTHONPATH

注意:这里的py4j-x.xx-src.zip根据自己电脑上的py4j版本决定。

测试成功的环境

  • Python: 3.7、2.7
  • PySpark: 1.6.2 - 预编译包
  • OS: Mac OSX 10.11.1

参考
Stackoverflow: importing pyspark in python shell
Stackoverflow: Why can't PySpark find py4j.java_gateway?

到此这篇关于如何将PySpark导入Python的放实现(2种)的文章就介绍到这了,更多相关PySpark导入Python内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Pyspark获取并处理RDD数据代码实例

    弹性分布式数据集(RDD)是一组不可变的JVM对象的分布集,可以用于执行高速运算,它是Apache Spark的核心. 在pyspark中获取和处理RDD数据集的方法如下: 1. 首先是导入库和环境配置(本测试在linux的pycharm上完成) import os from pyspark import SparkContext, SparkConf from pyspark.sql.session import SparkSession os.environ["PYSPARK_PYTHON&

  • 浅谈PySpark SQL 相关知识介绍

    1 大数据简介 大数据是这个时代最热门的话题之一.但是什么是大数据呢?它描述了一个庞大的数据集,并且正在以惊人的速度增长.大数据除了体积(Volume)和速度(velocity)外,数据的多样性(variety)和准确性(veracity)也是大数据的一大特点.让我们详细讨论体积.速度.多样性和准确性.这些也被称为大数据的4V特征. 1.1 Volume 数据体积(Volume)指定要处理的数据量.对于大量数据,我们需要大型机器或分布式系统.计算时间随数据量的增加而增加.所以如果我们能并行化计算

  • pyspark 随机森林的实现

    随机森林是由许多决策树构成,是一种有监督机器学习方法,可以用于分类和回归,通过合并汇总来自个体决策树的结果来进行预测,采用多数选票作为分类结果,采用预测结果平均值作为回归结果. "森林"的概念很好理解,"随机"是针对森林中的每一颗决策树,有两种含义:第一种随机是数据采样随机,构建决策树的训练数据集通过有放回的随机采样,并且只会选择一定百分比的样本,这样可以在数据集合存在噪声点.异常点的情况下,有些决策树的构造过程中不会选择到这些噪声点.异常点从而达到一定的泛化作用在

  • pyspark给dataframe增加新的一列的实现示例

    熟悉pandas的pythoner 应该知道给dataframe增加一列很容易,直接以字典形式指定就好了,pyspark中就不同了,摸索了一下,可以使用如下方式增加 from pyspark import SparkContext from pyspark import SparkConf from pypsark.sql import SparkSession from pyspark.sql import functions spark = SparkSession.builder.conf

  • pycharm编写spark程序,导入pyspark包的3中实现方法

    一种方法: File --> Default Setting --> 选中Project Interpreter中的一个python版本-->点击右边锯齿形图标(设置)-->选择more-->选择刚才选中的那个python版本-->点击最下方编辑(也就是增加到这个python版本下)-->点击➕-->选中spark安装目录下的python目录-->一路OK. 再次在python文件中写入如下 from pyspark import SparkConf

  • Pyspark读取parquet数据过程解析

    parquet数据:列式存储结构,由Twitter和Cloudera合作开发,相比于行式存储,其特点是: 可以跳过不符合条件的数据,只读取需要的数据,降低IO数据量:压缩编码可以降低磁盘存储空间,使用更高效的压缩编码节约存储空间:只读取需要的列,支持向量运算,能够获取更好的扫描性能. 那么我们怎么在pyspark中读取和使用parquet数据呢?我以local模式,linux下的pycharm执行作说明. 首先,导入库文件和配置环境: import os from pyspark import

  • PyCharm搭建Spark开发环境实现第一个pyspark程序

    一, PyCharm搭建Spark开发环境 Windows7, Java1.8.0_74, Scala 2.12.6, Spark 2.2.1, Hadoop2.7.6 通常情况下,Spark开发是基于Linux集群的,但这里作为初学者并且囊中羞涩,还是在windows环境下先学习吧. 参照这个配置本地的Spark环境. 之后就是配置PyCharm用来开发Spark.本人在这里浪费了不少时间,因为百度出来的无非就以下两种方式: 1.在程序中设置环境变量 import os import sys

  • PyCharm+PySpark远程调试的环境配置的方法

    前言:前两天准备用 Python 在 Spark 上处理量几十G的数据,熟料在利用PyCharm进行PySpark远程调试时掉入深坑,特写此博文以帮助同样深处坑中的bigdata&machine learning fans早日出坑. Version :Spark 1.5.0.Python 2.7.14 1. 远程Spark集群环境 首先Spark集群要配置好且能正常启动,版本号可以在Spark对应版本的官方网站查到,注意:Spark 1.5.0作为一个比较古老的版本,不支持Python 3.6+

  • 如何将PySpark导入Python的放实现(2种)

    方法一 使用findspark 使用pip安装findspark: pip install findspark 在py文件中引入findspark: >>> import findspark >>> findspark.init() 导入你要使用的pyspark库 >>> from pyspark import * 优点:简单快捷 缺点:治标不治本,每次写一个新的Application都要加载一遍findspark 方法二 把预编译包中的Python库

  • python导包的几种方法(自定义包的生成以及导入详解)

    python是一门灵活的语言,也可以说python是一门胶水语言,顾名思义,就是其可以导入各类的包,python的包可以说是所有语言中最多的.当然导入包大部分是为了更快捷,更方便,效率更高.对于刚入门的python爱好者来说最初接触的应该是import直接导入包的方式,例如 import time,就是导入了python的time包,这个包中的方法可以处理大部分我们项目中遇到的关于时间的问题. 下面我会详细介绍几种导入包的方式(在开发过程中绝对够用)以及怎样把其他文件夹中的python模块生成我

  • 利用Python Pygame放个烟花

    uu们,有多久没放烟花了?今年你所在的地方允许放烟花么?既然我们不能线下放,那么我们就在线上放个够吧,先上最后效果图 老规矩,先导包,导入pygame,Python Pygame 是一款专门为开发和设计 2D 电子游戏而生的软件包,它支 Windows.Linux.Mac OS 等操作系统,具有良好的跨平台性. import pygame from random import randint, uniform, choice import math Pygame 绘制烟花的基本原理 1.发射阶段

  • Pycharm导入Python包,模块的图文教程

    1.点击File->settings 2.选择Project Interpreter,点击右边绿色的加号添加包 3.输入你想添加的包名,点击Install Package 4.可以在Pycharm保存项目的目录下查看已经安装的包,路径D:\PycharmProjects\untitled\venv\Lib\site-packages 以上这篇Pycharm导入Python包,模块的图文教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 通过字符串导入 Python 模块的方法详解

    我们平时导入第三方模块的时候,一般使用的是 import 关键字,例如: import scrapy from scrapy.spider import Spider 但是如果各位同学看过 Scrapy 的 settings.py 文件,就会发现里面会通过字符串的方式来指定pipeline 和 middleware,例如: DOWNLOADER_MIDDLEWARES = { 'Test.middlewares.ExceptionRetryMiddleware': 545, 'Test.midd

  • PyCharm导入python项目并配置虚拟环境的教程详解

    进入PyCharm后,点击File→Open,然后在弹窗中选择需要导入项目的文件夹: 打开了python项目后,需要配置该项目对应的python才可以正常运行: 配置步骤:File→settings 在设置弹窗中选择Project Interpreter,然后点击add: 在弹窗中,选择Existing environment,路径可以选择python项目的路径: 然后就大功告成了,可以去试着运行你的程序了~ 总结 以上所述是小编给大家介绍的PyCharm导入python项目并配置虚拟环境的教程

  • Pycharm如何导入python文件及解决报错问题

    导入py文件 1.进入pycharm之后,点击File,点击点击Open 2.根据存放路劲找到.py文件,点击ok 解决报错问题 我们在导入自己写的.py文件时,可能会出现报错,如下是解决办法 点击File->Settings 2.进入Settings后,找到Build,Execution,Deployment,点击Console->Python Console->勾选Add source roots to PYTHONPYTH,点击OK. 3.接下来,选中你的工程,右键,点击Mark

  • python 执行函数的九种方法

    方法一:直接调用函数运行 这种是最简单且直观的方法 def task():     print("running task") task() 如果是在类中,也是如此 class Task:     def task(self):         print("running task") Task().task() 方法二:使用偏函数来执行 在 functools 这个内置库中,有一个 partial 方法专门用来生成偏函数. def power(x, n):   

  • 深入解读Python解析XML的几种方式

    在XML解析方面,Python贯彻了自己"开箱即用"(batteries included)的原则.在自带的标准库中,Python提供了大量可以用于处理XML语言的包和工具,数量之多,甚至让Python编程新手无从选择. 本文将介绍深入解读利用Python语言解析XML文件的几种方式,并以笔者推荐使用的ElementTree模块为例,演示具体使用方法和场景.文中所使用的Python版本为2.7. 一.什么是XML? XML是可扩展标记语言(Extensible Markup Langu

  • 基于Python中单例模式的几种实现方式及优化详解

    单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. 比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个 AppConfig 的类来读取配置文件的信息.如果在程序运行期间,有很多地方都需要使用配置文件的内容,也就是说,很多地方都需要创建 AppConfig 对象的实例,这就导致系统中存在多个 AppConfig 的实例对象,而这样会严重浪

随机推荐