gpt4 book ai didi

function - 计算 Mathematica 列表中的出现次数(使用代码,但未完全正常工作)

转载 作者:行者123 更新时间:2023-12-03 06:34:25 26 4
gpt4 key购买 nike

我的问题是这样的:我有一个列表 list,我想迭代该列表,并以步长 step 计算从 0 到 1 的每个值在其中出现的次数。我编写了以下代码:

list = {0.2, 0.2, 0.7, 0.8, 0.17};

countingfornormal[list_, step_] := Module[{temp, num, res, i},
temp = Round[list, step];
num = {};
For[i = 0, i <= 1, i += step, {
res = Count[temp, i];
AppendTo[num, {i, res}];
}];
num
]

但是,对于 0.01 的步长,输出似乎只计算最多 0.17 的值。这真的让我很沮丧,我似乎不明白为什么。我还注意到,对于 0.02 的步长,输出计数值最多为 0.34。

我从一开始就四舍五入,因为最初我使用的是一个更大的列表,其值大约为小数点后 7 位。

我认为这可能是一个时间问题,但我不确定如何解决这个问题。

任何帮助将不胜感激。

最佳答案

也许更好:

list = {0.2, 0.2, 0.7, 0.8, 0.17};
b = BinCounts[list, {0, 1, 0.01}]
(*
->{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0}
*)
BarChart@b

enter image description here

关于function - 计算 Mathematica 列表中的出现次数(使用代码,但未完全正常工作),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7065192/

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