จะเพิ่มเนื้อหารายการทั้งหมดลงในแถว Pyspark Dataframe ได้อย่างไร

ฉันกำลังสร้าง pyspark dataframe ใหม่จากรายการสตริง รหัสของฉันควรมีลักษณะอย่างไร

นี่คือรายการของฉัน: ['there', 'is', 'one', 'that', 'commands'] และนี่คือสิ่งที่ฉันต้องการในอุดมคติ:

คำ(ส่วนหัว)

แถวที่ 1: ['there', 'is', 'one', 'that', 'commands'] แถวที่ 2: ['test', 'try'

ฉันได้ลองใช้รหัสต่อไปนี้แล้ว แต่ไม่มีรหัสใดที่ให้สิ่งที่ฉันต้องการเลย

test_list=['hi','bye','thanks']
test_list=sc.parallelize(test_list)

schema = StructType([StructField("name", StringType(), True)])
df3 = sqlContext.createDataFrame(test_list, schema)

และ

test_list=['hi','bye','thanks']
test_list=sc.parallelize(test_list)
df3 = sqlContext.createDataFrame(row(test_list), schema)

ฉันไม่สามารถให้ dataframes แสดงโดยใช้ df.show()


person Matthew Loh    schedule 18.02.2019    source แหล่งที่มา


คำตอบ (1)


คุณเพียงแค่ต้องนำเข้า แถว วัตถุ ส่วนที่เหลือทุกอย่างเรียบร้อยดี

from pyspark.sql.types import Row, StructType, StructField, StringType
test_list=['hi','bye','thanks']
test_list=sc.parallelize(test_list)

rdd= test_list.map(lambda t: Row(name=t))
schema = StructType([StructField("name", StringType(), True)])
df = sqlContext.createDataFrame(rdd, schema)
df.show()
+------+
|  name|
+------+
|    hi|
|   bye|
|thanks|
+------+
person cph_sto    schedule 18.02.2019
comment
ขอบคุณมากสำหรับการแบ่งปัน นี่เหมือนกับ... NAME ['สวัสดี', ''บาย',ขอบคุณ'] หรือชื่อ 'สวัสดี' 'บาย' 'ขอบคุณ' - person Matthew Loh; 18.02.2019
comment
ฉันคิดว่าคุณกำลังมีปัญหาในการสร้าง DataFrame ขออภัย คำถามของคุณยังไม่ชัดเจนสำหรับฉัน หากคุณชี้แจงให้ชัดเจนฉันก็สามารถทำการเปลี่ยนแปลงที่เกี่ยวข้องได้ โฮไม่เข้าใจว่าคุณหมายถึงอะไร - ชื่อ ['สวัสดี', ''บาย' ขอบคุณ'] หรือชื่อ 'สวัสดี' 'บาย' 'ขอบคุณ' - person cph_sto; 18.02.2019
comment
สวัสดี cph ฉันต้องการ : NAME ['สวัสดี' ''ลาก่อน' ขอบคุณ'] ขอบคุณ! - person Matthew Loh; 20.02.2019
comment
คุณต้องการหนึ่งคอลัมน์ที่มีรายการ NAME 'สวัสดี' 'บาย' 'ขอบคุณ'? คุณช่วยวางรูปภาพชุดข้อมูลของคุณในคำถามได้ไหม - person cph_sto; 20.02.2019
comment
สวัสดี ฉันจัดการแก้ไขปัญหาได้แล้ว ขอบคุณมาก! - person Matthew Loh; 21.02.2019
comment
นั่นเยี่ยมมาก ทั้งหมดที่ดีที่สุด - person cph_sto; 21.02.2019