Convert table and obtain column values
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Collegue
am 13 Sep. 2019
Beantwortet: Steven Lord
am 18 Sep. 2019
Hello, I have this table
How can I first generate an array of string and numbers and then replace the '---' with NaN. Finally I would need to get the values of the Var4 and Var 7.
2 Kommentare
Akzeptierte Antwort
Jalaj Gambhir
am 16 Sep. 2019
Hi,
For the particular task one possible solution could be by first converting the table to cell array using table2cell. And then traversing through the structure to search for ‘- -’ and replacing it with ‘NaN’
T = cell(CellArray);
for i=1:length(CellArray)
for j= 1:length(CellArray{1})
if ~isequal(CellArray{i,j},'--')
T{i,j} = CellArray{i,j};
else
T{i,j} = NaN;
end
end
end
R = cell2table(T);
And finally access the 4th and 7th column from the table by:
R(:,[4,7])
Weitere Antworten (1)
Steven Lord
am 18 Sep. 2019
Use ismissing to locate the missing values (you can tell ismissing what it should consider as a missing value) then use the logical array output to replace the missing values with whatever value you want.
The fact that you're changing the data type (potentially for some but not all of the values of a table variable) could complicate things a bit, but if that's the case show a larger sample of your table (maybe two or three rows that have a missing value and two or three that don't) and we may be able to help you determine how to handle that situation.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Tables 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!