- You can create separate variables.
- You can switch to a cell array -- num2cell() the numeric data and then horzcat() on the cell array of strings
- You can use array2table() to convert to a table() data structure and then add the file names as a column of that.
How can I Insert a CSV filename into my array
4 次查看(过去 30 天)
显示 更早的评论
Need help with preparing data.
I'm creating an array by appending 500 csv files of daily stock data (varying rows), each with 7-columns using with code below.
How can I create an 8th column with the filename (or just part of the filename) so I can later identify which file belongs with which rows of data?
Thanks.
dname='C:\project\';
alldata=[];
files=dir([dname,'*.csv']);
for i=1:length(files);
csvdata=csvread([dname,files(i).name]);
alldata=[alldata;csvdata];
end
0 个评论
采纳的回答
Walter Roberson
2016-11-2
You cannot. csvread() only reads numeric data, so your arrays would be numeric. You cannot store character strings in numeric arrays.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!