You can put internal Java object not to wrap Python:
%pyspark df = sc.parallelize([(1, "foo"), (2, "bar")]).toDF(["k", "v"]) z.put("df", df._jdf)
and then make sure you use the correct type:
val df = z.get("df").asInstanceOf[org.apache.spark.sql.DataFrame] // df: org.apache.spark.sql.DataFrame = [k: bigint, v: string]
but it is better to register a temporary table:
%pyspark
and use SQLContext.table to read it:
// sqlContext.table in Spark 1.x val df = spark.table("df")
df: org.apache.spark.sql.DataFrame = [k: bigint, v: string]
To convert backwards see Zeppelin: Scala Dataframe to python
zero323
source share