android java 什么是 long[ ][ ]?
android java what is a long[ ][ ]?
我需要做 chiSquaredTest。我正在使用 Apache Commons 数学库,但不确定 long[][]
与 long[]
有什么区别?这是方法说明:
public double chiSquareTest(long[][] counts)
throws NullArgumentException,
DimensionMismatchException,
NotPositiveException,
MaxCountExceededException
Returns 观察到的显着性水平或 p 值,与基于输入计数数组的卡方独立性检验相关联,被视为双向 table.
2-way table 的行数是 count[ 0 ], ... , count[count.length - 1]
Preconditions:
- 列表项所有计数必须≥ 0。
- count数组必须是矩形的(即所有count[i]子数组的长度必须相同)。
- 计数表示的 2-way table 必须至少有 2 列和至少 2 行。
- 如果不满足任何先决条件,则会抛出 IllegalArgumentException。
Parameters:
- counts - 2-way table
的数组表示
Returns:
- p 值
long[]
- 它是一维数组。
long[] array = new long[4];
/* result of that array
{0, 0, 0, 0}
*/
long[][]
- 它是数组的数组/二维数组。
long[][] array2 = new long[4][];
array2[0] = new long[1];
array2[1] = new long[2];
array2[2] = new long[4];
array2[3] = new long[3];
/* result of that array
{
{0},
{0, 0},
{0, 0, 0, 0},
{0, 0, 0},
}
*/
也可以是这样的:
long[][] array = new long[4][4];
/* result of that array
{
{0, 0, 0, 0},
{0, 0, 0, 0},
{0, 0, 0, 0},
{0, 0, 0, 0},
}
*/
有关更多示例,请转到 this link.
请记住,Apache Commons Math 中的 ChiSquareTest class 提供了两种不同的度量:
拟合优度检验:使用 chiSquareTest(double[] expected, double[] observed)
- 检验观察到的数据是否来自声明的分布。
独立性检验:使用chiSquareTest(double[][] counts)
- 检验两个不同的变量是否相互关联。
这两个测试略有不同,结果也会不同。
编辑:由于问题实际上与 Excel 的 chidst 函数以及如何在 Java 中计算相同的结果有关,因此 Apache Commons Math3 的解决方案如下:
ChiSquaredDistribution dist = new ChiSquaredDistribution(df);
double chidst = 1 - dist.cumulativeProbability(chi);
谢谢!是的,我很困惑。我找到了这个 post
实际上使用正则化 Gamma() 更好;
http://commons.apache.org/proper/commons-math/javadocs/api-3.6.1/index.html
我需要做 chiSquaredTest。我正在使用 Apache Commons 数学库,但不确定 long[][]
与 long[]
有什么区别?这是方法说明:
public double chiSquareTest(long[][] counts)
throws NullArgumentException,
DimensionMismatchException,
NotPositiveException,
MaxCountExceededException
Returns 观察到的显着性水平或 p 值,与基于输入计数数组的卡方独立性检验相关联,被视为双向 table.
2-way table 的行数是 count[ 0 ], ... , count[count.length - 1]
Preconditions:
- 列表项所有计数必须≥ 0。
- count数组必须是矩形的(即所有count[i]子数组的长度必须相同)。
- 计数表示的 2-way table 必须至少有 2 列和至少 2 行。
- 如果不满足任何先决条件,则会抛出 IllegalArgumentException。
Parameters:
- counts - 2-way table 的数组表示
Returns:
- p 值
long[]
- 它是一维数组。
long[] array = new long[4];
/* result of that array
{0, 0, 0, 0}
*/
long[][]
- 它是数组的数组/二维数组。
long[][] array2 = new long[4][];
array2[0] = new long[1];
array2[1] = new long[2];
array2[2] = new long[4];
array2[3] = new long[3];
/* result of that array
{
{0},
{0, 0},
{0, 0, 0, 0},
{0, 0, 0},
}
*/
也可以是这样的:
long[][] array = new long[4][4];
/* result of that array
{
{0, 0, 0, 0},
{0, 0, 0, 0},
{0, 0, 0, 0},
{0, 0, 0, 0},
}
*/
有关更多示例,请转到 this link.
请记住,Apache Commons Math 中的 ChiSquareTest class 提供了两种不同的度量:
拟合优度检验:使用
chiSquareTest(double[] expected, double[] observed)
- 检验观察到的数据是否来自声明的分布。独立性检验:使用
chiSquareTest(double[][] counts)
- 检验两个不同的变量是否相互关联。
这两个测试略有不同,结果也会不同。
编辑:由于问题实际上与 Excel 的 chidst 函数以及如何在 Java 中计算相同的结果有关,因此 Apache Commons Math3 的解决方案如下:
ChiSquaredDistribution dist = new ChiSquaredDistribution(df);
double chidst = 1 - dist.cumulativeProbability(chi);
谢谢!是的,我很困惑。我找到了这个 post