Attribute construction.
ratheesan
New Altair Community Member
Hi,
I have a problem while I am using if conditions in Attribute Construction Operator.Always getting an error message like " 'Syntax Error (implicit multiplication not enabled)".I am attaching my process here.
<operator name="Root" class="Process" expanded="yes">
<operator name="ExcelExampleSource" class="ExcelExampleSource">
<parameter key="excel_file" value="C:\Documents and Settings\ADMIN\Desktop\combined.xls"/>
<parameter key="first_row_as_names" value="true"/>
</operator>
<operator name="Aggregation" class="Aggregation">
<list key="aggregation_attributes">
<parameter key="Cycle Time" value="average"/>
<parameter key="File Quality Manager" value="average"/>
<parameter key="File Quality CR" value="average"/>
<parameter key="File Quality Supervisor" value="average"/>
<parameter key="Customer Experience" value="average"/>
<parameter key="Estimate Accuracy" value="average"/>
</list>
<parameter key="group_by_attributes" value="OFFICE"/>
<parameter key="only_distinct" value="true"/>
</operator>
<operator name="AttributeConstruction" class="AttributeConstruction">
<list key="function_descriptions">
<parameter key="FileQualityManager" value="if(average(File Quality Manager))<80,"Low",if(average(File Quality Manager))<90,"Medium",if(average(File Quality Manager))<=100,"High","Other")))"/>
<parameter key="FileQualitySupervisor" value="if(average(File Quality Supervisor))<76,"Low",if(average(File Quality Supervisor) )<88,"Medium",if(average(File Quality Supervisor))<=100,"High","Other")))"/>
<parameter key="FileQualityCR" value="if(average(File Quality CR))<87,"Low",if(average(File Quality CR))<94,"Medium",if(average(File Quality CR))<=100,"High","Other")))"/>
</list>
</operator>
<operator name="ExcelExampleSetWriter" class="ExcelExampleSetWriter">
<parameter key="excel_file" value="C:\Documents and Settings\ADMIN\Desktop\levels.xls"/>
</operator>
</operator>
Thanks
Ratheesan
I have a problem while I am using if conditions in Attribute Construction Operator.Always getting an error message like " 'Syntax Error (implicit multiplication not enabled)".I am attaching my process here.
<operator name="Root" class="Process" expanded="yes">
<operator name="ExcelExampleSource" class="ExcelExampleSource">
<parameter key="excel_file" value="C:\Documents and Settings\ADMIN\Desktop\combined.xls"/>
<parameter key="first_row_as_names" value="true"/>
</operator>
<operator name="Aggregation" class="Aggregation">
<list key="aggregation_attributes">
<parameter key="Cycle Time" value="average"/>
<parameter key="File Quality Manager" value="average"/>
<parameter key="File Quality CR" value="average"/>
<parameter key="File Quality Supervisor" value="average"/>
<parameter key="Customer Experience" value="average"/>
<parameter key="Estimate Accuracy" value="average"/>
</list>
<parameter key="group_by_attributes" value="OFFICE"/>
<parameter key="only_distinct" value="true"/>
</operator>
<operator name="AttributeConstruction" class="AttributeConstruction">
<list key="function_descriptions">
<parameter key="FileQualityManager" value="if(average(File Quality Manager))<80,"Low",if(average(File Quality Manager))<90,"Medium",if(average(File Quality Manager))<=100,"High","Other")))"/>
<parameter key="FileQualitySupervisor" value="if(average(File Quality Supervisor))<76,"Low",if(average(File Quality Supervisor) )<88,"Medium",if(average(File Quality Supervisor))<=100,"High","Other")))"/>
<parameter key="FileQualityCR" value="if(average(File Quality CR))<87,"Low",if(average(File Quality CR))<94,"Medium",if(average(File Quality CR))<=100,"High","Other")))"/>
</list>
</operator>
<operator name="ExcelExampleSetWriter" class="ExcelExampleSetWriter">
<parameter key="excel_file" value="C:\Documents and Settings\ADMIN\Desktop\levels.xls"/>
</operator>
</operator>
Thanks
Ratheesan
Tagged:
0
Answers
-
Hi,
the reason for this is that the operator "Generate Attributes" ("Attribute Construction" in RM < 5) does not support attribute names with empty spaces. The name
File Quality Manager
is interpreted as
File * Quality * Manager
which is disabled by default. Exactly for this reason: because the attributes "File" and "Quality" would not exist. Currently, the only solution is to use underscores '_' instead of spaces in attribute names, i.e. please use "File_Quality_Manager" instead. Of course you can rename your attributes back after the construction. If you want to rename them in a convenient way, you can use the operator "Rename by Replacing" and replace all spaces by underscores automatically.
Cheers,
Ingo
0 -
Thanks Ingo for this valuable information.
By
Ratheesan
0 -
Very helpful. Thank you much.0