问题标签 [benfords-law]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1496 浏览

matlab - 如何在 MATLAB 中实现本福德定律

我想实现一个版本的本福德定律(http://en.wikipedia.org/wiki/Benford%27s_law),它基本上要求一个数字的第一个数字来对分布进行分析。

你如何在 MATLAB 中做到这一点?

0 投票
3 回答
2632 浏览

java - Java 中的 Benford 定律 - 如何将数学函数转换为 Java

我有一个快速的问题。我正在尝试用java制作一个欺诈检测应用程序,该应用程序将主要基于本福德定律。Benford 定律超级酷,基本上可以解释为,在真实的金融交易中,第一个数字通常是 1、2 或 3,很少是 8、9。我一直无法得到 Benford 公式翻译成可以在 Java 中运行的代码。

http://www.mathpages.com/home/kmath302/kmath302.htm此链接包含有关本福德定律是什么以及如何使用它的更多信息。

我知道我必须使用 java 数学类才能使用自然对数函数,但我不知道该怎么做。任何帮助将不胜感激。

非常感谢!!

0 投票
1 回答
720 浏览

java - Java中的本福德定律

我正在尝试创建一个应用程序,该应用程序将弄清楚如何在第 n 个位置的数字上找到本福德定律,但到目前为止我还无法做到。我可以在第一个位置找到它,但之后我不确定。这是本福德定律的资源:

http://www.mathpages.com/home/kmath302/kmath302.htm

在最底部(最后一个公式)有一个我想要做的数学公式,但我似乎无法将它放入代码中。

这就是我对任何给定位置的第一个数字的做法:

任何想法如何实现它的求和部分?我很确定它会涉及一个 for 循环,但是当我尝试它时它似乎并没有成功。

编辑 - - - - - - - - - - - - - - - - - - - - - - - - - --------------------------------------

感谢 tskuzzy 的回答,我想通了。这就是你在 Java 中的做法:

0 投票
2 回答
2915 浏览

python - 是否存在服从本福德定律的随机数分布?

Python 有多种方法可以生成不同的随机数分布,请参阅该模块的文档random。不幸的是,如果没有适当的数学背景,特别是考虑到所需的参数,它们并不是很容易理解。

我想知道这些方法中是否有任何一种能够产生分布符合本福德定律的随机数,以及哪些参数值是合适的。即对于整数群体,这些整数应该在大约 30% 的时间以“1”开头,大约 18% 的时间以“2”开头,等等。


使用John Dvorak 的答案,我将以下代码放在一起,它似乎可以完美运行。


还出现了一个问题,即这在不同版本的 Python 之间是否一致。由于随机数的性质,这不是一个微不足道的问题 - 您希望每次运行都会有一些变化,有时还会在random库的不同版本之间发生变化。避免这种情况的唯一方法是在每次运行之间一致地播种随机数生成器。我已将其添加到我的测试中,并且在 Python 2.7.1、3.8.6 和 3.9.1 中得到了完全相同的结果。

0 投票
2 回答
2577 浏览

excel - Excel中的本福德定律

我有一个大数据集,我希望根据本福德定律对其进行测试。

到目前为止,我一直在提取第一个数字,并根据它创建一个图表

我将公式乘以 1,因为 LEFT 将数字变成了字符串。

我希望自动化这个过程。有没有办法用 VBA 或更简单/更优雅的公式来做到这一点?

0 投票
3 回答
5020 浏览

python - 本福德的法律程序

我必须编写一个程序来证明两个数据列表的本福德定律。我想我的代码大部分都已经写好了,但我认为我遗漏了一些小错误。如果这不是该网站的使用方式,我很抱歉,但我真的需要帮助。这是我的代码。

如果这不是我应该如何使用本网站,再次抱歉。另外,我只能使用教授向我们展示的编程技术,所以如果您能给我建议以清理代码,我将非常感激。

另外,这里有几行来自我的数据。

0 投票
2 回答
1306 浏览

c++ - C++ 本福德定律程序。

所以我必须编写一个程序来=> 分析三个不同的数据文件,并尝试确认本福德定律。您将创建一个控制台应用程序,该应用程序打开每个文件,计算以“1”、“2”、“3”等开头的值的数量,然后输出每个数字的百分比。

我想我已经搞定了,但我在 Dev C++ 中不断收到错误。

是说'good'、'eof'和'infile'是非类类型?我不知道那是什么意思!帮助将不胜感激!谢谢!

0 投票
1 回答
196 浏览

na - R - Benford - 带有 NA 字符串的数据集

我有一个宏观经济数据的数据集,如 GDP、通货膨胀等……其中行 = 不同的宏观经济指标,列 = 年

由于缺少某些值(例如:任何国家在任何年份的 GDP),它们被记为“NA”。

当我执行这些操作时:

它给了我这个错误:

我认为这是因为 NA 字符串,但我不知道如何解决它

0 投票
4 回答
1836 浏览

java - 如何从字符串的 ArrayList 中仅获取整数数据

我读了一个文本文件并将数据放入一个ArrayList.String

数据就像

我只需要那些整数数据作为整数来查找整数的第一个数字。我知道如何找到第一个数字,但我不知道如何只获取整数数据。

0 投票
1 回答
1243 浏览

r - R本福德分析

我正在使用 benford.analysis 包来探索本福德定律。我被要求绘制任何给定数据集的第一位数字的分布并将其覆盖在本福德图上。现在,我正在查看 benford.analysis 包的 plot(),我想这将符合我的要求,只是 plot() 显示了这么多“图”......

我只需要数字分布图。鉴于我上面的代码,汇总分布、卡方差异和求和差异仍然与数字分布一起显示。我只想要数字分布图,可以吗?当我将“summation”或“ex summation”添加到除参数的向量时,什么都不显示。

我不想靠自己做情节,因为我对我的 R 技能还没有信心。