本文整理汇总了Java中com.rapidminer.operator.ports.metadata.AttributeMetaData.getValueRange方法的典型用法代码示例。如果您正苦于以下问题:Java AttributeMetaData.getValueRange方法的具体用法?Java AttributeMetaData.getValueRange怎么用?Java AttributeMetaData.getValueRange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.rapidminer.operator.ports.metadata.AttributeMetaData
的用法示例。
在下文中一共展示了AttributeMetaData.getValueRange方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: modifyAttributeMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
public Collection<AttributeMetaData> modifyAttributeMetaData(ExampleSetMetaData emd, AttributeMetaData amd,
InputPort exampleSetInputPort, ParameterHandler parameterHandler) throws UndefinedParameterError {
if (amd.getValueSetRelation() == SetRelation.EQUAL) {
if (emd.getNumberOfExamples().isKnown()) {
amd.setMean(new MDReal(1d / emd.getNumberOfExamples().getValue()));
} else {
amd.setMean(new MDReal());
}
Range range = amd.getValueRange();
if (range.getLower() < 0d) {
exampleSetInputPort.addError(new SimpleMetaDataError(Severity.WARNING, exampleSetInputPort,
"attribute_contains_negative_values", amd.getName(), getName()));
}
} else {
// set to unknown
amd.setMean(new MDReal());
amd.setValueRange(new Range(Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY), SetRelation.UNKNOWN);
}
return Collections.singleton(amd);
}
示例2: applyOnFilteredMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
public ExampleSetMetaData applyOnFilteredMetaData(ExampleSetMetaData emd) throws UndefinedParameterError {
double min = getParameterAsDouble(PARAMETER_MIN);
double max = getParameterAsDouble(PARAMETER_MAX);
for (AttributeMetaData amd : emd.getAllAttributes()) {
if (amd.isNumerical()) {
Range valueRange = amd.getValueRange();
amd.setType(Ontology.BINOMINAL);
// all values below min?
if (amd.getValueSetRelation() != SetRelation.SUPERSET && valueRange.getUpper() < min
|| valueRange.getLower() > max) {
amd.setValueSet(Collections.singleton("true"), SetRelation.EQUAL);
continue;
}
// all values above max?
if (amd.getValueSetRelation() != SetRelation.SUPERSET && valueRange.getLower() > min
&& valueRange.getUpper() < max) {
amd.setValueSet(Collections.singleton("false"), SetRelation.EQUAL);
continue;
}
Set<String> values = new TreeSet<String>();
values.add("false");
values.add("true");
amd.setValueSet(values, SetRelation.SUBSET);
}
}
return emd;
}
示例3: 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;
}
示例4: modifyMetaData
import com.rapidminer.operator.ports.metadata.AttributeMetaData; //导入方法依赖的package包/类
@Override
protected MetaData modifyMetaData(ExampleSetMetaData metaData) throws UndefinedParameterError {
List<AttributeMetaData> newAttributes = new LinkedList<AttributeMetaData>();
String firstAttributeName = getParameterAsString(PARAMETER_FIRST_ATTRIBUTE_NAME);
String secondAttributeName = getParameterAsString(PARAMETER_SECOND_ATTRIBUTE_NAME);
for (AttributeMetaData attribute : metaData.getAllAttributes()) {
if (attribute.isNumerical()) {
if (attribute.getName().matches(firstAttributeName)) {
for (AttributeMetaData attribute2 : metaData.getAllAttributes()) {
if (attribute2.isNumerical()) {
if (attribute2.getName().matches(secondAttributeName)) {
AttributeMetaData newAMD = new AttributeMetaData("(" + attribute.getName() + ") * ("
+ attribute2.getName() + ")", Ontology.REAL);
// range
if (attribute.getValueSetRelation() == SetRelation.EQUAL
&& attribute2.getValueSetRelation() == SetRelation.EQUAL) {
Range range1 = attribute.getValueRange();
Range range2 = attribute2.getValueRange();
double[] values = { range1.getLower() * range2.getLower(),
range1.getLower() * range2.getUpper(), range1.getUpper() * range2.getLower(),
range1.getUpper() * range2.getUpper() };
newAMD.setValueRange(
new Range(VectorMath.minimalElement(values), VectorMath.maximalElement(values)),
SetRelation.SUBSET);
} else {
newAMD.setValueRange(new Range(), SetRelation.UNKNOWN);
}
// unknown values
if (attribute2.getNumberOfMissingValues().isKnown()
&& attribute.getNumberOfMissingValues().isKnown()) {
newAMD.setNumberOfMissingValues(new MDInteger(attribute.getNumberOfMissingValues()
.getValue() + attribute2.getNumberOfMissingValues().getValue()));
}
newAttributes.add(newAMD);
}
}
}
}
}
}
metaData.addAllAttributes(newAttributes);
return metaData;
}