How to import data with column headings?

33 Ansichten (letzte 30 Tage)
Hydro
Hydro am 24 Dez. 2017
Kommentiert: Hydro am 24 Dez. 2017
Hello all, attached is a sample of my data. I would like to import the data as a matrix, when I do so, I lose column headings. Importing data as a table will work (see attached), however, I don't want my data to be in table form. I want my data in a matrix with top row as column headings as it is in csv sheet. Any thought would be appreciated. I tried to convert the table into array (table2array) but I lose column heading again.

Akzeptierte Antwort

Image Analyst
Image Analyst am 24 Dez. 2017
This works for me:
[~, ~, data] = xlsread('data.csv')
What happened when you tried it?
  2 Kommentare
Hydro
Hydro am 24 Dez. 2017
Hello @Image Analyst.
your code gives me cell, which i dont want. i used cell2mat but didnt work as the data type is not same.
Image Analyst
Image Analyst am 24 Dez. 2017
Like Walter says in his answer, that's not possible. You can either do a cell array, like I showed you, or use a table, like you've already done. I suggest you use a table. Tables are great and you'd do yourself a favor to get used to them.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 24 Dez. 2017
In MATLAB, it is not possible to have a header on a numeric matrix. If you want to preserve the headers, you have two options:
  1. import as a cell array with each entry being in a different cell; or
  2. import as a table and use the table VariableDescriptions property to store the headers (note: the variable descriptions only show up if you use summary() or ask for them specifically.)
  1 Kommentar
Hydro
Hydro am 24 Dez. 2017
Hello Walter/Image Analyst, I agree. Actually, I am trying to construct a timetable, which I would use for further analysis. I don't use table often-so I am bit uncomfortable. I construct the timetable but importing data as vector and then adding vector one by one while constructing the time table. Since I have more column, thought there would be an easy way of doing this.
Walter! Part of the code is yours.
StartDate = datetime(2011,01,01);
EndDate = datetime(2011,12,31);
Date = (StartDate:calmonths(1):EndDate)';
Date.Format = 'MMM-yyyy';
TT=timetable(Date,RCP45_2030s_W0_Removed,RCP45_2030s_W25_Removed,RCP45_2030s_W50_Removed,RCP45_2030s_W75_Removed,RCP45_2030s_W100_Removed);

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Data Import and Analysis finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by