【发布时间】:2020-04-13 23:24:02
【问题描述】:
我是 pyspark 的新手
想从由 Row 创建的 DataFrame 访问列。
请参阅我的 .py 文件中的以下代码
它抛出错误 AttributeError: 'DataFrame' object has no attribute 'product'
import findspark
findspark.init("/opt/spark")
from pyspark.sql import SparkSession
from pyspark.sql import Row
from pyspark.sql import SQLContext
productRevenue = Row("product", "category", "revenue")
spark = SparkSession \
.builder \
.appName("DataFrame Learning") \
.getOrCreate()
sqlContext = SQLContext(spark)
productRevenue1 = productRevenue("product", "Cell phone", 6000)
productRevenue2 = productRevenue("Normal", "Tablet", 1500)
productRevenue3 = productRevenue("Mini", "Tablet", 5500)
productRevenue4 = productRevenue("Ultra thin", "Cell phone", 5000)
productRevenue5 = productRevenue("Very thin", "Cell phone", 6000)
productRevenue6 = productRevenue("Big", "Tablet", 2500)
productRevenue7 = productRevenue("Bendable", "Cell phone", 3000)
productRevenue8 = productRevenue("Foldable", "Cell phone", 3000)
productRevenue9 = productRevenue("Pro", "Tablet", 5500)
productRevenue10 = productRevenue("Pro2", "Tablet", 5500)
productRevenueAll = Row(
productRevenue=[productRevenue1, productRevenue2, productRevenue3, productRevenue4, productRevenue5,
productRevenue6, productRevenue7, productRevenue8, productRevenue9, productRevenue10])
dataFrame = spark.createDataFrame(productRevenueAll)
filter_df = dataFrame.filter((dataFrame.product=="product") )
【问题讨论】:
标签: apache-spark pyspark