Subscribe now and choose from over 30 free gifts worth up to £49 - Plus get £25 to spend in our shop
Can any one point me in the right direction so that I can self-teach myself to be mildly competent using matlab.
I have no programming knowledge whatsoever but I have a pretty strong mathematical background, I've decided that I'd quite like to get into computational biology.
In order to get good at that sort of stuff, there's no substitute for time spent doing it. If you want a good book, then there's one by a chap called something like Duane Hanselman that's often recommended. I'd check out (and maybe post on) the Matlab newsgroup for further advice.
There are Matlab courses too, but they're mostly not cheap.
Out of curiosity, what is your mathematical background?
I'm a computer scientist researcher, currently doing a lot of Matlab.
A few points:
1) Are you sure Matlab is the tool of choice for what you want to do? I can think of a few alternatives (no, not Octave) - can you? i.e. how well have you researched this.
1)b) Matlab aint cheap - are you at a uni, have access to a copy/student license version?
2) As above, just do it. I learnt matlab by doing. Though then I do have good programming knowledge and mathematical background. How's your linear algebra/matrix maths? That's obviously key to a lot of matlab, and a lot of writing good matlab.
3) There are tutorials that come with matlab, webinars etc. you can view on mathworks.co.uk and follow along.
Ah, related to cost I see with the 2014a release you can now get matlab inexpensively* for home-only use, which would do if you're just trying to better yourself.
*£85 for the core thing, cheap compared to professional use!
As has been said, the best way to learn the software is to use it. Matlab is a very powerful tool when used well, and has a very broad range of functionality. The videos and webinars that Mathworks provide are all free, I understand (link [url= http://www.mathworks.co.uk/discovery/?s_cid=p-and-s ]here [/url] and go to something of interest and look under 'Getting Started').
The syntax is very loosely based on C but, like any software, it is easy enough to get used to. It sounds as if your first task is to learn how to go from command line prompts to writing scripts that you can run, and how best to 'program'. One of the great things about Matlab, like many scientific software, is there is a large user community who willingly provide their code for you to use: [url= http://www.mathworks.co.uk/matlabcentral/fileexchange/ ]File Exchange[/url]. You can always start by downloading a simple script, like "ignoreNaN" and reading through it.
I should add, depending what you mean by "computational biology", would a more statistics based software be better? Matlab is good for matrix operations (hence it's name) but, although it has expanded into lots of areas, I personally found the statistics and machine learning libraries to be far superior in R (primarily because it is open source and so research scientists are more inclined to use it but also becasue the graphical output is nicer).
would a more statistics based software be better?
This is the point I was making to the OP, have they done their research so they don't waste their time. There are other popular languages too, I could name them if it helps, or I could let the OP do some research.
Matlab is a very powerful tool [u][b]when used well[/b][/u]
This is key. You see some proper programming war-crimes in matlab. I've done some horrendous things myself.
Matlab's ease can also make it very unfriendly to debug, it tends to keep on trucking and do the wrong thing rather than error out or give a warning. Then one day you're wondering why you have an upside-down, blue, child's face in your graphs*.
*no exageration, http://www.mathworks.co.uk/matlabcentral/newsreader/view_thread/18156
I'm happiest in matlab but if I was learning now I'd do it in sci-py
Well, I've started teaching myself R for statistical work...previously used SPSS a bit. However, I have a 3 lead EMG lying round...and recently I got one of the new Lego nxt kits dirt cheap off a friend...so I had the slightly mad idea of trying to make them talk to each other. I'd quite like to make a lego bionic hand for the lolz - just because it will put a massive grin on my face. Supposedly Matlab is a good tool for programming these kits.
I figure that if I get as many programs under my belt as possible then all the better in terms of my cv.
