Return the prediction score (if leaf node) or None if its an
        intermediate node.

        Parameters
        ----------
        node_id: id of the node to get the prediction value.

        Returns
        -------
        float or None: returns float value of prediction if leaf node and None
        if not.

        Examples
        --------
        .. sourcecode:: python

            >>> tree.get_prediction_score(120)  # Leaf node
            0.251092

            >>> tree.get_prediction_score(120)  # Not a leaf node
            None

def get_prediction_score(self, node_id):
        """
        Return the prediction score (if leaf node) or None if its an
        intermediate node.

        Parameters
        ----------
        node_id: id of the node to get the prediction value.

        Returns
        -------
        float or None: returns float value of prediction if leaf node and None
        if not.

        Examples
        --------
        .. sourcecode:: python

            >>> tree.get_prediction_score(120)  # Leaf node
            0.251092

            >>> tree.get_prediction_score(120)  # Not a leaf node
            None

        """
        _raise_error_if_not_of_type(node_id, [int,long], "node_id")
        _numeric_param_check_range("node_id", node_id, 0, self.num_nodes - 1)
        node = self.nodes[node_id]
        return None if node.is_leaf is False else node.value