为了账号安全,请及时绑定邮箱和手机立即绑定

如何将值从表传递给 pyspark 变量?

如何将值从表传递给 pyspark 变量?

眼眸繁星 2023-01-04 16:10:16
这可能是一个愚蠢的问题,但我有一个表,其中每一列都包含一个我想传递给变量的值:    object  = spark.sql("""      select sfObject from db.tbl      where Id = {}       """.format(1))          a.show()我看到的是一个名为sfObject“ValueA”的预期对应值的列,我取回了一个pyspark.sql.dataframe.DataFrame类型对象。我正在尝试将每列的值传递给一个变量,这样object = 'ValueA'. 我怎样才能做到这一点?谢谢!
查看完整描述

2 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

IIUC 你想要列的值而不是数据框的值,所以在你的情况下你可以这样做


object  = spark.sql("""

 select sfObject from db.tbl

 where Id = {}

  """.format(1)).collect()[0][0]

该对象现在将包含值而不是数据框。


查看完整回答
反对 回复 2023-01-04
?
12345678_0001

TA贡献1802条经验 获得超5个赞

如果我正确理解了这个问题,你想从 python shell 中的 DataFrame 中获取数据作为变量。为此,您可以使用

object.collect()

获取具有pyspark.sql.Row与 DataFrame 中的列对应的字段的 python 对象列表,或者

object.toPandas()

获取DataFrame带有数据的 Pandas 对象。


查看完整回答
反对 回复 2023-01-04
  • 2 回答
  • 0 关注
  • 80 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信