如何解释直方图中的异常值? - R/Matlab
How to account for outliers in a histogram? - R/Matlab
我想知道是否有办法在 直方图 图中解释 异常值 。我想绘制一个随机变量的 frequencies,它非常小并且分布在零附近。然而,在我考虑的大多数情况下,我也有一个使事情复杂化的异常值。有没有办法调整 R/Matlab 中 x 轴的比例,以便我可以捕获我正在考虑的随机变量的分布并显示异常值?因为获取绘图的常规方法会导致所有值都被视为零的比例,所以我想展示它们是如何围绕零分布的。所以理想情况下,我希望比例尺在零附近占非常小的数字,而不是在一个间隙(不一定与零的实际距离成正比)之后有一个 bin 来指示异常值。而且我不想从样本中删除异常值。
R/Matlab有这种事吗?欢迎任何其他建议。
编辑:问题不在于识别异常值并为它们使用不同的颜色。问题在于调整 x 轴上的比例,以便我可以观察变量的分布以及将离群值包含在图中。
下一个代码将完成这项工作,但您需要更改轴的 Xticklabels 以使其显示离群值的真实值。
A=rand(1000,1)*0.1;
A(1:10)=10;
% modify the data for plotting pourposes. Get the outliers closer
expected_maximum_value=1; % You can compute this useg 3*sigma maybe?
distance_to_outliers=0.5;
outlier_mean=mean(A(A>expected_maximum_value));
A(A>expected_maximum_value)=A(A>expected_maximum_value)-outlier_mean+distance_to_outliers;
% plot
h=histogram(A,'BinWidth',0.01)
%% trick the X axis
ax=gca;
ax.XTickLabel{end-1}=[ax.XTickLabel{end-1} '//'];
ax.XTickLabel{end}=['//' num2str(outlier_mean)];
我想知道是否有办法在 直方图 图中解释 异常值 。我想绘制一个随机变量的 frequencies,它非常小并且分布在零附近。然而,在我考虑的大多数情况下,我也有一个使事情复杂化的异常值。有没有办法调整 R/Matlab 中 x 轴的比例,以便我可以捕获我正在考虑的随机变量的分布并显示异常值?因为获取绘图的常规方法会导致所有值都被视为零的比例,所以我想展示它们是如何围绕零分布的。所以理想情况下,我希望比例尺在零附近占非常小的数字,而不是在一个间隙(不一定与零的实际距离成正比)之后有一个 bin 来指示异常值。而且我不想从样本中删除异常值。
R/Matlab有这种事吗?欢迎任何其他建议。
编辑:问题不在于识别异常值并为它们使用不同的颜色。问题在于调整 x 轴上的比例,以便我可以观察变量的分布以及将离群值包含在图中。
下一个代码将完成这项工作,但您需要更改轴的 Xticklabels 以使其显示离群值的真实值。
A=rand(1000,1)*0.1;
A(1:10)=10;
% modify the data for plotting pourposes. Get the outliers closer
expected_maximum_value=1; % You can compute this useg 3*sigma maybe?
distance_to_outliers=0.5;
outlier_mean=mean(A(A>expected_maximum_value));
A(A>expected_maximum_value)=A(A>expected_maximum_value)-outlier_mean+distance_to_outliers;
% plot
h=histogram(A,'BinWidth',0.01)
%% trick the X axis
ax=gca;
ax.XTickLabel{end-1}=[ax.XTickLabel{end-1} '//'];
ax.XTickLabel{end}=['//' num2str(outlier_mean)];