问题标签 [chi-squared]

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 投票
2 回答
615 浏览

python - 为什么我的多参数卡方卡在错误循环中?

我正在尝试使用 python 中的模块执行多参数拟合lmfit,但要遵守某些参数组必须总和为一个的约束。

例如,假设我的卡方中有参数 B1_0 和 B1_1,我params.add('B1_0', value=0.5, min=0, max=1)为第一个和params.add('B1_1', expr='1-B1_0-B1_2') 第二个设置了参数。然后我可以使用该minimize方法找到我的模型最适合我的数据。

在我的代码中并不是这么简单;有许多自动生成的参数适合,所以我使用这样的方法:

其中该方法getValue(term)从另一个已知最小化卡方的拟合方法返回值。当我尝试运行我的代码时,我收到如下错误消息:

... ...等,以:

我不知道为什么 lmfit 在这种情况下会抛出错误。有人有想法吗?它在没有限制的情况下“工作”,但会给出不可用的结果。

0 投票
0 回答
1680 浏览

statistics - 压缩/加密数据中的熵和字节分布比较

我有一个问题困扰了我一段时间。

熵测试通常用于识别加密数据。当分析数据的字节均匀分布时,熵达到最大值。熵测试识别加密数据,因为该数据具有均匀分布 - 就像压缩数据一样,在使用熵测试时被归类为加密。

示例:一些 JPG 文件的熵是 7,9961532 Bits/Byte,一些 TrueCrypt 容器的熵是 7,9998857。这意味着通过熵测试,我无法检测到加密数据和压缩数据之间的差异。但是:正如您在第一张图片上看到的那样,显然 JPG 文件的字节不是均匀分布的(至少不像来自 truecrypt-container 的字节那样均匀)。

另一个测试可以是频率分析。测量每个字节的分布,例如执行卡方检验以将分布与假设分布进行比较。结果,我得到了一个 p 值。当我对 JPG 和 TrueCrypt 数据执行此测试时,结果不同。

JPG 文件的 p-Value 为 0,这意味着从统计上看分布不均匀。TrueCrypt 文件的 p 值为 0,95,这意味着分布几乎完全均匀。

我现在的问题是:有人能告诉我为什么熵测试会产生这样的误报吗?是表示信息内容的单位的比例(每字节的位数)吗?例如,p 值是否是一个更好的“单位”,因为规模更小?

非常感谢你们的任何回答/想法!

编辑:不幸的是我不能发布图片,因为我还没有获得 10 名声望 :(

0 投票
1 回答
96 浏览

python - 在函数最小化期间​​确保参数“总和为一”的方法

我正在尝试执行最小化,其中某些参数必须使用PyMinuit总和为一个。我想知道是否有实现这种事情的标准方法?

如果不满足约束,是否通常将函数设置为某个较大的值?例如

对每一轮的参数进行标准化是一个非常糟糕的主意吗?例如

谢谢!

0 投票
1 回答
1538 浏览

r - 当您的数据是观察列表时,R中的卡方检验

当您的数据采用观察列表的形式时,是否可以计算R中的卡方?我的意思是,如果你知道十字架,就很容易得到卡方。例如,如果您进行一项调查并询问性别和真假问题,则只需四个数字即可计算卡方。相反,我有两列数据,每个受访者的答案。是否有可能从这种数据结构中得到卡方,还是我必须转换它?

如果我必须将它转换为R,有没有人知道另一种语言可以让我直接得到卡方?

0 投票
6 回答
12330 浏览

java - 从 JAVA 调用 R 以获取卡方统计量和 p 值

我在 JAVA 中有两个 4*4 矩阵,其中一个矩阵保存观察到的计数,另一个保存预期计数。

我需要一种自动方法来计算这两个矩阵之间的卡方统计量的 p 值;但是,据我所知,JAVA 没有这样的功能。

我可以通过将两个矩阵作为 .csv 文件格式读入 R 来计算卡方及其 p 值,然后使用 chisq.test 函数,如下所示:

其中 .csv 文件的格式如下:

给定这些命令,R 将给出以下格式的输出:

其中包括我正在寻找的 p 值。

有谁知道自动化以下过程的有效方法:

1) 将我的矩阵从 JAVA 输出到 .csv 文件 2) 将 .csv 文件上传到 R 3) 将 .csv 文件上的 chisq.test 调用到 R 4) 将输出的 p 值返回到 JAVA?

谢谢你的帮助....

0 投票
2 回答
1485 浏览

java - 在 Java 和 R 之间工作

我正在尝试将一个双精度数组传递给 R,对其值求和,然后将其返回给 Java。这是我在 Java 中尝试做的事情:

但是,我收到错误:无法解析导入 org.rosuda.JRI.REXP 无法解析导入 org.rosuda.JRI.Rengine 无法解析 Rengine 无法解析为类型

即使对于我所做的进口,情况也是如此:

有什么建议吗?谢谢!!

0 投票
2 回答
4159 浏览

scikit-learn - 多标签分类的特征选择(scikit-learn)

我正在尝试通过 scikit-learn (sklearn.feature_selection.SelectKBest) 中的卡方方法进行特征选择。当我尝试将此应用于多标签问题时,我收到以下警告:

UserWarning: Duplicate scores. Result may depend on feature ordering.There are probably duplicate features, or you used a classification score for a regression task. warn("Duplicate scores. Result may depend on feature ordering."

为什么会出现这种情况以及如何正确应用特征选择?

0 投票
2 回答
5043 浏览

r - 使用 R/Knitr/Rstudio 中的表包测试乳胶表内的统计数据(例如卡方测试)

我想使用tables-package 中的tabular() 函数对两个变量(例如v1 和v2)进行交叉制表,并在表格中显示chisq-test 的p 值。很容易得到交叉表,但我无法得到表内的 p 值。这是我一直在尝试的,没有任何运气:

在此处输入图像描述

0 投票
2 回答
3336 浏览

c# - 如何在 C# 中使用 Excel 公式

我想计算 C# 中卡方分布的右尾概率。Excel 可以使用以下代码进行此计算

其中 100 是卡方,4 是自由度。

我想在C#中使用这个函数来计算;我尝试添加对“Microsoft.Office.Interop”的引用,但找不到使用它的方法!

我遇到了一些关于如何使用 C# 在 Excel 中进行公式化并在 Excel 中获取结果的主题,但不幸的是这不是我需要的;我需要在 C# 中进行计算并在 C# 中获取结果。

0 投票
1 回答
1428 浏览

spss - 在SPSS中输入列联表

我有一个表格的列联表:

我无法将这些数据导入 SPSS v21,因此我可以对其进行分析(卡方)。我试过直接输入这样的数据并使用分析>描述性统计>交叉表,但分析结果不正确,将它们分成奇怪的类别并给我一个卡方值2。当我手动进行计算时我得到 144.2。如果有人对如何正确输入这个有意见,我将不胜感激。谢谢!