All I want to do (initially) is read an Excel or csv file

4 visualizzazioni (ultimi 30 giorni)
Hi- I'm at the pre-novice level. Your patience is requested.
I have a csv file that has the top row containing column identifiers ( about 20 columns) and every row after that containing data.
All I want to do is read the data into Matlab. I've tried all sorts of commands but all I get is error messages. I don't want to use the import wizard--I need to learn how to write the commands.
How about a shove in the right direction?

Risposta accettata

Eric
Eric il 7 Nov 2011
Something like the following should work:
%Prompt user for filename
[fname, pname] = uigetfile('*.csv');
%Create fully-formed filename as a string
filename = fullfile(pname, fname);
%Check that file exists
assert(exist(filename,'file')==2, '%s does not exist.', filename);
%Read in the data, skipping the first row
data = csvread(filename,1,0);
Good luck,
Eric
  2 Commenti
Eric
Eric il 7 Nov 2011
Useful things for novices in this code are:
1. Use of uigetfile() to prompt user for a filename
2. Use of the fullfile() function to create path-resolved filenames
3. Use of assert() to perform error checking
Note that if your version of Matlab is a bit dated, assert() may not work. It's been in Matlab for a few years now, but I forget when it first made its appearance.
A nice complement to fullfile() is fileparts().
-Eric
Frank
Frank il 7 Nov 2011
Thank you for your help. I appreciate you coaching me with this problem.

Accedi per commentare.

Più risposte (1)

Fangjun Jiang
Fangjun Jiang il 7 Nov 2011
try d=importdata('test.csv') and check the value of d in MATLAB workspace.
  5 Commenti
Frank
Frank il 8 Nov 2011
This is the better answer. The other answer uses commands like csvread that are going to be eliminated.
Eric
Eric il 10 Nov 2011
I believe csvread has received a reprieve. In the Matlab R2010b Release Notes:
csvread and csvwrite Will Not Be Removed
The R2010a Release Notes originally stated that csvread and csvwrite would be removed in a future release. As of R2010b, there are no plans to remove these functions.

Accedi per commentare.

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by