如何从matlab编辑集群功能

时间:2015-04-16 22:08:27

标签: matlab

我是matlab的新手。现在我的任务是从生物信息学工具箱重新编写集群功能。在命令行中键入编辑群集后,我得到一个默认的群集功能,如下所示。

function T = cluster(Z, varargin)
%CLUSTER Construct clusters from a hierarchical cluster tree.

我想要的是具有以下语法的集群功能。

cluster (phytree)

Validate clusters in phylogenetic treeexpand all in page
Syntax
LeafClusters = cluster(Tree, Threshold)
[LeafClusters, NodeClusters] = cluster(Tree, Threshold)
[LeafClusters, NodeClusters, Branches] = cluster(Tree, Threshold)
cluster(..., 'Criterion', CriterionValue, ...)
cluster(..., 'MaxClust', MaxClustValue, ...)
cluster(..., 'Distances', DistancesValue, ...)

有谁知道我该怎么办?我非常感谢你的时间和精力。

1 个答案:

答案 0 :(得分:0)

我不确定你想要什么。如果您希望我们编写代码,那么很遗憾问题是偏离主题的。但是,我将回答如何让该函数返回多个变量


要使群集返回不同的内容,您可以通过2种方式完成。

其中一个是将函数的所有可能输出定义为

function [LeafClusters,NodeClusters,Branches] = cluster(Z, varargin)

然后在函数内部为这些变量分配你想要的值。

另一种方法是使用varargout。这允许您定义任意数量的输出参数。语法如下:

function [LeafClusters,varargout] = cluster(Z, varargin)

然后您可以分配varargout任意数量的输出,通常取决于varargin参数(例如'Criterion'

您应该将参数指定为单元格数组:

vargout{5}="banana"