有谁知道一个可靠,准确的库来计算Java中的多变量法线(MVN)CDF?我正在寻找像MATLAB的mvncdf函数.我需要能够达到10或更多的尺寸.大多数统计/数学库都没有此功能.能够计算对数概率是一个加号.
从这篇文章中,似乎没有提到其他语言的免费实现.虽然直接java实现会摇滚,但我会接受其他语言中不需要许可证的实现(例如,不是MATLAB或IMSL),并且可以用最少的开销从Java轻松调用.
(这个问题是StackExchange数学上的一个帖子的衍生物,我试图计算正态随机变量排序的概率......如果你有兴趣尝试用其他数学方法直接解决问题,请检查出来.)
所以我做了git clone从远程git仓库获取maven项目.大!我一直在命令行工作,做git pull,commit等等.太棒了!现在我想将这个项目导入eclipse,并能够通过安装的egit在eclipse中使用git.所以我做了一个:
mvn eclipse:eclipse -Dwtpversion=2.0
Run Code Online (Sandbox Code Playgroud)
之后我可以通过常规将项目导入eclipse:
Import -> General -> Existing Projects into Workspace
Run Code Online (Sandbox Code Playgroud)
但GIT选项不会出现在Team !!! :( :( :(
如何导入此项目并同时具有git选项?
这个问题是对带有注入类的框架使用guice的延续,正确的初始化方法是什么?我试图实现,并尝试其他方法来解决这个问题,但到目前为止还没有任何工作.
主要问题是这个.我有一个,InterfaceA
并InterfaceB
在API的不同部分公开.有迹象表明,实现这两个接口的两个阶级,TestClass
和RealClass
,让这取决于我是否在测试或做别的事情,我可以做到以下几点:
bind(InterfaceA.class).to(TestClass.class);
bind(InterfaceB.class).to(TestClass.class);
Run Code Online (Sandbox Code Playgroud)
或者,用于生产:
bind(InterfaceA.class).to(RealClass.class);
bind(InterfaceB.class).to(RealClass.class);
Run Code Online (Sandbox Code Playgroud)
我有两个使用这些类的要求:
TestClass
或被RealClass
约束; 所以,就像单身模式一样,除了:InterfaceA
InterfaceB
默认的无范围方法会导致为每个接口注入创建RealClass
/的多个实例TestClass
.我不希望这样,所以我尝试使用范围,子注入器和其他方法来实现它.没有任何效果:
TestClass
或RealClass
以单一实例在该注射器.问题是,是否TestClass
或RealClass
正在使用中的父喷射器构造,并且因为它是一个单件,它已经被实例化(除非Stage.DEVELOPMENT
).例如,InterfaceA
无法TestClass
在父注入器中绑定到它,然后将其重新绑定为子注入器中的单例.TestClass
和RealClass
.然后,我进入并退出此范围以获取该范围内的单个实例.问题是我的代码是多线程的,并且从一个线程改变范围会影响全局注入器可以看到的内容并且创建其他实例.结合儿童注射器和范围方法.我尝试为每个使用此自定义作用域创建子注入器,但随后RealClass
在父作业中绑定失败
No scope is bound to name.package.WhateverScope.
Run Code Online (Sandbox Code Playgroud)
因为它似乎坚持认为它始终WhateverScope
可用,而不仅仅是在儿童注射器中.
所有这些问题似乎都是由于我需要能够配置是否在父级中使用TestClass
或者RealClass
在父级中,然后能够稍后将它们实例化为特定的一组对象的单例.我正在把头发拉出来完成如何完成!
顺便说一句,Guice范围的文档很糟糕,几乎无法理解.这篇文章是唯一让我在任何地方的文章:
什么是(连续的)整数的确切范围,可以表示为double(resp.浮点?)我问的原因是因为我对这样的问题感到好奇,因为会发生精度损失.
那是
m
,m+1
不能精确表示为double(resp.浮点数)?-n
,-n-1
不能精确表示为double(resp.浮点数)?(可能与上面相同).这意味着,每一个之间的整数-n
和m
具有精确的浮点表示.我基本上都在寻找[-n, m]
浮动和双打的范围.
我们将范围限制为标准IEEE 754 32位和64位浮点表示.我知道浮点数有24位精度,双精度数有53位(都带有隐藏的前导位),但由于浮点表示的复杂性,我正在寻找权威的答案.请不要挥手!
(理想的答案将证明,所有的整数从0
到m
的表达,这m+1
是没有的.)
对于那些非常熟悉Meteor架构的人来说,这是一个问题.
我正在尝试设计一个智能包,可以透明地运行Meteor应用程序的几个"副本".也就是说,鉴于现有的Meteor应用程序和几个预定义的用户组,该软件包可以半自动地"隔离"应用程序 - 以对每组用户来说运行它,看起来只有那些用户正在使用该应用程序.
据我所知,此功能可以为任何应用程序定制设计.但是,我正在寻找一种智能包最简单的方法,在任何现有应用程序的基础上提供此功能,同时考虑到Meteor的使用Collection
和所有.因此,它应该或多或少地满足以下要求:
以下是我为此问题考虑的一些方法和相应的缺点:
Meteor.Collection
以使其了解这些不同组的方式覆盖(或实现相同的接口),并且从客户端的角度来看,其行为就像当前用户的组是整个应用程序一样.我正在寻找真正了解Meteor系统的人的好主意.如何设计此功能的方式是绝大多数Meteor应用程序可以轻松转换为使用它(即避免疯狂的黑客攻击)但在Meteor上实现是否简单有效?
(如果你是纽约市地区的流星大师,我很乐意带你出去吃饭来讨论这个!)
我有一个庞大的表,我需要阅读某个订单并计算一些汇总统计数据.该表已经有一个正确顺序的聚集索引,因此获取记录本身非常快.我正在尝试使用LINQ to SQL来简化我需要编写的代码.问题是我不想将所有对象加载到内存中,因为DataContext似乎可以保留它们 - 但是尝试对它们进行分页会导致可怕的性能问题.
这是故障.最初的尝试是这样的:
var logs =
(from record in dataContext.someTable
where [index is appropriate]
select record);
foreach( linqEntity l in logs )
{
// Do stuff with data from l
}
Run Code Online (Sandbox Code Playgroud)
这是非常快的,并且流速很好,但问题是应用程序的内存使用量不断上升.我的猜测是LINQ to SQL实体被保留在内存中而没有正确处理.因此,在创建了很多对象C#时读取内存不足后,我尝试了以下方法.这似乎是许多人使用的常见Skip
/ Take
范例,具有节省内存的附加功能.
请注意,这_conn
是预先创建的,并且为每个查询创建临时数据上下文,从而导致关联的实体被垃圾回收.
int skipAmount = 0;
bool finished = false;
while (!finished)
{
// Trick to allow for automatic garbage collection while iterating through the DB
using (var tempDataContext = new MyDataContext(_conn) {CommandTimeout = …
Run Code Online (Sandbox Code Playgroud) 我有一些Java代码调用一些本机代码,最初是用Fortran编写的,使用JNA.(这是一个数值库,很多数学人在Fortran中编写代码.)它被编译成一个.so
库,见下文:
在我的代码中测试了所有单元,我得到了很好的结果,但后来我尝试使用来自多个线程的代码,一切都开始失败,出现了奇怪的错误.然后我研究了一些关于重入Fortran代码的东西,并意识到我使用的库有一些全局变量(SAVE
Fortran中的关键字,当再次调用函数时,它记住变量的值:fortran SAVE语句)
现在我正在用synchronized
块包装调用库,但这显着地阻碍了性能.在我看来,重新设计库可能需要付出很大的努力才能重入(它有几千行数字代码,并且不清楚当子程序运行时值如何延续.)有谁知道解决问题的最佳方法是什么?我的想象力表明......
gfortran
(gcc
)以可重入的方式编译Fortran代码?RECURSIVE
关键字,它显然将变量保存在堆栈中,但这似乎与现有代码不兼容.我确认多个虚拟机可以正常运行; 这是有道理的,因为他们不共享记忆.仍然是一个PITA,虽然比线程更不方便.
Meteor的DDP协议非常适用于将一小部分数据从服务器同步到基于浏览器的客户端,这本身就限制了处理的数据量.
但是,请考虑Meteor用于将大型集合从一个服务器同步到另一个服务器的情况,或者仅使用DDP协议本身将一个MongoDB与另一个服务器同步.
在这种情况下(计算上)DDP的效率如何?它如何扩展到几个客户?性能仅限于带宽还是DDP也会受到一些CPU限制?现在可以通过DDP合理同步的最大数据量是多少?DDP是否是这样做的错误方法(参见下面的参考资料)?
一些额外的想法:
也可以看看:
编辑:
经过一些实证经验,我必须得出结论,答案是"效率不高".有关说明,请参阅/sf/answers/1528487411/.
与Meteor开发人员的讨论表明,将来通过修订DDP和发布 - 订阅API来解决此问题,合并框将被删除,客户端将处理合并.这将节省服务器上的CPU /内存,并允许通过线路发送更大的数据集.
在很久以前的数学课上,我被教导过
a == b 当且仅当 a <= b且b <= a时.
Javascript似乎不这么认为:
> new Date(400) <= new Date(400)
true
> new Date(400) >= new Date(400)
true
> new Date(400) == new Date(400)
false
Run Code Online (Sandbox Code Playgroud)
有人可以解释导致这种结果的类型强制规则吗?模糊等于运算符似乎==
应该相信两个Date
s具有相等的值.
当对两组不同的数据进行相同的分析时,有没有一种好的方法可以在 IPython Notebook (Jupyter) 中模块化和重用代码?
例如,我有一个笔记本,其中有很多单元格对数据文件进行分析。我有另一个相同格式的数据文件,我想运行相同的分析并比较输出。这些选项看起来都没有特别有吸引力:
有一个更好的方法吗?
java ×5
c# ×2
meteor ×2
architecture ×1
database ×1
date ×1
datetime ×1
ddp ×1
distribution ×1
double ×1
eclipse ×1
egit ×1
fortran ×1
git ×1
guice ×1
integer ×1
ipython ×1
javascript ×1
jna ×1
jupyter ×1
linq ×1
math ×1
matplotlib ×1
maven ×1
meteorite ×1
numeric ×1
package ×1
reentrancy ×1
skip-take ×1
sql ×1
statistics ×1