How to read string data from a csv file?
    65 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!




