当前位置: 首页>>代码示例>>Java>>正文


Java Node.hasNodes方法代码示例

本文整理汇总了Java中org.dmg.pmml.tree.Node.hasNodes方法的典型用法代码示例。如果您正苦于以下问题:Java Node.hasNodes方法的具体用法?Java Node.hasNodes怎么用?Java Node.hasNodes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.dmg.pmml.tree.Node的用法示例。


在下文中一共展示了Node.hasNodes方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: handleNodePop

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
private void handleNodePop(Node node){
	Double recordCount = node.getRecordCount();
	String score = node.getScore();
	Predicate predicate = node.getPredicate();

	if(recordCount != null){
		node.setRecordCount(null);
	} // End if

	if(predicate instanceof True){
		Node parentNode = getParentNode();

		if(parentNode == null){
			return;
		}

		String parentScore = parentNode.getScore();
		if(parentScore != null){
			throw new IllegalArgumentException();
		}

		parentNode.setScore(score);

		List<Node> parentChildren = parentNode.getNodes();

		boolean success = parentChildren.remove(node);
		if(!success){
			throw new IllegalArgumentException();
		} // End if

		if(node.hasNodes()){
			List<Node> children = node.getNodes();

			parentChildren.addAll(children);
		}
	}
}
 
开发者ID:jpmml,项目名称:jpmml-lightgbm,代码行数:38,代码来源:TreeModelCompactor.java

示例2: handleNodePop

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
private void handleNodePop(Node node){
	String score = node.getScore();
	Predicate predicate = node.getPredicate();

	if(predicate instanceof True){
		Node parentNode = getParentNode();

		if(parentNode == null){
			return;
		}

		String parentScore = parentNode.getScore();
		if(parentScore != null){
			throw new IllegalArgumentException();
		}

		parentNode.setScore(score);

		List<Node> parentChildren = parentNode.getNodes();

		boolean success = parentChildren.remove(node);
		if(!success){
			throw new IllegalArgumentException();
		} // End if

		if(node.hasNodes()){
			List<Node> children = node.getNodes();

			parentChildren.addAll(children);
		}
	}
}
 
开发者ID:jpmml,项目名称:jpmml-xgboost,代码行数:33,代码来源:TreeModelCompactor.java

示例3: visit

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
@Override
public VisitorAction visit(Node node){

	if(node.hasNodes()){
		List<Node> children = node.getNodes();

		children:
		while(true){
			ListIterator<Node> childIt = children.listIterator();

			grandChildren:
			while(childIt.hasNext()){
				Node child = childIt.next();

				Iterator<Node> grandChildIt = getChildren(child);
				if(grandChildIt == null){
					continue grandChildren;
				}

				childIt.remove();

				while(grandChildIt.hasNext()){
					Node grandChild = grandChildIt.next();

					grandChildIt.remove();

					childIt.add(grandChild);
				}

				childIt.add(child);

				continue children;
			}

			break;
		}
	}

	return super.visit(node);
}
 
开发者ID:jpmml,项目名称:jpmml-sklearn,代码行数:41,代码来源:TreeModelFlattener.java

示例4: getChildren

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
static
private Iterator<Node> getChildren(Node node){
	Predicate predicate = node.getPredicate();

	if(!(predicate instanceof SimplePredicate)){
		return null;
	}

	SimplePredicate simplePredicate = (SimplePredicate)predicate;

	FieldName name = simplePredicate.getField();
	SimplePredicate.Operator operator = simplePredicate.getOperator();

	if(!(SimplePredicate.Operator.LESS_OR_EQUAL).equals(operator)){
		return null;
	} // End if

	if(node.hasNodes()){
		List<Node> children = node.getNodes();

		int endPos = 0;

		for(Node child : children){

			if(!checkPredicate(child, name, operator)){
				break;
			}

			endPos++;
		}

		if(endPos > 0){
			return (children.subList(0, endPos)).iterator();
		}

		return null;
	}

	return null;
}
 
开发者ID:jpmml,项目名称:jpmml-sklearn,代码行数:41,代码来源:TreeModelFlattener.java

示例5: visit

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
@Override
public VisitorAction visit(Node node){

	if(!node.hasNodes()){
		process(node);
	}

	return super.visit(node);
}
 
开发者ID:jpmml,项目名称:jpmml-model,代码行数:10,代码来源:TreePathFinder.java

