如何获得数组的百分比?

Posted

技术标签:

【中文标题】如何获得数组的百分比?【英文标题】:How to get a percentage of an array? 【发布时间】:2012-02-11 00:05:33 【问题描述】:

我想知道如何获得一个确定百分比的数组。

假设:

$array = array ("I","am","not","a","professional","coder","so","please","help","me");

它由十个值组成。

我想写一个方法来获取它的一部分。

public function get_percentage($percentage) ...;return $array_sliced;

所以如果我想要一个只包含“I”的数组,我会使用

$this->get_percentage(10) //10 stands for 10%
//returns $slice = array ("I");

另外,如果 $num 可以四舍五入到最接近的有用值,那就太好了。例如:

$this->get_percentage(8) //8 stands for 8% but the function will treat this as 10%
//returns $slice = array ("I");

我在这里没有找到任何类似的问题,希望这不是太复杂。

【问题讨论】:

“希望这不是太复杂”:让编码器为您工作的最佳方式! 【参考方案1】:

这个方法,使用array_slice(),应该可以为你解决问题:

public function get_percentage($percentage)

    $count = count($this->arr) * ($percentage / 100);
    return array_slice($this->arr, 0, round($count));

【讨论】:

谢谢蒂姆!你是最好的!即使数字必须四舍五入,这是否可行? (我问题的最后一部分)。 +1,但值得注意的是 array_slice 会截断 $count,因此如果您希望 8% 返回 1 个元素,则需要先 round。 @Giorgio:我刚刚修改了代码,如果它现在可以满足您的需要,请告诉我。

以上是关于如何获得数组的百分比?的主要内容,如果未能解决你的问题,请参考以下文章

如何获得合计占总数的百分比

如何使用 PySpark 逐年获得百分比变化

OpenGL:如何获得 GPU 使用百分比?

如何获得屏幕上 UIview 的百分比

向串口发送数据时如何获得链接速度和传输百分比?

如何计算直方图(特征向量)之间的相似度百分比