小编SRK*_*RKX的帖子

R中的循环效率低下

早上好,

我在R中开发了几个月,我必须确保代码的执行时间不会太长,因为我分析了大数据集.

因此,我一直在尝试使用尽可能多的矢量化函数.

但是,我仍然想知道一些事情.

R中代价高昂的不是循环本身吗?我的意思是,当您开始在循环中修改变量时出现问题,例如是否正确?

因此我在思考,如果你只需要在每个元素上运行一个函数(你实际上并不关心结果)会怎么样.例如,在数据库中写入数据.你该怎么办?

1)使用mapply而不将结果存储在任何地方?

2)在向量上做一个循环,只对每个元素应用f(i)?

3)我可能错过了更好的功能吗?

(当然假设你的功能没有最佳矢​​量化).

foreach包裹怎么样?您是否通过使用它获得了任何性能提升?

loops functional-programming r

5
推荐指数
1
解决办法
3712
查看次数

当列表失去焦点时,WPF SelectedItem颜色消失

我有一个WPF Window,它基本上有一个ListBox显示项目列表.

我然后有一个ListView基本显示的细节SelectedItemListBox.

问题是,当焦点ListBox不再存在时,突出显示颜色消失,我无法再看到选择了哪个主项目.

你知道我怎么解决这个问题吗?(即确保项目保持突出显示)

c# wpf wpf-controls

5
推荐指数
1
解决办法
4268
查看次数

强制对F#中的函数进行多次评估

我正在尝试在F#中开发一个随机数"生成器".

我成功创建了以下功能:

let draw () =
    let rand = new Random()
    rand.Next(0,36)
Run Code Online (Sandbox Code Playgroud)

这很好用,它会生成0到36之间的数字.

但是,我正在尝试创建一个多次运行此函数的函数.

我尝试了以下内容

let multipleDraws (n:int) =
    [for i in 1..n -> draw()]
Run Code Online (Sandbox Code Playgroud)

但是,我只得到一个结果,因为draw在for comprehension中只评估一次.

我怎么能强制多次执行该draw功能?

f#

5
推荐指数
2
解决办法
977
查看次数

是否推荐使用函数式编程(F#)的时间序列实现?

我正在开发一个.NET项目,其中一部分我将操纵时间序列.

由于项目的主要部分已经在C#中实现,我已经描绘了一个继承自的面向对象设计SortedDictionary<DateTime,T>.

然而,在过去的几年里,我一直爱着函数式编程,我认为由于这个组件将受到相当狂野和强烈的算法的影响,我愿意并行处理它,我很乐意拥有不可变结构.

我想用F#设计它,使用如下定义类型:

type TimeSeries<'t> = (DateTime * 't) seq
Run Code Online (Sandbox Code Playgroud)

并继续下去.

它具有不可变的优点,并且使用F#Async模块并行执行将非常简单.我也可以使用F#的度量单位功能.

我有点害怕不得不在C#中使用计算结果,我想知道是否已经尝试过的人可以在实践中给我一些关于结果的反馈.

最后是否易于使用,还是从C#切换到F#太复杂了?

当时间序列变大时,集合是不可变的效率问题吗?

当我尝试划分元素时,我是否可以保持类型通用,或者我是否必须TimeSeries<float>快速切换到我的函数?

如果我想在某些功能的时间序列上使用基于C#的算法,这会使整个想法变得无用吗?

您是否参考过有关时间序列功能实现效率的研究?

.net f# functional-programming

5
推荐指数
1
解决办法
1513
查看次数

如何使用Flask获取页面访问者的Windows用户名?

我四处搜索,但我没有想出任何东西,所以我很抱歉,如果这是一个骗局,我找不到任何东西.

我为我的公司编写了这个非常广泛的webapp.唯一剩下的就是添加某种审计.我无法弄清楚如何捕获当前访问我的网页的人的用户名.由于托管在此的框是以管理员身份登录的,因此我获得的功能包括getpass.getuser()和os.environ("USERNAME").

这是我正在尝试做的事情:

用户访问我的Grab用户名的网页,并在幕后做一些事情.

无论如何我可以用Flask做到这一点吗?甚至是Javascript?

编辑:

我想我不清楚.道歉.我有一个WebApp(使用Flask作为Web框架用Python编写.我已经在Flask,HTML,CSS和Javascript中编写了网页.)这个Webpapp托管在服务器上.我希望用户的用户名访问该页面,而不是登录到服务器的用户.getpass.getuser()和os.environ.get("USERNAME")仅返回管理员.哪个是服务器,而不是用户.

python flask

5
推荐指数
0
解决办法
1843
查看次数

为Windows创建R包

我在Linux上创建了一个R包(它正在Linux上工作),但我不能在Windows上使用相同的包.

