您在Matlab/F#/R上进行数据分析和建模算法的经验 [英] Your experiences with Matlab/F#/R for data analysis and modeling algorithms

查看:163
本文介绍了您在Matlab/F#/R上进行数据分析和建模算法的经验的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在使用C ++进行编码之前,我已经使用F#进行算法建模,之后再使用它来检查C ++代码的结果以及实际记录的数据.

I've been using F# for a while now to model algorithms before coding them in C++, and also using it afterwards to check the results of the C++ code, and also against real-world recorded data.

对于建模方面来说,这非常方便,但是对于数据混搭"类的东西,从CSV和其他来源中提取数据,生成统计数据,绘制图表等,我的同事却无休止地挑逗我(您为什么要自己编码?它内置在MatLab中").

For the modeling side of things, it's very handy, but for the 'data mashup' kind of stuff, pulling in data from CSV and other sources, generating statistics, drawing charts etc., my colleague teases me no end ("why are you coding that yourself? It's built in to MatLab").

我还有另一个同事向R发誓,R也有图表功能内置".

And I have another colleague who swears by R, which also has charting stuff 'built-in'.

我知道MatLab,R和F#并非严格可比,因此我不要求功能比较出手".我只是想知道其他人在这种分析之前和之后的方案中使用什么,以及他们对此有多满意.

I know that MatLab, R and F# are not strictly comparable, so I'm not asking for a 'feature comparison shoot out'. I just wondered what other people are using for these kind of pre- and post-analysis scenarios, and how happy they are with it.

(如果有人在那里将Microsoft Charts包装为F#友好的东西,让我知道,我很乐意参加...)

(If there's anyone out there working on wrapping Microsoft Charts into something F#-friendly, let me know, I'd be happy to participate...)

(注意:此问题的回答将是主观的,但请根据经验)

推荐答案

我对F#的经验很少,但是关于C ++/Matlab/R:如果程序的执行速度是最快的,重要的是,使用C ++.如果实现的速度是最重要的,请使用Matlab或R.这是有很多原因的,其中最重要的是它们庞大的数学/统计信息包库.

I have very little experience with F#, but regarding C++/Matlab/R: If the speed of your program's execution is the most important, use C++. If speed of implementation is the most important, use Matlab or R. This is true for a number of reasons, not the least of which is their massive libraries of math/stats packages.

Matlab和R都可以通过并行化来加速:因此,总的来说,我认为实现的速度和质量应该是一个更大的问题.这就是应用程序设计中真正的编程价值"所在的地方.如果您可以同时编写3或4个优秀的R程序,而同时又要编写1个优秀的C ++程序,这不是一个小命题.

Both Matlab and R can be sped up through parallelism: so generally, I think that speed and quality of implementation should be a bigger concern. That's where the real "value" of programming is taking place, in the design of the application. It's not a minor proposition if you can write 3 or 4 good R programs in the same time it takes you to write 1 good C++ program.

关于F#:就它作为Microsoft框架的一部分而言,它必须提供很多东西.如果您正在Visual Studio中进行开发或正在处理大型.Net项目(例如),则使用F#可能很有意义.另一方面,您可以从.Net应用程序中调用Matlab和R,因此我可能会认为它们的库应该是一个更大的问题.例如,请参见本文作为R

Regarding F#: so far as it is part of Microsoft's framework, it must have a lot to offer. If you're developing in Visual Studio or working on a big .Net project (for instance), it might make sense to use F#. On the other hand, you can call both Matlab and R from .Net applications, so I would probably argue that their libraries should be a bigger concern. For instance, see this article as an example for R and the Matlab Builder.

长话短说:比较F#和Matlab/R并不是一个很好的比较. F#是一种通用的编程语言,而Matlab/R可以看作是大量的数学/数据分析工具包.有人从F#调用Matlab或R,以利用每种语言的优势(例如,请参见此讨论关于Matlab/F#的这篇文章有关R/F#的本文 ).

Long story short: comparing F# and Matlab/R isn't a good comparison. F# is a general purpose programming language, while Matlab/R can be viewed as massive mathematical/data analysis toolkits. Some people call Matlab or R from F# in order to take advantage of each language's benefits (e.g. see this discussion, this article on Matlab/F#, or this article on R/F#).

就图表而言:R在这方面非常强大.看看 CRAN上的图形视图

So far as charting is concerned: R is extremely strong on this front. Have a look at the graphics view on CRAN and this series of posts on the LearnR blog about Lattice and ggplot2.

这篇关于您在Matlab/F#/R上进行数据分析和建模算法的经验的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