[英]PySpark How to parse and get field names from Dataframe schema's StructType Object
我已經從 Hive 表創建了 Dataframe 並想要檢索字段/列名稱。
>>>a=df.schema
>>>a
StructType(List(StructField(empid, IntegerType, true), StructField(empname,StringType, true)))
如何從此對象中檢索字段名稱(empid、empname)。
使用pyspark.sql.types.StructType.fieldnames
:
fieldNames()
返回列表中的所有字段名稱。
>>> struct = StructType([StructField("f1", StringType(), True)]) >>> struct.fieldNames() ['f1']
您還可以使用 df.columns 以列表形式獲取列名。
>>> spark.version
u'2.4.0.cloudera2'
>>>
>>> df=spark.sql("select 10 empid, 's' empname from range(1)")
>>> df.schema
StructType(List(StructField(empid,IntegerType,false),StructField(empname,StringType,false)))
>>> df.schema.fieldNames()
['empid', 'empname']
>>> df.columns
['empid', 'empname']
>>>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.