Go back to the English version of the documentation数据元数据
数据元数据 (SPSS Modeler)
Last updated: 2024年10月07日
本节描述如何根据 pyspark.sql.StructField
来设置数据模型属性。
spss.datamodel.Role 对象
这个类枚举数据模型中每个字段的有效角色。
BOTH
:指出该字段可以是前提条件或结果。
FREQWEIGHT
:指出该字段用作频率权重,不会显示给用户。
INPUT
:指出该字段是预测变量或前提条件。
NONE
:指出该字段不会在建模期间直接使用。
TARGET
:指出该字段是预测而得,或者是结果。
PARTITION
:指出该字段用于识别数据分区。
RECORDID
:指出该字段用于识别记录标识。
SPLIT
:指出该字段用于拆分数据。
spss.datamodel.Measure 对象
这个类枚举数据模型中字段的测量级别。
UNKNOWN
:指出测量类型未知。
CONTINUOUS
:指出测量类型为连续。
NOMINAL
:指出测量类型为名义。
FLAG
:指出字段值是两个值中的一个。
DISCRETE
:指出字段值应解释为值集合。
ORDINAL
:指出测量类型为有序。
TYPELESS
:指出该字段可以包含任何与其存储方式兼容的值。
pyspark.sql.StructField 对象
表示
StructType
中的字段。 StructField
对象是由 4 个字段组成:name (string)
:StructField
的名称dataType (pyspark.sql.DataType)
:特定数据类型nullable (bool)
:指出StructField
的值是否可以包含None
值metadata (dictionary)
:Python 字典,用于存储选项属性
可以使用元数据字典实例来存储特定字段的 measure、role 或 label 属性。 这些属性的关键字如下所示:
measure
:measure
属性的关键字role
:role
属性的关键字displayLabel
:label
属性的关键字
示例:
from spss.datamodel.Role import Role
from spss.datamodel.Measure import Measure
_metadata = {}
_metadata['measure'] = Measure.TYPELESS
_metadata['role'] = Role.NONE
_metadata['displayLabel'] = "field label description"
StructField("userName", StringType(), nullable=False,
metadata=_metadata)