gpt4 book ai didi

python - 在 zeppelin 中将 pandas 数据帧转换为 RDD

转载 作者:行者123 更新时间:2023-11-30 22:35:42 24 4
gpt4 key购买 nike

我是 Zeppelin 的新手,有些事情我不明白。

我已经使用 python 从数据库下载了一个表,然后,我想将其转换为 RDD。但我收到错误,找不到该表。 我认为使用其他解释器创建的表存在问题,但我真的不知道......我尝试过 thisthis问题但仍然不起作用,他们直接用spark创建df。任何帮助都会非常有用:)

 %python
engine = create_engine(
'mysql+mysqlconnector://...')
df = pd.read_sql(query, engine)

%spark
val sqlContext = new org.apache.spark.sql.SQLContext(sc)

import sqlContext.implicits._
df=df.registerTempTable("df")

val df = sqlContext.sql("SELECT * from df LIMIT 5")
df.collect().foreach(println)

最佳答案

将 Pandas DataFrame 转换为 Spark DataFrame 非常简单:

%python
import pandas

pdf = pandas.DataFrame([[1, 2]]) # this is a dummy dataframe

# convert your pandas dataframe to a spark dataframe
df = sqlContext.createDataFrame(pdf)

# you can register the table to use it across interpreters
df.registerTempTable("df")

# you can get the underlying RDD without changing the interpreter
rdd = df.rdd

要使用 scala Spark 获取它,您只需执行以下操作:

%spark
val df = sqlContext.sql("select * from df")
df.show()
// +---+---+
// | 0| 1|
// +---+---+
// | 1| 2|
// +---+---+

您还可以获取底层rdd:

val rdd = df.rdd

关于python - 在 zeppelin 中将 pandas 数据帧转换为 RDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44452305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com