我在java中有以下hashmap:
{B046 = 0.0,A061 = 3.0,A071 = 0.0,B085 = 0.0,B075 = 3.0,B076 = 9.0,B086 = 3.0,B095 = 0.0,B096 = 0.0,A052 = 0.0,B066 = 0.0,B056 = 9.0,B065 = 0.0,B055 = 9.0}
我应该如何对hashmap进行排序,以便将Alphabet和数字数字考虑在内?
生成的hashmap应如下所示:
{A052 = 0.0,A061 = 3.0,A071 = 0.0,B046 = 0.0,B055 = 9.0,B056 = 9.0,B065 = 0.0,B066 = 0.0,B075 = 3.0,B076 = 9.0,B085 = 0.0,B086 = 3.0,B095 = 0.0,B096 = 0.0}
感谢帮助!
如何将double值转换为int执行以下操作:
Double If x = 4.97542. Convert to int x = 4.
Double If x = 4.23544. Convert to int x = 4.
Run Code Online (Sandbox Code Playgroud)
也就是说,答案总是四舍五入.
我正在寻找尾部正态分布的高精度值(1e-10 and 1 - 1e-10),因为我正在使用的R包将任何超出此范围的数字设置为这些值,然后调用qnormand qt函数.
我注意到的是,qnorm在查看尾部时,R 中的实现是不对称的.这对我来说是非常令人惊讶的,因为众所周知这个分布是对称的,我已经看到其他语言中的实现是对称的.我已检查过该qt功能,它在尾部也不对称.
以下是qnorm函数的结果:
x qnorm(x) qnorm(1-x) qnorm(1-x) + qnorm(x)
1e-2 -2.3263478740408408 2.3263478740408408 0.0 (i.e < machine epsilon)
1e-3 -3.0902323061678132 3.0902323061678132 0.0 (i.e < machine epsilon)
1e-4 -3.71901648545568 3.7190164854557084 2.8421709430404007e-14
1e-5 -4.2648907939228256 4.2648907939238399 1.014299755297543e-12
1e-10 -6.3613409024040557 6.3613408896974208 -1.2706634855419452e-08
Run Code Online (Sandbox Code Playgroud)
很明显,在x接近0或1 的值时,此功能会崩溃.是的,在"正常"使用中这不是问题,但我正在研究边缘情况并将小概率乘以非常大的值,在这种情况下,误差(1e-08)变为大值.
注意:我已尝试使用1-x并输入实际数字0.00001,0.99999并且准确性问题仍然存在.
首先,这是一个已知的问题qnorm和qt实现?我在文档中找不到任何内容,算法应该是p值的准确16位数,10^-314如算法AS 241论文中所述.
引自R doc:
Wichura,MJ(1988)Algorithm …
我希望创建一个简单的双打VBA数组,但我希望数组的长度由工作表的单元格值指定.
我尝试做:
Dim NIteration As Integer: NIteration = ActiveSheet.Cells(16, 2).Value
Dim myArray(1 To NIteration) As Double
Run Code Online (Sandbox Code Playgroud)
它失败了这个错误:"需要持续表达"
如何将Double对象转换/转换为int?
Double d = new Double(12.34);
int i = 12 //is what I'm looking for
Run Code Online (Sandbox Code Playgroud)
如果我有一个double我只会使用:
double z = 12.34;
int i = (int)z;
Run Code Online (Sandbox Code Playgroud)
注意:我希望它截断Double(所以 12.9 变成 12),因为我知道它d实际上是一个被转换为 Double 的整数。即我想在一个Double.