第 4 课:浏览自行车购买者挖掘模型
在本课中,你将使用 SELECT (DMX) 语句浏览决策树中的内容,并聚类分析第 2 课:将挖掘模型添加到预测挖掘结构中创建的挖掘模型。
挖掘模型中包含的列不是由挖掘结构定义的列,而是用于说明通过算法获得的趋势和模式的特定列集。 DMSCHEMA_MINING_MODEL_CONTENT行集架构行集中介绍了这些挖掘模型列。 例如,内容架构行集中的 MODEL_NAME 列包含挖掘模型的名称。 对于聚类分析挖掘模型,NODE_CAPTION 列包含每个分类的名称,NODE_DESCRIPTION 列包含每个分类的特征说明。 可以使用 SELECT FROM <模型>浏览这些列。DMX 中的 CONTENT 语句。 也可以使用该语句浏览用于创建挖掘模型的数据。 为了使用该语句,必须对挖掘结构启用钻取功能。 有关 语句的详细信息,请参阅 SELECT FROM <模型>。CASES (DMX) 。
也可以使用 SELECT DISTINCT 语句返回离散列的所有状态。 例如,如果对 gender 列执行此操作,则查询将返回 male
和 female
。
课程任务
在本课中,你将执行以下任务:
浏览挖掘模型中包含的内容
返回源数据中用于为挖掘模型定型的事例
浏览其他可用于特定离散列的状态
返回挖掘模型的内容
在本课中,将使用 SELECT FROM <模型>。CONTENT (DMX) 语句返回聚类分析模型的内容。
下面是 SELECT FROM <模型的>泛型示例。CONTENT 语句:
SELECT <select list> FROM [<mining model>].CONTENT
WHERE <where clause>
代码的第一行定义各列从挖掘模型内容以及与列关联的挖掘模型中返回:
SELECT <select list> FROM [<mining model].CONTENT
挖掘模型名称旁边的 .CONTENT 子句指定将要返回挖掘模型的内容。 有关挖掘模型中包含的列的详细信息,请参阅 DMSCHEMA_MINING_MODEL_CONTENT行集。
您可以选择性地使用代码的最后一行筛选该语句返回的结果:
WHERE <where clause>
例如,如果要将查询结果仅限制为包含大量事例的分类,则需要将以下 WHERE 子句添加到 SELECT 语句:
WHERE NODE_SUPPORT > 100
有关使用 WHERE 语句的详细信息,请参阅 SELECT (DMX) 。
返回聚类分析挖掘模型的内容
在“对象资源管理器”中,右键单击 Analysis Services 的实例,指向“新建查询”,然后单击“DMX”。
将打开查询编辑器,其中包含一个新的空白查询。
复制 SELECT FROM <模型的>泛型示例。将 CONTENT 语句放入空白查询。
将
<select list>
替换为:
*
还可以将 * 替换为 DMSCHEMA_MINING_MODEL_CONTENT行集中包含的任何列的列表。
将
[<mining model>]
替换为:
[Clustering]
现在,完整的语句应该如下所示:
SELECT * FROM [Clustering].CONTENT
在“ 文件 ”菜单上,单击“ 将 DMXQuery1.dmx 另存为”。
在“ 另存为 ”对话框中,浏览到相应的文件夹,并将文件
SELECT_CONTENT.dmx
命名为 。在工具栏上,单击“ 执行 ”按钮。
查询返回挖掘模型的内容。
使用钻取功能
下一步将使用钻取语句返回用于为决策树挖掘模型定型的事例抽样。 在本课中,将使用 SELECT FROM <模型>。CASES (DMX) 语句返回决策树模型的内容。
下面是 SELECT FROM <模型的>泛型示例。CASES 语句:
SELECT <select list>
FROM [<mining model>].CASES
WHERE IsInNode('<node id>')
代码的第一行定义从源数据返回的列和这些列所包含的挖掘模型:
SELECT <select list> FROM [<mining model>].CASES
.CASES 子句指定您正在执行钻取查询。 为了使用钻取功能,您必须在创建挖掘模型时启用该功能。
代码的最后一行可选,该行指定了要从中请求事例的挖掘模型中的节点:
WHERE IsInNode('<node id>')
有关将 WHERE 语句与 IsInNode 配合使用的详细信息,请参阅 SELECT FROM <模型>。CASES (DMX) 。
返回用于为挖掘模型定型的事例
在“对象资源管理器”中,右键单击 Analysis Services 的实例,指向“新建查询”,然后单击“DMX”。
将打开查询编辑器,其中包含一个新的空白查询。
复制 SELECT FROM <模型的>泛型示例。CASES 语句进入空白查询。
将
<select list>
替换为:
*
您还可以使用源数据(如 [自行车购买者])中包含的任意列的列表替换 *。
将
[<mining model>]
替换为:
[Decision Tree]
现在,完整的语句应该如下所示:
SELECT * FROM [Decision Tree].CASES
在“ 文件 ”菜单上,单击“ 将 DMXQuery1.dmx 另存为”。
在“ 另存为 ”对话框中,浏览到相应的文件夹,并将文件
SELECT_DRILLTHROUGH.dmx
命名为 。在工具栏上,单击“ 执行 ”按钮。
查询返回用于为决策树挖掘模型定型的源数据。
返回离散挖掘模型列的状态
下一步将使用 SELECT DISTINCT 语句返回指定的挖掘模型列的各种可能状态。
下面是 SELECT DISTINCT 语句的一般示例:
SELECT DISTINCT [<column>]
FROM [<mining model>]
代码的第一行定义了为其返回状态的挖掘模型列:
SELECT DISTINCT [<column>]
必须包括 DISTINCT 才能返回列的所有状态。 如果排除 DISTINCT,则整个语句会变为预测的快捷方式并且返回指定列最可能的状态。 有关详细信息,请参阅 SELECT (DMX)。
返回离散列的状态
在“对象资源管理器”中,右键单击 Analysis Services 的实例,指向“新建查询”,然后单击“DMX”。
将打开查询编辑器,其中包含一个新的空白查询。
将 SELECT Distinct 语句的一般示例复制到空白查询中。
将
[<column,name>
替换为:
[Bike Buyer]
将
[<mining model>]
替换为:
[Decision Tree]
现在,完整的语句应该如下所示:
SELECT DISTINCT [Bike Buyer] FROM [Decision Tree]
在“ 文件 ”菜单上,单击“ 将 DMXQuery1.dmx 另存为”。
在“ 另存为 ”对话框中,浏览到相应的文件夹,并将文件
SELECT_DISCRETE.dmx
命名为 。在工具栏上,单击“ 执行 ”按钮。
查询返回 Bike Buyer 列的可能状态。
在下一课中,您将使用决策树挖掘模型预测潜在的客户是否为自行车购买者。