小编scl*_*clv的帖子

104
推荐指数
6
解决办法
14万
查看次数

如何在PostgreSQL查询中显示行号?

我想显示PostgreSQL查询返回的每条记录的观察数.

我认为在8.4窗口函数中可以执行此功能.

sql database postgresql

70
推荐指数
2
解决办法
9万
查看次数

DockableFloatingWindow上的Maximize和Aero snap

我有以下代码给一个未对接的浮动AvalonDock窗口最大化的能力:

class MaximizableDockableContent : AvalonDock.DockableContent
{
    public MaximizableDockableContent()
        : base()
    {
         base.StateChanged += MaximizableDockableContent_StateChanged;
    }

    private void MaximizableDockableContent_StateChanged(
        object sender, RoutedEventArgs e)
    {
        MaximizableDockableContent mdc = (MaximizableDockableContent)sender;
        if (mdc.State == DockableContentState.DockableWindow)
        {
            base.FloatingWindowSizeToContent = SizeToContent.WidthAndHeight;
            FloatingDockablePane fdp = (FloatingDockablePane)base.Parent;
            DockableFloatingWindow dfw = (DockableFloatingWindow)fdp.Parent;

            //dfw.WindowState = WindowState.Maximized;
            dfw.WindowStyle = WindowStyle.ThreeDBorderWindow;
            dfw.ResizeMode = ResizeMode.CanResize;

            //disable minimize button
            ControlBox.SetHasMinimizeButton(dfw, false);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如何为此添加Aero Snap功能?

wpf aero maximize avalondock

26
推荐指数
1
解决办法
1799
查看次数

是否有可能对haskell类型变量设置不等式约束?

是否有可能对函数的类型变量设置不等式约束,foo :: (a ~ b) => a -> bGHC类型族文档中那样,除了不等式而不是相等?

我意识到可能没有直接的方法来做到这一点(因为ghc文档没有列出任何我的知识),但如果根据所有异国情调的类型,这在某种程度上是不可能的,我会感到困惑 - 我已经接触过了.

haskell type-systems type-inference

25
推荐指数
2
解决办法
1982
查看次数

表示连续概率分布

我有一个涉及连续概率分布函数集合的问题,其中大多数是根据经验确定的(例如出发时间,运输时间).我需要的是一些方法来获取这些PDF中的两个并对它们进行算术运算.例如,如果我有两个值x取自PDF X,而y取自PDF Y,我需要得到(x + y)的PDF或任何其他操作f(x,y).

分析解决方案是不可能的,所以我正在寻找的是允许这些事情的PDF的一些表示.一个明显的(但计算上很昂贵的)解决方案是monte-carlo:生成大量的x和y值,然后测量f(x,y).但这需要太多的CPU时间.

我确实考虑将PDF表示为范围列表,其中每个范围具有大致相等的概率,有效地将PDF表示为统一分布列表的并集.但我看不出如何将它们结合起来.

有没有人对这个问题有任何好的解决方案?

编辑:目标是创建一种用于处理PDF的迷你语言(又称域特定语言).但首先我需要理清基础表示和算法.

编辑2: dmckee建议直方图实现.这就是我对统一分布列表的看法.但我不知道如何将它们组合起来创建新的发行版.最终我需要找到像P(x <y)这样的东西,这可能是非常小的.

编辑3:我有一堆直方图.它们不是均匀分布的,因为我是根据出现数据生成的,所以基本上如果我有100个样本并且我想在直方图中有10个点,那么我会为每个条形分配10个样本,并使条形变宽但是恒定区域.

我已经想出要添加PDF,你就可以对它们进行卷积,而且我已经为这个数学做了数学鉴定.当您对两个均匀分布进行卷积时,您会得到一个包含三个部分的新分布:更宽的均匀分布仍然存在,但是每边都有一个三角形,较窄的宽度.因此,如果我对X和Y的每个元素进行卷积,我会得到一堆这些,都是重叠的.现在我想弄清楚如何将它们全部相加,然后得到一个最佳近似直方图.

我开始怀疑蒙特卡洛毕竟不是一个坏主意.

编辑4: 本文详细讨论了均匀分布的卷积.一般来说,你得到一个"梯形"分布.由于直方图中的每个"列"是均匀分布,我曾希望通过卷积这些列并对结果求和来解决问题.

然而,结果比输入复杂得多,并且还包括三角形. 编辑5: [错误的东西删除].但是如果这些梯形近似于具有相同面积的矩形,那么你得到正确答案,并且减少结果中矩形的数量看起来也非常简单.这可能是我一直试图找到的解决方案.

编辑6:解决了!以下是此问题的最终Haskell代码:

-- | Continuous distributions of scalars are represented as a
-- | histogram where each bar has approximately constant area but
-- | variable width and height.  A histogram with N bars is stored as
-- | a list of N+1 values.
data Continuous = C {
      cN :: Int,
      -- ^ Number of bars …
Run Code Online (Sandbox Code Playgroud)

algorithm math statistics haskell probability

22
推荐指数
3
解决办法
3146
查看次数

NSURagedObjectModel initWithContentsOfURL返回nil,尽管modelURL有效

我的NSManagedObjectModel返回nil,尽管路径正确.

        NSString *modelKey = [NSString stringWithFormat:@"/%@/Model", name];
    NSString *modelPath = [((Configuration *)[Configuration shared]) stringEntry:modelKey];
    NSURL *modelURL = nil;
    if ( ! [modelPath contains:@"://"] ) {
        modelPath = PathForBundleResource( modelPath );
        modelURL = [NSURL fileURLWithPath:modelPath];
    }
    NSManagedObjectModel *m = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
Run Code Online (Sandbox Code Playgroud)

NSString*PathForBundleResource(NSString*relativePath)

    NSString* resourcePath = [[NSBundle mainBundle] resourcePath];
return [resourcePath stringByAppendingPathComponent:relativePath];
Run Code Online (Sandbox Code Playgroud)

我重置了模拟器,做了一个干净的构建,但没有任何帮助.

我是iPhone编程的新手(特别是核心数据).

非常感谢任何帮助.

编辑:我编辑了有关xcdatamodeld文件的原始帖子.它最初没有正确连接,但现在它仍然存在同样的问题.

编辑2:显然,xcdatamodel的名称在链接后对xcdatamodel的名称有一些变化.它现在正在运作.感觉很蠢.不知道如何删除这个问题.

iphone nsmanagedobject

20
推荐指数
1
解决办法
8764
查看次数

Haskell:列表中的每个第2个元素加倍

我刚开始使用Haskell并想编写一个函数,给定一个列表,返回一个列表,其中每个第二个元素都被加倍.

到目前为止,我已经想出了这个:

double_2nd :: [Int] -> [Int]
double_2nd [] = []
double_2nd (x:xs) = x : (2 * head xs) : double_2nd (tail xs)
Run Code Online (Sandbox Code Playgroud)

哪个有效,但我想知道你们怎么会写这个功能.是否有更常见/更好的方式或看起来对吗?

haskell

19
推荐指数
4
解决办法
8659
查看次数

在像Haskell这样的函数式语言中,memoized值的生命周期是多少?

在具有惰性语义的纯函数语言(例如Haskell)中,计算结果被记忆,因此对具有相同输入的函数的进一步评估不会重新计算该值,而是直接从memoized值的缓存中获取它.

我想知道这些记忆值是否会在某个时间点被回收?

  1. 如果是这样,这意味着必须在以后重新计算已记忆的值,并且记忆的好处并非如此退出恕我直言.
  2. 如果没有,那么好吧,这很容易缓存所有内容......但它是否意味着程序 - 如果运行足够长的时间 - 将总是消耗越来越多的内存?

想象一个程序执行密集的数值分析:例如使用二分法算法找到数十万个数学函数列表的根.

每次程序评估具有特定实数的数学函数时,结果都将被记忆.但是在算法期间,只有很小的概率才会出现完全相同的实数,导致内存泄漏(或者至少是非常糟糕的使用).

我的想法是,也许memoized值只是"范围"到程序中的某些东西(例如到当前的continuation,调用堆栈等),但我无法找到关于这个主题的实际内容.

我承认我没有深入研究Haskell编译器实现(懒惰?),但是,有人可以向我解释它在实践中是如何工作的吗?


编辑:好的,我从最初的几个答案中理解了我的错误:纯语义意味着参考透明度,这反过来并不意味着自动记忆,但只是保证它没有问题.

我认为网上的一些文章对此有误导性,因为从初学者的角度来看,参考透明度属性似乎很酷,因为它允许隐式记忆.

haskell functional-programming memoization

16
推荐指数
2
解决办法
841
查看次数

没有Root的GHC安装

所以我想建立一个用于Haskell开发的Linux机器,有一个很大的警告 - 在这台机器上没有root权限.我们当然可以让管理员最终为我们安装GHC.但是,从长远来看,当我们想要升级时,我们需要麻烦它们等等.在用户区做所有事情要好得多.这也意味着我们要安装我们链接到用户空间的c库,等等,以尽可能轻松地保持一切.

那么,问题是,我将如何进行纯粹的用户安装GHC?机器将有gcc和通常的工具链.如果有必要,我们可以从一个典型的ghc安装开始,让球滚动,但不是很好.

此外,任何有关管理此类环境的提示都会受到赞赏,特别是涉及如何使用多个开发人员/帐户管理此类设置.

installation haskell ghc

16
推荐指数
2
解决办法
2094
查看次数

如何计算递归函数的显式形式?

我有这个递归函数:

f(n) = 2 * f(n-1) + 3 * f(n-2) + 4
f(1) = 2
f(2) = 8
Run Code Online (Sandbox Code Playgroud)

我从经验中知道它的明确形式是:

f(n) = 3 ^ n - 1  // pow(3, n) - 1
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何方法可以证明这一点.我google了一下,但没有找到任何简单的理解.我已经知道生成函数可能解决了它,它们太复杂了,我宁愿不进入它们.我正在寻找一种更简单的方法.

PS如果它有帮助我记得这样的东西解决了它:

f(n) = 2 * f(n-1) + 3 * f(n-2) + 4
// consider f(n) = x ^ n
x ^ n = 2 * x ^ (n-1) + 3 * x ^ (n-2) + 4
Run Code Online (Sandbox Code Playgroud)

然后你以某种方式计算x导致显式形式的递归公式,但我不记得了

recursion explicit formula

15
推荐指数
2
解决办法
3万
查看次数