How to read string data from a csv file?
58 views (last 30 days)
Show older comments
Hello.. I have a csv data file with 6columns. First column is string type and others are numeric. I don't know why I cant read data with 'csvread'. I saved csv file as xls then used xlsread. It can read my data but it's not reading 1st column may be because its a string. 1st column is like yyyy-mm-ddThh:mm:ss Is there any way to read 1st column and then split it into two columns, one for date and other for time? how to read this data using csvread as I don want to convert it to xls. Thanks
1 Comment
Accepted Answer
More Answers (2)
Guillaume
on 1 Aug 2017
Edited: Guillaume
on 1 Aug 2017
Even simpler than xlsread is to use readtable which should be able to figure out the file format on its own.
data = readtable('yourfile.csv');
In particular, readtable should automatically detect that the first column is a datetime and decode it properly. If not it's trivial to convert it:
data(:, 1) = datetime(data(:, 1), 'InputFormat', 'yyyy-MM-ddTHH:mm:ss'); %or similar
1 Comment
Md Khaled Ben Islam
on 15 Apr 2018
1 Comment
CHIA HUNG MOU
on 31 Dec 2023
Edited: CHIA HUNG MOU
on 31 Dec 2023
Yes. readtable is good. For your reference:
% data: https://chris.userweb.mwn.de/book/pizza_delivery.csv
fn = fullfile('pizza_delivery.csv');
data = readtable(fn);
% time
y = cell2mat(table2cell(data(:, 3)));
% interception
x1 = ones(1, size(y,1));
% binary variable (so called dummy variable)
x2 = zeros(1, size(y,1));
x2_ = (table2cell(data(:, 4)));
See Also
Categories
Find more on Data Import from MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!