How to write only non-NaN columns into Excel

3 views (last 30 days)
Leon
Leon on 15 Oct 2019
Edited: Leon on 16 Oct 2019
Below is my code to write these column data into an Excel spreadsheet using the writetable command:
T1 = table(Cruise, EXPOCODE, Station_no, Lon, Lat, Year, Month, Day, Time, Pressure, Depth, ...
Temperature, Temperature_flag_W, Salinity, Salinity_flag_W, CTDOXY, CTDOXY_flag_W, OXYGEN, OXYGEN_flag_W, ...
DIC, DIC_flag_W, TA, TA_flag_W, pH_insitu, pH_flag_W, pCO2_insitu, pCO2_flag_W, CO3_insitu, CO3_flag_W, ...
Silicate, Silicate_flag_W, Phosphate, Phosphate_flag_W, Nitrate, Nitrate_flag_W, ...
NitrateNitrite, NitrateNitrite_flag_W, Nitrite, Nitrite_flag_W, Ammonium, Ammonium_flag_W);
File_W = ['outputs/', app.File.Value, '.xlsx'];
writetable(T1, File_W)
The thing is that sometimes an entire column could be made up of NaNs or missing value indicators, -999. How do I write a program, so that it will only use the variables that have at least one real value into the final Excel file? If a column is composed of either NaN or -999 values, the entire column, as well as its corresponding flag column (made up of numerical number 5), should not appear in the generated Excel file.
Many thanks!

Answers (1)

Andrei Bobrov
Andrei Bobrov on 15 Oct 2019
Edited: Andrei Bobrov on 15 Oct 2019
T_in_Excel = T1(:,any(~isnan(T1{:,:})));
writetable(T_in_Excel, File_W)
  3 Comments
Leon
Leon on 16 Oct 2019
As a reminder, would you please help me with the flag column as well?
Many thanks!

Sign in to comment.

Tags

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!