示例6: handleTrue

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
private Trail handleTrue(Trail trail, Node node, EvaluationContext context){

		// A "true" leaf node
		if(!node.hasNodes()){
			return trail.selectNode(node);
		}

		trail.push(node);

		List<Node> children = node.getNodes();
		for(int i = 0, max = children.size(); i < max; i++){
			Node child = children.get(i);

			Boolean status = evaluateNode(trail, child, context);

			if(status == null){
				Trail destination = handleMissingValue(trail, node, child, context);

				if(destination != null){
					return destination;
				}
			} else

			if(status.booleanValue()){
				return handleTrue(trail, child, context);
			}
		}

		// A "true" non-leaf node
		return handleNoTrueChild(trail);
	}
 
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:32,代码来源:TreeModelEvaluator.java

示例7: collectNodes

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
private ImmutableBiMap.Builder<String, Node> collectNodes(Node node, AtomicInteger index, ImmutableBiMap.Builder<String, Node> builder){
	builder = EntityUtil.put(node, index, builder);

	if(!node.hasNodes()){
		return builder;
	}

	List<Node> children = node.getNodes();
	for(Node child : children){
		builder = collectNodes(child, index, builder);
	}

	return builder;
}
 
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:15,代码来源:TreeModelEvaluator.java

示例8: visit

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
@Override
public VisitorAction visit(Node node){

	if(node.hasNodes()){
		List<Node> nodes = node.getNodes();

		Collections.sort(nodes, NodeSorter.COMPARATOR);
	}

	return super.visit(node);
}
 
开发者ID:jpmml,项目名称:jpmml-evaluator,代码行数:12,代码来源:NodeSorter.java

示例9: handleNodePush

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
private void handleNodePush(Node node){
	String defaultChild = node.getDefaultChild();
	String id = node.getId();
	String score = node.getScore();

	if(id == null){
		throw new IllegalArgumentException();
	} // End if

	if(node.hasNodes()){
		List<Node> children = node.getNodes();

		if(children.size() != 2 || defaultChild == null || score != null){
			throw new IllegalArgumentException();
		}

		Node firstChild = children.get(0);
		Node secondChild = children.get(1);

		if((defaultChild).equals(firstChild.getId())){
			children.remove(0);
			children.add(1, firstChild);

			firstChild = children.get(0);
			secondChild = children.get(1);
		} else

		if((defaultChild).equals(secondChild.getId())){
			// Ignored
		} else

		{
			throw new IllegalArgumentException();
		}

		node.setDefaultChild(null);

		secondChild.setPredicate(new True());
	} else

	{
		if(defaultChild != null || score == null){
			throw new IllegalArgumentException();
		}
	}

	node.setId(null);
}
 
开发者ID:jpmml,项目名称:jpmml-lightgbm,代码行数:49,代码来源:TreeModelCompactor.java

示例10: handleNodePush

import org.dmg.pmml.tree.Node; //导入方法依赖的package包/类
private void handleNodePush(Node node){
	String id = node.getId();
	String score = node.getScore();

	if(id == null){
		throw new IllegalArgumentException();
	} // End if

	if(node.hasNodes()){
		List<Node> children = node.getNodes();

		if(children.size() != 2 || score != null){
			throw new IllegalArgumentException();
		}

		Node firstChild = children.get(0);
		Node secondChild = children.get(1);

		SimplePredicate firstPredicate = (SimplePredicate)firstChild.getPredicate();
		SimplePredicate secondPredicate = (SimplePredicate)secondChild.getPredicate();

		if(!(firstPredicate.getField()).equals(secondPredicate.getField()) || !(firstPredicate.getValue()).equals(secondPredicate.getValue())){
			throw new IllegalArgumentException();
		} // End if

		if((SimplePredicate.Operator.NOT_EQUAL).equals(firstPredicate.getOperator()) && (SimplePredicate.Operator.EQUAL).equals(secondPredicate.getOperator())){
			children.remove(0);
			children.add(1, firstChild);

			firstChild = children.get(0);
			secondChild = children.get(1);
		} else

		if((SimplePredicate.Operator.LESS_OR_EQUAL).equals(firstPredicate.getOperator()) && (SimplePredicate.Operator.GREATER_THAN).equals(secondPredicate.getOperator())){
			// Ignored
		} else

		{
			throw new IllegalArgumentException();
		}

		secondChild.setPredicate(new True());
	} else

	{
		if(score == null){
			throw new IllegalArgumentException();
		}
	}

	node.setId(null);
}
 
开发者ID:jpmml,项目名称:jpmml-sklearn,代码行数:53,代码来源:TreeModelCompactor.java


注:本文中的org.dmg.pmml.tree.Node.hasNodes方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。