MATLAB社区

MATLAB,社区和更多

用Cody函数云生成洞察力

我喜欢Cody的一个原因是它不仅鼓励你去解决一个特定的问题,而且还鼓励你去解决它很多不同的方式.更棒的是,在你竭尽全力之后,你可以看看其他人是如何解决同样的问题的。这通常是科迪过程中最有启发性的部分。当我看到别人的解决方案时,我总是感到惊讶和高兴。金宝搏官方网站当我这么做的时候,你可能会听到我咕哝着“我不知道你能做这个”或“我从来没有想到过这个功能”,甚至“我以前从来没有听说过这个功能!”

让我给你举个向科迪学习的例子。专门从问题661:找出异常值。这些点中哪些不在一条线上?

如果我用数字表示这些点,这就有点棘手了。但一旦你在地图上看到它,就很容易了。这对你来说很简单,但是你怎么教MATLAB来解决这个问题呢?

让我们看看人们是如何解决这个问题的。首先这里是解决方案图对于目前为止的所有解。金宝搏官方网站

我们可以看到,大小从12到200左右,有一些答案甚至更大。而且错误答案的数量是正确答案的两倍以上。但除此之外,这里并没有太多的见解。

这是所有正确答案大小的直方图。

现在我们可以看到,大多数正确答案在size=70左右出现。这表明有多少人在解决这个问题。但如何他们解决了吗?我们可以筛选单个的解决方案,但如果有一些方法可以让我们同时了解金宝搏官方网站很多的解决方案,那就更好了。一种方法是使用功能云。首先,我们把每个解浓缩成一个函数列表。然后我们可以建立一个词云与这些功能。云:函数。这是到目前为止收到的所有323个正确解决方案的功能云。金宝搏官方网站

它有点乱,但你可以从那里得到一些想法:polyarea,corrcoef,去趋势,nchoosek.每一条都是值得思索的线索。但让我们试试另一个策略。让我们用最小的正确解做一个函数云。金宝搏官方网站

嗯。很明显德劳内是这里的关键。但如何?Delaunay三角测量根据你给它的点返回一个三角形列表。由于是直线以外的一个点,点2出现在delaunay返回的所有三角形中。这意味着它的下标2,在矩阵三中出现的次数比其他任何数字都多。因此,模式矩阵中的数字就是我们的答案:2。

我从来没有想过这样做,但我很高兴Cody提醒了我这个有用的函数。

|
  • 打印
  • 发送电子邮件

评论

要留下评论,请点击在这里以登录您的MathWorks帐户或创建一个新的帐户。