How to read string data from a csv file?

65 vues (au cours des 30 derniers jours)
Kavita Navria
Kavita Navria le 1 Août 2017
Modifié(e) : CHIA HUNG MOU le 31 Déc 2023
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 commentaire
Sai Ramya
Sai Ramya le 5 Fév 2018
Modifié(e) : Sai Ramya le 5 Fév 2018
Don't mention any reading format like 'rb' ....it will read string type....use names= column names while creating a Excel sheet...

Connectez-vous pour commenter.

Réponse acceptée

KSSV
KSSV le 1 Août 2017
Use xlsread. Read about it.
  3 commentaires
KSSV
KSSV le 1 Août 2017
[num,txt,raw] = xlsread('myfile')
This read entire data.....
Kavita Navria
Kavita Navria le 1 Août 2017
Thank you sir..This is reading my data. num= N x 6 (type double, skipped 1st column), raw= N x 7(type cell, all columns), txt= N x 7(type cell, 1st column is complete while for others its just showing column headings ) How may I split date and time from 'cell' type. I am using R2013a. I tried using strsplit but its not supporting cell2str, cell2table.

Connectez-vous pour commenter.

Plus de réponses (2)

Guillaume
Guillaume le 1 Août 2017
Modifié(e) : Guillaume le 1 Août 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 commentaire
Guodong Cui
Guodong Cui le 17 Août 2018
readable is simple & useful! It works for me. Thank you!

Connectez-vous pour commenter.


Md Khaled Ben Islam
Md Khaled Ben Islam le 15 Avr 2018
For dealing with tabular CSV formatted data, readtable seems more flexible than xlsread.
  1 commentaire
CHIA HUNG MOU
CHIA HUNG MOU le 31 Déc 2023
Modifié(e) : CHIA HUNG MOU le 31 Déc 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)));

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Import from MATLAB dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by