How to save output of variable in csv file?

692 vues (au cours des 30 derniers jours)
tejasvee
tejasvee le 17 Juin 2017
Commenté : Star Strider le 4 Mai 2023
I have MATLAB code and output is saved in variable and i want to save in csv file. And there is no example of that in doc of MATLAB. I have attached the code and variable name is"TY".

Réponse acceptée

Star Strider
Star Strider le 17 Juin 2017
See the documentation on the csvwrite (link) function. It was introduced prior to R2006a, so you should have access to it. There are similar functions linked to in and at the end of that documentation page.
  1 commentaire
Star Strider
Star Strider le 4 Mai 2023
The writematrix function was introduced in R2019a, two years after I posted this.

Connectez-vous pour commenter.

Plus de réponses (2)

Md. Al-Imran Abir
Md. Al-Imran Abir le 4 Juil 2022
At present, csvwrite (documentation) is not recommended. If one has a newer version of MATLAB (2019a or later), writematrix (documentation) is the preferred way.

Erika Joh
Erika Joh le 26 Avr 2019
Modifié(e) : Erika Joh le 26 Avr 2019
Thanks! Would I just call on the function several times then, like:
csvwrite('filename.csv',variable1,0,1)
csvwrite('filename.csv',variable2,0,2)
etc?
  4 commentaires
Shekhar Vats
Shekhar Vats le 28 Avr 2021
This is a stupid bruteforce method, if you find a better one please share. I have seen people just pointing to the default matlab way where you can save one variable. What if you have 1000's of variable that will take all the time. I hope someone will share a better code
for downloading xlscol function
clear all; close all; clc;
current_dir = pwd;
[Filename, Pathname] = uigetfile('Select File'); % select file
file_to_be_loaded = [Pathname '\' Filename]; % get file path and name
load(file_to_be_loaded); % load file
Filename
clear Pathname file_to_be_loaded current_dir
vars=who;
sheet = 1;
for n=1:size(vars)
n
xlRange = [xlscol(n) '1'];
xl_range = [xlscol(n) '2'];
xlswrite([Filename(1:end-4) '.xlsx'],cell(vars(n)),sheet, xlRange)
xlswrite([Filename(1:end-4) '.xlsx'],eval(char(vars(n))),sheet, xl_range)
end
cillian thomas
cillian thomas le 4 Mai 2023
A better way is to put the variables in a matrix, and export the data. See this thread:
xout1 = [1 2 3]
yout1 = [4 5 6]
m = [xout1,yout1]
csvwrite('filename.csv',m)

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by