Mathlab

>mathlab

Other urls found in this thread:

mathworks.com/solutions/machine-learning/
twitter.com/NSFWRedditGif

You archived a post for this

>engineers

I wish other high-level languages could do stuff with arrays like MATLAB does. I mean fuck,
>array[0:10]++
Vs.
>for(int I=0;Iarray[I]++;
}

...

map(lambda x: x+1, range(0,10))

is it that hard

i like this logo

I am currently learning this as my first programming language. Am I a fool? When I'm applying for summer internships will they like this or do I need to make myself more marketable?

meh. MATLAB syntax works for MATLAB

I never found myself saying "I wish this language had something like MATLAB", because otherwise I'd be using MATLAB.

Either that or Python with SciPy, which has most of what MATLAB has anyway

Matlab is a meme perpetuated by an extremely high sticker price and lucrative kickbacks for universities who force their students to learn it.

It's a powerful software package that has it's use in niche industries and research, but learning and using it to do rudimentary tasks is an enormous waste of time since it's syntax is completely fucktarded and non-transferable.

>gow-shin

>++
Matlab doesn't support that operation, which is a fucking shame.

Pretty much everything you can imagine is way nicer in Python + Numpy than in MATLAB.

Python doesn't support it either.

Numpy is pretty disgusting compared to MATLAB imo.
Still rather have that powerful sympy and open source.

But it supports += 1 which is just as good. In MATLAB you write bullshit like

>Matrix(very lengthy index, another lengthy index, and yet another one) = Matrix(very lengthy index, another lengthy index, and yet another one) + 1
Which is fucking disgusting.

> very lengthy index
you're doing it wrong
> 3 tensors
those don't even work.
> doing things by index in MATLAB
you're doing it very, very wrong.

Do you even code in MATLAB?

>you're doing it wrong
Not really.

>those don't even work.
Of course they do

>you're doing it very, very wrong.
Nope, sometimes it's necessary. Ever heard about slicing?

>Do you even code in MATLAB?
Sometimes, apparently way more than you.

> Sometimes, apparently way more than you.
lol don't lie.
Cells can have three indices maybe, but your syntax is wrong.
> Ever heard about slicing?
why you slicing when you can just
Matrix= Matrix+1?

Matlab syntax is alright, wtf are you talking about?

>Cells can have three indices maybe, but your syntax is wrong.
I really don't get your point. You can easily do something like
>A = zeros(20,30,40);
>A(11,12,13) = 1.0

>why you slicing when you can just
>Matrix= Matrix+1?
Seriously, at this point I simply doubt that you ever did anything meaningful in MATLAB. The point is sometimes you don't want to increase all values in a Matrix, but just some of them, e.g.
>Matrix((OtherMatrix > threshold) & (SomeOtherCondition), 3:8, 1)++
But, no that is not possible, you have to write the whole thing out twice, which is incredibly retarded.

Yeah, it's alright, but then there are always these little things that annoy me. An example:
>zeros(10000)
does not create an array with the shape (10000, 1), but an array with the shape (10000, 10000) for whatever reason. It's just something to keep in mind, but these irrational little decisions are just annoying.

> Gahnoo Ock-taiv

>First programming language
lol'd

Simulink my man.

Can you do all those cool algorithms and machine learning on Matlab or is it better to do that somewhere else?

I've often found myself wishing I could use the "end" keyword in other languages. It's a lot nicer than manually doing length(x) references and it's much more explicit than negative indexing.

Yes. mathworks.com/solutions/machine-learning/

on the other hand though, matlab's lambdas are a little shitty, the baked-in way it handles function files is garbage, and the syntax for loops makes my skin crawl

Replace loops with vectors. It's easier to write and read the code and performs faster.

i already vectorize my code as much as i can. there's still places where i have no choice but to use loops.

Sometimes, it's just not possible or would actually make the code slower rather than faster. Even in languages like MATLAB.

std::for_each(myvec.begin(), myvec.end(), [](int& i) { i+=1;});

vectorization only increases speed if it's vectorized code that calls compiled functions

vectorization doesn't add any speed if all your computation is done in interpreted code

every function you could ever need is already written for you, so it won't teach you to program

it's like python but even slower and proprietary

> high sticker price, lucrative kickbacks

Used to be true but GNU Octave - which is free open source implementation aiming to be 100% compatible is actually quite useful these days. I have had enormous use of it since I finished my research position and became a full time applied math hobo.

SciRuby is picking up steam

Yes but it's purpose is not to teach to program but to help make prototypes to see what would be worthy to program or to make experiments which would take too long to program.

MatLab fag here

One of my professors is trying to push Julia. He seems to like it, and it seems promising, but I havn't had the time to take a look at.

>it's like python but even slower and proprietary
>even slower
That is actually not true at all. MATLAB is pretty fucking fast for what it is, and a lot of its implementations are considered state of the art in the community.

GNU Octave is only useful if all you want is learn the language. For actual scientific computing it's complete and utter shit.

i hate 1-indexing. matlab has good toolboxes though.

From what I can tell, it's basically matlab, but with better formatting for text cells?

> lambdas are a little shitty
Why do you say that?
MATLAB is my favorite for how it handles anonymous functions .
I hate that python made lambda a keyword

Lambdas in Matlab are limited to one statement. If you want more than that you need to make a subroutine (which gets stuck way at the bottom of the script which makes writing/debugging a pain) or an external function (which clogs up your working directory eventually).

Alright I'll admit its been a couple years.
But Ive done A DoD project in MATLAB (which was hell) and a couple modeling projects whixh were fun as fuck.

I remember 3 indexing....being weird.
And using long indexes in MATLAB seems kinda opposite what makes MATLAB so good. Fast for prototyping. God awful for large projects

Trying to figure out why you're only gonna modify part of a matrix and not just using two and concatenting them later but w/e.
I think the slicing in MATLAB is cool how powerful it is for how little you have to write.

>>>zeros(10000)
>>does not create an array with the shape (10000, 1), but an array with the shape (10000, 10000) for whatever reason. It's just something to keep in mind, but these irrational little decisions are just annoying.

"The basic datatype in MATLAB is a matrix of complex doubles"

And JIT.

>lambda
>top kek

>basically matlab
no

if I could get matlab's slicing and indexing (3-indexing is weird yeah but you get used to it) in something else like base python or R, i'd be very happy

MATLAB has had JIT available for five or six years, and in 2015b they made all executed code run through the JIT

Well, I suppose you could have learned worse languages...

labview is a cruel joke and was never meant to actually be used

I tried it and never looked back. The only problem it has is it's current lack of libraries.

Matlab is good for it's "toolboxes" and for simulink and for the innovation. Other than that there's actually several nifty features that Octave has which Matlab doesn't.

Care to brief me on why you never looked back? What features are better in Julia than in Matlab? Im considering learning Julia to replace Matlab but I haven't bothered yet because no one I know IRL ever spoke of Julia, it doesn't seem to be very popular in sweden..

this. I almost regret learning it because everything else looks bad now.

After having used matlab for 2 years, then python for a year I can say that numpy syntax is superior to Matlab.
In matlab you cant even do something like size(A)(1) , in other words get the first element of the size in one go. Also, in matlab you don't have elementary functions such as zeros_like()