找到了一篇比较文章,英文的,解释得很好啊
Matlab is much more intuitive to learn and way more flexible.
They do different things and good advice to students would be to learn both
for their appropriate uses: Splus for data analysis, Matlab for numerical
simulation. You can do some simulation in Splus (less flexible than Matlab
and it’s so slow I wouldn’t recommend it for routine numerical work) and you
can do some data analysis in Matlab (but its way less comprehensive,
sophisticated or convenient, for the most part). In summary, Splus for
statistical modeling, Matlab for numerical modeling.
Splus for stats and data visualization, Matlab for linear algebra,
computation, and simulation. Matlab often requires add-in modules, but
there is a lot of freeware out there.
For anything statistical, splus is clearly the right choice. For
linear algebra, they are more or less equal. For graphics, matlab is
generally better, especially for colorfill contouring with curvilinear
coordinates, but I wouldn’t want to do without splus’s trellis
graphics. And splus automatically labels graphs, which matlab can’t do.
In Splus all objects are immediately
written to disk and memory is freed up, so you don’t have to
explicitly manage the memory as you would when using matlab. And if
you crash, nothing is lost. Also, matlab doesn’t
have anything like the … argument for functions. Or “computing on
the language”.
S-plus is weak at working with differential equations models and PDE
support is nil. S-plus handles statistical models much much better. For
example, implementing blue book models in MATLAB is a chore, whereas, it is
essentially built-in S-plus. Graphics are great in both programs but a bit
easier to do in MATLAB.
The main difference is functionality and speed of looping. S-PLUS has much more statistical
functionality than Matlab and is a better environment for creating
statistical functions because it has a richer language. Matlab is easier to
learn and is much faster for looping and better for simulation
experiments.
The bottom line is that Splus is much slower at several tasks, although
these involve looping and if that were avoided the difference would
probably shrink. However, this comparison does not consider capabilities,
ease of learning/use, or effort required to produce a given result.