0
A
답변
0
가장 쉬운 방법은 먼저 속성에서 클러스터 접두어를 제거하는 것입니다. "바꾸기"연산자와 정규 표현식을 사용하여이 작업을 수행 할 수 있습니다. 그런 다음 "Parse Numbers"연산자를 사용하여 값 유형을 Nominal에서 Numerical로 변경해야합니다.
또는 "속성 생성"연산자에서 표현식 빌더를 사용하여 동일한 효과를 얻을 수 있습니다.
단일 클러스터 번호 만 추출하려면 "매크로 추출"을 사용하고 "매크로 생성"을 사용하면 두 번째 예제와 같은 식 작성기를 사용하여 번호를 가져올 수 있습니다.
세 가지 버전 모두에 대한 예제는 첨부 된 프로세스 xml을 참조하십시오. RapidMiner community forum에서 질문하거나 다시 질문 할 수도 있습니다.
<?xmlversion="1.0"encoding="UTF-8"?><processversion="7.6.001">
<context>
<input/>
<output/>
<macros/>
</context>
<operatoractivated="true"class="process"compatibility="6.0.002"expanded="true"name="Process">
<processexpanded="true">
<operatoractivated="true"class="retrieve"compatibility="7.6.001"expanded="true"height="68"name="RetrieveIris"width="90"x="45"y="136">
<parameterkey="repository_entry"value="//Samples/data/Iris"/>
</operator>
<operatoractivated="true"class="split_data"compatibility="7.6.001"expanded="true"height="103"name="SplitData"width="90"x="179"y="136">
<enumerationkey="partitions">
<parameterkey="ratio"value="0.5"/>
<parameterkey="ratio"value="0.5"/>
</enumeration>
</operator>
<operatoractivated="true"class="k_means"compatibility="7.6.001"expanded="true"height="82"name="Clustering"width="90"x="313"y="85"/>
<operatoractivated="true"class="apply_model"compatibility="7.6.001"expanded="true"height="82"name="ApplyModel"width="90"x="447"y="136">
<listkey="application_parameters"/>
</operator>
<operatoractivated="true"class="multiply"compatibility="7.6.001"expanded="true"height="124"name="Multiply"width="90"x="648"y="136"/>
<operatoractivated="true"class="extract_macro"compatibility="7.6.001"expanded="true"height="68"name="ExtractMacro"width="90"x="849"y="697">
<parameterkey="macro"value="extracted_cluster"/>
<parameterkey="macro_type"value="data_value"/>
<parameterkey="attribute_name"value="cluster"/>
<parameterkey="example_index"value="1"/>
<listkey="additional_macros"/>
</operator>
<operatoractivated="true"class="generate_macro"compatibility="7.6.001"expanded="true"height="82"name="GenerateMacro"width="90"x="1050"y="697">
<listkey="function_descriptions">
<parameterkey="cluster_number"value="replace(%{extracted_cluster},"cluster_","")"/>
</list>
</operator>
<operatoractivated="true"class="generate_attributes"compatibility="7.6.001"expanded="true"height="82"name="GenerateAttributes"width="90"x="849"y="442">
<listkey="function_descriptions">
<parameterkey="parsed_cluster"value="parse(replace([cluster],"cluster_",""))"/>
</list>
<descriptionalign="center"color="purple"colored="true"width="126">Alternativapproachbyusingasingleexpression.</description>
</operator>
<operatoractivated="true"class="replace"compatibility="7.6.001"expanded="true"height="82"name="Replace"width="90"x="849"y="136">
<parameterkey="attribute_filter_type"value="single"/>
<parameterkey="attribute"value="cluster"/>
<parameterkey="include_special_attributes"value="true"/>
<parameterkey="replace_what"value="cluster\_"/>
<descriptionalign="center"color="purple"colored="true"width="126">Firstremovethe&quot;cluster_&quot;SubstringfromtheclusterAttribute.It'simportanttocheckthe&quot;includespecialattributes&quot;parameter</description>
</operator>
<operatoractivated="true"class="parse_numbers"compatibility="7.6.001"expanded="true"height="82"name="ParseNumbers"width="90"x="1050"y="136">
<parameterkey="attribute_filter_type"value="single"/>
<parameterkey="attribute"value="cluster"/>
<parameterkey="include_special_attributes"value="true"/>
<descriptionalign="center"color="purple"colored="true"width="126">Parsethevaluesofthe&quot;clusterAttribute,tochangethevaluetypefromnominaltonumerical.</description>
</operator>
<connectfrom_op="RetrieveIris"from_port="output"to_op="SplitData"to_port="exampleset"/>
<connectfrom_op="SplitData"from_port="partition1"to_op="Clustering"to_port="exampleset"/>
<connectfrom_op="SplitData"from_port="partition2"to_op="ApplyModel"to_port="unlabelleddata"/>
<connectfrom_op="Clustering"from_port="clustermodel"to_op="ApplyModel"to_port="model"/>
<connectfrom_op="ApplyModel"from_port="labelleddata"to_op="Multiply"to_port="input"/>
<connectfrom_op="Multiply"from_port="output1"to_op="Replace"to_port="examplesetinput"/>
<connectfrom_op="Multiply"from_port="output2"to_op="GenerateAttributes"to_port="examplesetinput"/>
<connectfrom_op="Multiply"from_port="output3"to_op="ExtractMacro"to_port="exampleset"/>
<connectfrom_op="ExtractMacro"from_port="exampleset"to_op="GenerateMacro"to_port="through1"/>
<connectfrom_op="GenerateAttributes"from_port="examplesetoutput"to_port="result2"/>
<connectfrom_op="Replace"from_port="examplesetoutput"to_op="ParseNumbers"to_port="examplesetinput"/>
<connectfrom_op="ParseNumbers"from_port="examplesetoutput"to_port="result1"/>
<portSpacingport="source_input1"spacing="0"/>
<portSpacingport="sink_result1"spacing="0"/>
<portSpacingport="sink_result2"spacing="399"/>
<portSpacingport="sink_result3"spacing="0"/>
<descriptionalign="center"color="yellow"colored="false"height="347"resized="true"width="580"x="27"y="10">Splitthedataintwosubsets<br/>buildaclusteringmodelonthetrainingset<br/>andthenapplyitionthetestset</description>
</process>
</operator>
</process>