How to import data from MATLAB into Excel, and then have Excel save the data
Ältere Kommentare anzeigen
Hi everyone,
I have extracted some features from images and they can be seen in the command window. There are too many blob information which needs to be saved in excel file from MATLAB command window.
Could anyone please help me how to save them in a excel file or text file automatically so that it can be used later on rather than running the process to see the values over and over unless I save them manually by copying and pasting them in text file / excel file.
Any help will be appreciated.
Antworten (3)
Julia
am 12 Feb. 2015
Hi,
there exists the command
xlswrite()
Does this suit your purpose?
4 Kommentare
Vito
am 12 Feb. 2015
With dynamic update of data, you can use save (file) .... But I often use the database MSSQL.
fastinsert (conn, 'tablename', colnames, exdata)
These data can be easily imported into Excel.
Tania
am 13 Feb. 2015
Vito
am 15 Feb. 2015
The images do not, but the problem is clear. Excel is not suitable. As an example, monitoring Facebook.
% insert data
exdata = []; % dataset
.....
conn = database('facebook', '', '');
colnames = {'a', 'd'}
fastinsert(conn, 'RELATION', colnames, exdata)
......................
% get data
conn = database('facebook', '', '');
curs = exec(conn,['SELECT * From RELATION']);
curs=fetch(curs);
Set=curs.Data;
Create your database and get or set data.
Image Analyst
am 12 Feb. 2015
Bearbeitet: Image Analyst
am 12 Feb. 2015
0 Stimmen
See my Excel demo. It uses ActiveX and will be a lot faster than xlswrite if you need to make multiple writes.
Another option is you could put your data into a table (if you have R2013b or later) and then call writetable().
10 Kommentare
Vito
am 13 Feb. 2015
SQL allows update or add only the required data. For large volumes is the only option.
Tania
am 13 Feb. 2015
Image Analyst
am 13 Feb. 2015
Did you see the comments at the beginning of the file:
% Uses xlswrite1, available from the File Exchange
% http://www.mathworks.com/matlabcentral/fileexchange/10465-xlswrite1
Download that and it will work.
Image Analyst
am 13 Feb. 2015
You have to create an array of data from your measurements structure array.
measurements = regionprops(labeledImage, 'FilledArea', 'EulerNumber', 'Extent', 'AspectRatio');
allFilledAreas = [measurements.FilledArea];
allEulerNumbers = [measurements.EulerNumber];
allExtents = [measurements.Extent];
allAspectRatios = [measurements.AspectRatio];
myData = [allFilledAreas, allEulerNumbers, allExtents, allAspectRatios];
xlswrite1(...........
Image Analyst
am 15 Feb. 2015
You say that ultimately you want this "so that it can be used later on, rather than running the process to see the values" . If you want to save these variables simply to recall them later, then it's best you just use save() instead of Excel:
measurements = regionprops(labeledImage, 'FilledArea', 'EulerNumber', 'Extent', 'AspectRatio');
save(matFullFileName, measurements);
Then to recall, use load:
s = load(matFullFileName);
measurements = s.measurements;
Again, Excel would just complicate things.
Image Analyst
am 15 Feb. 2015
Did you see where I said to not use Excel? It doesn't seem best for what you want to do.
Tania
am 19 Feb. 2015
bim
am 1 Jan. 2023
@Image Analyst: I packed the functionality for reading in a simple static class so it can be easily reused.
It will only read contiguous tables and for now only reads tables with columns with a single digit name (A-Z).
I have not benchmarked it against importdata yet.
Image Analyst
am 1 Jan. 2023
OK, that's good. I also have a static class with a ton of functions for doing stuff in Excel, like formatting cells, etc. It's attached.
Md Iqbal
am 16 Okt. 2020
0 Stimmen
How to save data from matlab GUI edit text box to excel
1 Kommentar
Image Analyst
am 16 Okt. 2020
From GUIDE, App Designer, or inputdlg()?
Have you tried writematrix() or writecell()?
Kategorien
Mehr zu Spreadsheets finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
