gpt4 book ai didi

Perl PDL - 获取向量中 80% 的最低值

转载 作者:行者123 更新时间:2023-12-05 01:31:42 24 4
gpt4 key购买 nike

是否有一个优雅的 PDL 函数,它接收一个值列表并返回一个包含 80% 的最低原始值的列表?

例如:
如果我有这样的列表: (9, 4, 1, 2, 7, 8, 3, 5, 6, 10)

在原始列表上调用此函数后,我想得到 (1, 2, 3, 4, 5, 6, 7, 8) (值的顺序无关紧要 - 不需要对值进行排序)。

我发现 PDL::Ufunc::oddpct 可以返回第 80 个百分位数,但我想获得该百分位数的值列表。我可以自己做,但如果有一些开箱即用的东西 - 为什么不使用它?

谢谢!!!

最佳答案

我建议你使用 pct得到第 80 个百分位数,结合 where原语选择低于该值的所有内容。使用您自己的数据看起来像这样

use strict;
use warnings;

use PDL;

my $list = pdl(9, 4, 1, 2, 7, 8, 3, 5, 6, 10);
print qsort $list->where($list <= $list->pct(80/100));

输出
[1 2 3 4 5 6 7 8]

关于Perl PDL - 获取向量中 80% 的最低值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9514644/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com