我试图做的(可能有点愚蠢)是将tar.gz转换为Zip文件并从R GUI安装它.

但是,当我加载包库("myPackage")时,我收到以下消息:

  Error in library("myPackage") :
     there is no package called 'myPackage'
Run Code Online (Sandbox Code Playgroud)

我应该尝试使用R工具直接从Windows构建软件包吗?

windows packages r

4
推荐指数
1
解决办法
833
查看次数

F#中的"链接"异步函数

我在F#中创建了一个函数来从Yahoo恢复历史数据(F#的经典异步示例):

let getCSV ticker dStart dEnd =
async   {
        let query = getFileUrl ticker dStart dEnd
        let req = WebRequest.Create(query)
        use! resp = req.AsyncGetResponse()
        use stream= resp.GetResponseStream()
        use reader = new StreamReader(stream)
        let content = reader.ReadToEnd()
        let ts = parseData content
        return ts
        }
Run Code Online (Sandbox Code Playgroud)

现在,我可以通过执行以下操作异步运行此函数:

let test=
    ["MSFT";"YHOO"]
    |>List.map (fun x -> getCSV x (DateTime.Parse("01.01.2000")) (DateTime.Parse("01.01.2010")))
    |> Async.Parallel
    |> Async.RunSynchronously
Run Code Online (Sandbox Code Playgroud)

好,这很酷.

现在,我想知道的是如何应用一些功能,这是价格的历史:

例如:

let getReturns (prices:(DateTime *float)list) =
    [for i in 1..(prices.Length-1) -> i]
    |> List.map (fun i ->(fst (List.nth …
Run Code Online (Sandbox Code Playgroud)

.net f# asynchronous

4
推荐指数
1
解决办法
1656
查看次数

为什么需要webservices来从Silverlight访问数据库?

我目前正在研究创建新应用程序的几个选项,可以通过封闭内联网中的多个用户使用浏览器进行访问.

我考虑过将Silverlight用于其用户友好性和WPF设计,以便与未来用户习惯的富客户端保持一致.

该项目(当然)也需要访问内部网内的数据库,因此我浏览了互联网以了解如何处理数据访问.我很惊讶地看到,你显然必须使用Web服务与数据交互,如提及本SO后指向本教程(的许多方法来使用WebServices的一个).

已经在Intranet中创建了所有与数据库交互的富客户端,我很惊讶被迫使用Web服务.

的确,我确实了解网络服务的优势; 它提供的安全性,以及通常在软件架构中创建良好DAL的所有其他功能.但是,我不明白为什么你不能简单地创建(例如)包含Linq to SQL类的库,并使用这个库作为silverlight项目中的参考来直接访问数据,就像使用经典富客户端应用程序一样.我知道通过这样做,您将访问数据存储在应用程序的连接字符串中,但我不明白为什么它不适用于Silverlight客户端.

更新:

那么,有两个问题:

  1. 我们实际上是否必须通过Web服务访问数据?
  2. 如果是这样,为什么它与传统的富客户端方法不同?
  3. Silverlight 5能让我做这样的事吗?

.net silverlight web-services data-access-layer

3
推荐指数
1
解决办法
1735
查看次数

如何使用FTP同步Git存储库分支?

有没有办法可以同步git master和开发分支与不同的ftp服务器,以便我可以看到我的舞台服务器上的开发分支更改,当我将代码与主分支合并,所以更改将在实时服务器上完成?

我刚刚开始使用git并拥有基本知识,所以非常期待您的帮助.

git ftp github

3
推荐指数
1
解决办法
2700
查看次数

XTS尺寸限制

我最近一直在研究大型数据集(超过40万行).到目前为止,我一直在使用XTS格式,它适用于十分之几元素的"小"数据集.

现在项目增长了,R只是在检索数据库的数据并将其放入XTS时崩溃.

据我所知,R应该能够具有大小为2 ^ 32-1个元素的向量(或者根据版本为2 ^ 64-1).因此,我得出结论,XTS可能有一些限制,但我在文档中找不到答案.(也许我对理解可能的矢量大小的理解有点过于自信).

总结一下,我想知道:

  1. XTS确实有尺寸限制
  2. 你认为处理大型时间序列最聪明的方法是什么?(我在考虑将分析分成几个较小的数据集).
  3. 我没有收到错误消息,R只是自动关闭.这是一种已知行为吗?

  1. 与R相同,它取决于所使用的内存类型(64位,32位).无论如何它非常大.
  2. Chuncking数据确实是个好主意,但并不需要.
  3. 这个问题来自R 2.11.0中已经在R 2.11.1中解决错误.长日期向量存在问题(这里是XTS的索引).

time r time-series xts

2
推荐指数
1
解决办法
364
查看次数