当前位置: 首页 > 知识库问答 >
问题:

Pyspark读取csv[重复]

鲜于峰
2023-03-14

pyspark新手,希望将csv文件读取到数据帧。似乎不能让人读。有什么帮助吗?

from pyspark.sql import SQLContext
import pyspark
from pyspark.sql import Row
import csv


sql_c = SQLContext(sc)

rdd = sc.textFile('data.csv').map(lambda line: line.split(","))

rdd.count()

()中的Py4JJavaError回溯(最近一次调用)----

共有2个答案

羊城
2023-03-14

要独立于spark版本读取csv,请执行以下操作:

if sc.version.startswith("2"):
     csv_plugin = "csv"
else:
     csv_plugin = "com.databricks.spark.csv"

dataframe = sql_c.read.format(csv_plugin).options(header='true', inferSchema='true').load('data.csv')

如果没有页眉,请删除。

毛成济
2023-03-14

如果使用Spark 2,首选方法

df = sql_c.read.csv('data.csv')
 类似资料:
  • 场景是:EventHub- 文件格式:CSV(带引号、管道分隔和自定义架构) 我正在尝试读取来自eventhub的CSV字符串。Spark成功地使用正确的模式创建了数据框,但在每条消息之后,数据框最终都是空的。 我设法在流媒体环境之外做了一些测试,当从文件中获取数据时,一切都很顺利,但当数据来自字符串时,一切都失败了。 所以我找到了一些链接来帮助我,但没有一个工作: can-i-read-a-cs

  • 我在尝试生成一个简单DF的共线性分析时遇到了问题(见下文)。我的问题是,每次尝试运行该函数时,都会检索到以下错误消息: 下面是我正在使用的代码 我试图运行函数的DF如下所示。 我在这里有两个猜测;但不知道如何解决这个问题: -猜测1:np。arrange导致与标头发生某种冲突 -猜想2:问题来自blankseperator,它阻止函数正确地从一列跳转到另一列。问题是,我的CSV文件已经有分隔符(我

  • 我尝试使用pyspark读取csv文件,并使用以下pyspark代码: 但是我得到了这个错误: 在collect(self)532中使用SCCallSiteSync(self._sc)作为CSS:533 sock_info=self._jdf.collectTopython()-->534返回列表(_load_from_socket(sock_info,BatchedSerializer()))5

  • 问题内容: 我正在尝试根据我已经拥有的csv检查提取数据的值。它只会循环遍历CSV的行一次,我只能检查feed.items()的一个值。我需要在某个地方重置值吗?有没有更好/更有效的方法来做到这一点?谢谢。 问题答案: 您可以通过重置文件对象的读取位置来“重置” CSV迭代器。

  • 我正在尝试用PySpark从HBase写/读。 环境: null 我的火花提交是: 当我写到HBase时,一切都很好,数据从mydf保存到HBase表中。 当我试图阅读时,它很好,只有在激发行动之前。df.show()-导致错误。

  • 当我尝试导入带有火花的本地CSV时,默认情况下每个列都作为字符串读取。但是,我的列只包括整数和时间戳类型。更具体地说,CSV如下所示: 我已经找到了这个问题中应该有效的代码,但当我执行它时,所有条目都返回为NULL。 我使用以下内容来创建自定义架构: 然后使用以下命令读取CSV: 返回: 我是否错过了关键的一步?我怀疑Date列是问题的根源。注意:我在GoogleCollab中运行这个。