本文整理汇总了Java中com.rapidminer.operator.ports.metadata.AttributeMetaData.isSpecial方法的典型用法代码示例。如果您正苦于以下问题:Java AttributeMetaData.isSpecial方法的具体用法?Java AttributeMetaData.isSpecial怎么用?Java AttributeMetaData.isSpecial使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.rapidminer.operator.ports.metadata.AttributeMetaData
的用法示例。
在下文中一共展示了AttributeMetaData.isSpecial方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getAllVariables
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
public Collection<FunctionInput> getAllVariables() {
Collection<AttributeMetaData> metaDataAttributes = metaData.getAllAttributes();
List<FunctionInput> functionInputs = new ArrayList<>(metaDataAttributes.size());
for (AttributeMetaData amd : metaDataAttributes) {
if (amd.isSpecial()) {
functionInputs.add(new FunctionInput(Category.DYNAMIC, KEY_SPECIAL_ATTRIBUTES, amd.getName(),
amd.getValueType(), amd.getRole()));
} else {
functionInputs
.add(new FunctionInput(Category.DYNAMIC, KEY_ATTRIBUTES, amd.getName(), amd.getValueType(), null));
}
}
return functionInputs;
}
示例2: isFilteredOut
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected boolean isFilteredOut(AttributeMetaData amd) {
if (amd.isSpecial()) {
return true;
}
return super.isFilteredOut(amd);
}
示例3: applyOnFilteredMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
public ExampleSetMetaData applyOnFilteredMetaData(ExampleSetMetaData emd) {
for (AttributeMetaData amd : emd.getAllAttributes()) {
if (!amd.isSpecial()) {
if ((Ontology.ATTRIBUTE_VALUE_TYPE.isA(amd.getValueType(), Ontology.NUMERICAL))
&& (!Ontology.ATTRIBUTE_VALUE_TYPE.isA(amd.getValueType(), Ontology.REAL))) {
amd.setType(Ontology.REAL);
}
}
}
return emd;
}
示例4: applyRulesOnMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
private ExampleSetMetaData applyRulesOnMetaData(List<String> rules, MetaData metaData, FilterConditon condition)
throws UndefinedParameterError {
if (metaData == null || !(metaData instanceof ExampleSetMetaData) || condition == null) {
return new ExampleSetMetaData();
}
ExampleSetMetaData sortedMetaData = new ExampleSetMetaData();
ExampleSetMetaData originalMetaData = (ExampleSetMetaData) metaData;
Collection<AttributeMetaData> allAttributes = originalMetaData.getAllAttributes();
// iterate over all rules
for (String currentRule : rules) {
// iterate over all original attributes and check if rule applies
Iterator<AttributeMetaData> iterator = allAttributes.iterator();
while (iterator.hasNext()) {
AttributeMetaData attrMD = iterator.next();
// skip special attributes
if (attrMD.isSpecial()) {
continue;
}
// if rule applies, remove attribute from unmachted list and add it to rules matched
// list
if (condition.match(currentRule, attrMD.getName())) {
iterator.remove();
sortedMetaData.addAttribute(attrMD);
}
}
}
if (!getParameterAsString(PARAMETER_HANDLE_UNMATCHED_ATTRIBUTES).equals(REMOVE_UNMATCHED_MODE)) {
sortedMetaData.addAllAttributes(allAttributes);
}
return sortedMetaData;
}
示例5: modifyMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected MetaData modifyMetaData(ExampleSetMetaData metaData) throws UndefinedParameterError {
for (AttributeMetaData amd : metaData.getAllAttributes()) {
if (!amd.isSpecial() && amd.isNumerical()) {
amd.getMean().setUnkown();
amd.setValueSetRelation(SetRelation.UNKNOWN);
}
}
return metaData;
}
示例6: applyOnFilteredMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
public ExampleSetMetaData applyOnFilteredMetaData(ExampleSetMetaData metaData) {
for (AttributeMetaData amd : metaData.getAllAttributes()) {
if (amd.isNumerical() && !amd.isSpecial()) {
Range range = amd.getValueRange();
amd.setValueRange(new Range(0, Math.max(Math.abs(range.getLower()), Math.abs(range.getUpper()))),
amd.getValueSetRelation());
amd.getMean().setUnkown();
}
}
return metaData;
}
示例7: applyOnFilteredMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
public ExampleSetMetaData applyOnFilteredMetaData(ExampleSetMetaData emd) throws UndefinedParameterError {
for (AttributeMetaData amd : emd.getAllAttributes()) {
if (!amd.isSpecial() && amd.isNumerical()) {
amd.setType(Ontology.NOMINAL);
amd.setValueSetRelation(SetRelation.SUPERSET);
}
}
return emd;
}
示例8: modifyMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected MetaData modifyMetaData(ExampleSetMetaData metaData) {
for (AttributeMetaData amd : metaData.getAllAttributes()) {
if (!amd.isSpecial()) {
amd.setNumberOfMissingValues(new MDInteger(0));
}
}
return metaData;
}
示例9: modifyMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected MetaData modifyMetaData(ExampleSetMetaData metaData) throws UndefinedParameterError {
List<String[]> seriesList = getParameterList(PARAMETER_SERIES);
ExampleSetMetaData emd = new ExampleSetMetaData();
emd.getNumberOfExamples().increaseByUnknownAmount();
emd.mergeSetRelation(SetRelation.SUBSET);
int numberOfSeries = seriesList.size();
boolean createNominalIndex = getParameterAsBoolean(PARAMETER_CREATE_NOMINAL_INDEX);
// checking if nominal index should be created and only one series must be treated
if (numberOfSeries > 1 && createNominalIndex) {
addError(new SimpleProcessSetupError(Severity.ERROR, getPortOwner(),
Collections.singletonList(new ParameterSettingQuickFix(this, PARAMETER_CREATE_NOMINAL_INDEX, "false")),
"parameter_combination_number_forbidden", PARAMETER_CREATE_NOMINAL_INDEX, PARAMETER_SERIES, "1"));
}
String[] seriesNames = new String[numberOfSeries];
Pattern[] seriesPatterns = new Pattern[numberOfSeries];
ArrayList<Vector<AttributeMetaData>> seriesAttributes = new ArrayList<Vector<AttributeMetaData>>(numberOfSeries);
int[] attributeTypes = new int[numberOfSeries];
Iterator<String[]> iterator = seriesList.iterator();
int j = 0;
while (iterator.hasNext()) {
String[] pair = iterator.next();
seriesNames[j] = pair[0];
seriesPatterns[j] = Pattern.compile(pair[1]);
seriesAttributes.add(j, new Vector<AttributeMetaData>());
j++;
}
String indexParamName = getParameterAsString(PARAMETER_INDEX_ATTRIBUTE);
// identify series attributes and check attribute types
for (AttributeMetaData attribute : metaData.getAllAttributes()) {
if (attribute.getName().equals(indexParamName)) {
addError(new SimpleMetaDataError(Severity.ERROR, getInputPort(),
Collections.singletonList(new ParameterSettingQuickFix(this, PARAMETER_INDEX_ATTRIBUTE,
"newly_quick_fix_created_index_attr")), "already_contains_attribute", indexParamName));
}
if (!attribute.isSpecial()) {
boolean matched = false;
for (int i = 0; i < numberOfSeries; i++) {
Matcher matcher = seriesPatterns[i].matcher(attribute.getName());
if (matcher.matches()) {
matched = true;
seriesAttributes.get(i).add(attribute);
attributeTypes[i] = attribute.getValueType();
break;
}
}
if (!matched) {
emd.addAttribute(attribute);
}
}
}
// index attribute
if (!createNominalIndex) {
emd.addAttribute(new AttributeMetaData(getParameterAsString(PARAMETER_INDEX_ATTRIBUTE), Ontology.INTEGER));
} else {
emd.addAttribute(new AttributeMetaData(getParameterAsString(PARAMETER_INDEX_ATTRIBUTE), Ontology.POLYNOMINAL));
}
// series attributes
for (int i = 0; i < numberOfSeries; i++) {
emd.addAttribute(new AttributeMetaData(seriesNames[i], attributeTypes[i]));
}
for (AttributeMetaData amd : emd.getAllAttributes()) {
amd.getNumberOfMissingValues().increaseByUnknownAmount();
}
return emd;
}
示例10: modifyMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected final MetaData modifyMetaData(ExampleSetMetaData inputMetaData) {
ExampleSetMetaData workingMetaData = inputMetaData.clone();
ExampleSetMetaData subsetAmd = attributeSelector.getMetaDataSubset(workingMetaData, false);
// storing unused attributes and saving roles
List<AttributeMetaData> unusedAttributes = new LinkedList<>();
Iterator<AttributeMetaData> iterator = workingMetaData.getAllAttributes().iterator();
while (iterator.hasNext()) {
AttributeMetaData amd = iterator.next();
String name = amd.getName();
MetaDataInfo containsAttributeName = subsetAmd.containsAttributeName(name);
if (subsetAmd.getAttributeSetRelation() == SetRelation.SUBSET && containsAttributeName == MetaDataInfo.NO
|| subsetAmd.getAttributeSetRelation() != SetRelation.SUBSET
&& containsAttributeName != MetaDataInfo.YES) {
unusedAttributes.add(amd);
iterator.remove();
} else if (amd.isSpecial()) {
amd.setRegular();
}
}
// retrieving result
ExampleSetMetaData resultMetaData = workingMetaData;
try {
resultMetaData = applyOnFilteredMetaData(workingMetaData);
} catch (UndefinedParameterError e) {
}
// merge result with unusedAttributes: restore special types from original input
Iterator<AttributeMetaData> r = resultMetaData.getAllAttributes().iterator();
while (r.hasNext()) {
AttributeMetaData newMetaData = r.next();
AttributeMetaData oldMetaData = inputMetaData.getAttributeByName(newMetaData.getName());
if (oldMetaData != null) {
if (oldMetaData.isSpecial()) {
String specialName = oldMetaData.getRole();
newMetaData.setRole(specialName);
}
}
}
// add unused attributes again
resultMetaData.addAllAttributes(unusedAttributes);
return resultMetaData;
}
示例11: modifyMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected MetaData modifyMetaData(ExampleSetMetaData metaData) throws UndefinedParameterError {
int firstIndex = getParameterAsInt(PARAMETER_FIRST_ATTRIBUTE);
int secondIndex = getParameterAsInt(PARAMETER_LAST_ATTRIBUTE);
boolean warning = false;
if (secondIndex < firstIndex) {
addError(new SimpleProcessSetupError(Severity.ERROR, getPortOwner(),
Collections
.singletonList(new ParameterSettingQuickFix(this, PARAMETER_FIRST_ATTRIBUTE, secondIndex + "")),
"parameter_combination_forbidden_range", PARAMETER_FIRST_ATTRIBUTE, PARAMETER_LAST_ATTRIBUTE));
warning = true;
}
if (metaData.getAttributeSetRelation() == SetRelation.EQUAL
|| metaData.getAttributeSetRelation() == SetRelation.SUBSET) {
if (secondIndex > metaData.getNumberOfRegularAttributes()) {
getExampleSetInputPort().addError(
new SimpleMetaDataError(Severity.ERROR, getExampleSetInputPort(), Collections
.singletonList(new ParameterSettingQuickFix(this, PARAMETER_LAST_ATTRIBUTE, metaData
.getNumberOfRegularAttributes() + "")), "exampleset.parameters.need_more_examples",
secondIndex, PARAMETER_LAST_ATTRIBUTE, secondIndex));
warning = true;
}
}
// doing transformation
if (!warning) {
int i = 0;
Iterator<AttributeMetaData> iterator = metaData.getAllAttributes().iterator();
while (iterator.hasNext() && i < secondIndex) {
AttributeMetaData amd = iterator.next();
if (!amd.isSpecial()) {
i++;
}
if (i >= firstIndex) {
iterator.remove();
}
}
}
return metaData;
}