why does matlab seperate my column of identifiers and row of column headers from the data? what function puts them back together?i have created a new column of data that needs to be put together with the original data, how do i attach that?

4 visualizaciones (últimos 30 días)
what function will recombine my dataset when matlab automatically seperates my id column and row headers from the data
  2 comentarios
Walter Roberson
Walter Roberson el 14 de Mayo de 2013
Editada: Walter Roberson el 14 de Mayo de 2013
How are you reading the data in? Are your headers text strings? Is your data numeric ? When you say you need to put them back together, then are you wanting to produce a text array or a numeric array?
john borsellino
john borsellino el 15 de Mayo de 2013
i can import the data from an excel file or a tab delimited file, matlab seperates the identifier column(made up of characters..ex. 1456710_at) and the row of column headers(made up of characters...ex. mrl control 1) from the data(made up of numbers only)..i get 1 variable, "data" and a 2nd variable "text data" both are different sizes...i have created a new column from the "data" and i want to put the "text data" and the "data" and the new column of data together and export into excel...so "what function will recombine my 'data' and 'text data' variables with my new column...thankyou for your time and input...i think we want to call it a "dataset" in matlab jargon

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 16 de Mayo de 2013
Use the three-output version of xlsread(), and use the third output, "raw". It will reflect what is in the original file.
The first output, the numeric data matrix, will automatically have initial text rows removed (under the assumption that they are column headers) and will also have initial text columns removed. I think it also has trailing rows and columns that are entirely NaN removed. This is because one of the most common operations on an excel file is to work just on the numeric portion, as a numeric array. Numeric arrays cannot have strings in them.
The third output, "raw", will be a cell array, not a numeric array. And that does mean that if you want to extract the numeric subset of it, you are going to have to convert that subset to a numeric array (cell2mat()) if that is the form you want to operate on.
When you go to write out the data, you will be needing a cell array, if you want to have both numeric values and strings.
  2 comentarios
Image Analyst
Image Analyst el 16 de Mayo de 2013
Editada: Image Analyst el 16 de Mayo de 2013
Rereading your question, I think Walter is right - you want the third output: the "raw" cell array. If you use the first two only, they are not aligned since each one starts with the upper left (1,1) at whatever cell in Excel that type of data started. For example your text cells may start at cell A1 ((1,1) of the test cell array = cell A1 of the Excel worksheet), while your numbers cell (1,1) will be cell A2, not A1 (if your numbers start under a row of text column headers).
john borsellino
john borsellino el 16 de Mayo de 2013
thankyou guys, i will study up on "cell arrays", thanks for explaining matlab a little bit for me..i have my work cut out for me..(groan)

Iniciar sesión para comentar.

Más respuestas (1)

Image Analyst
Image Analyst el 15 de Mayo de 2013
Does it look all separated when you open it up in Excel? If so, then you wrote out the workbook using strings in xlswrite() instead of cells. If the string is inside a cell, then the whole string will be in one Excel cell. If you just used xlswrite to write out strings, then it will put each character into its own cell in Excel. So tell me (1) did you write out the workbook with xlswrite(), and if so, (2) do you have one character per Excel cell?
  4 comentarios
john borsellino
john borsellino el 16 de Mayo de 2013
sorry, but i cannot let the data into a public forum...thanks for the excel link info, though. i need to make sure my 'excel link' is working properly, and i will study on those functions, thanks for your time and input

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by