pyspark.sql.functions.from_json¶
-
pyspark.sql.functions。
from_json
( 上校:ColumnOrName,模式:联盟(pyspark.sql.types.ArrayType,pyspark.sql.types.StructType,pyspark.sql.column.Column,str],选项:可选(Dict(str,str]]=没有一个 )→pyspark.sql.column.Column¶ -
解析一个列包含一个JSON字符串
MapType
与StringType
作为键类型,StructType
或ArrayType
与指定的模式。返回零,对于一个unparseable字符串。- 参数
例子
> > >从pyspark.sql.types进口*> > >数据=((1,“{”“:1}”)]> > >模式=StructType([StructField(“一个”,IntegerType())))> > >df=火花。createDataFrame(数据,(“关键”,“价值”))> > >df。选择(from_json(df。价值,模式)。别名(“json”))。收集()(行(json =行(= 1)))> > >df。选择(from_json(df。价值,“INT”)。别名(“json”))。收集()(行(json =行(= 1)))> > >df。选择(from_json(df。价值,“MAP < STRING, INT >”)。别名(“json”))。收集()行(json = {a: 1}))> > >数据=((1,“[{“a”: 1}]”)]> > >模式=ArrayType(StructType([StructField(“一个”,IntegerType()))))> > >df=火花。createDataFrame(数据,(“关键”,“价值”))> > >df。选择(from_json(df。价值,模式)。别名(“json”))。收集()行(json =(行(= 1))))> > >模式=schema_of_json(点燃(“‘{“a”: 0}”))> > >df。选择(from_json(df。价值,模式)。别名(“json”))。收集()(行(json =行(= None)))> > >数据=((1,“[1,2,3]”)]> > >模式=ArrayType(IntegerType())> > >df=火花。createDataFrame(数据,(“关键”,“价值”))> > >df。选择(from_json(df。价值,模式)。别名(“json”))。收集()行(json = [1, 2, 3]))