【发布时间】:2016-09-06 13:04:36
【问题描述】:
我有一个n-by-1 向量,其中n = 20000。我想对这个向量中的数据做一个十分位排序,基本上就是用对应的十分位替换每个元素的值。
我目前正在这样做:
deciles = quantile(X,9);
X = discretize(X,[-inf deciles inf]);
X 是我的数据数组。我这样做是因为我想要 10 组数据,每组数据的数量相同。
您能否验证此过程或让我知道是否有更可靠的方法来验证?
【问题讨论】:
-
您可以自己轻松地验证这一点 - 只需构建一个小样本
X并查看您是否得到正确的结果。我会立即建议的一件事是不要就地执行此操作。即不要覆盖X,而是创建一个新变量,比如X_dec,以便您可以将其与X进行比较,这将有助于您自我验证您的程序 -
是的,我已经这样做了,它适用于小样本。但有时当与庞大的数据集一起使用时,有些事情可能会出错!只是想听听其他人的意见,这是否有意义,或者是否有其他方法可以做到!但是感谢您的评论!
标签: matlab statistics quantile discretization