Spaces:
Running
Running
| import xarray as xr | |
| import numpy as np | |
| import pandas as pd | |
| from datetime import datetime | |
| ds_meta = xr.open_dataset(r"C:\Users\harsh\incois\dashboard\more_components\2902174_meta.nc") | |
| ds_prof = xr.open_dataset(r"C:\Users\harsh\incois\dashboard\more_components\2902174_prof.nc") | |
| def d(val): | |
| if hasattr(val, "item") and callable(val.item): | |
| try: | |
| val = val.item() | |
| except: | |
| pass | |
| if isinstance(val, bytes): | |
| return val.decode('utf-8', errors='ignore').strip() | |
| elif isinstance(val, np.ndarray) and val.dtype.kind == 'S': | |
| return ", ".join([v.decode('utf-8', errors='ignore').strip() for v in val.flat if v.decode('utf-8', errors='ignore').strip()]) | |
| elif isinstance(val, (list, np.ndarray)): | |
| return ", ".join([d(v) for v in val]) | |
| return str(val).strip() | |
| print("Maker:", d(ds_meta.PLATFORM_MAKER.values)) | |
| print("Serial:", d(ds_meta.FLOAT_SERIAL_NO.values)) | |
| print("Type:", d(ds_meta.PLATFORM_TYPE.values)) | |
| print("Trans:", d(ds_meta.TRANS_SYSTEM.values)) | |
| print("DC:", d(ds_meta.DATA_CENTRE.values)) | |
| print("Sensors:", d(ds_meta.SENSOR.values)) | |
| print("PTT:", d(ds_meta.PTT.values) if 'PTT' in ds_meta else "N/A") | |
| print("Launch date:", d(ds_meta.LAUNCH_DATE.values)) | |
| print("Project:", d(ds_meta.PROJECT_NAME.values)) | |
| print("PI:", d(ds_meta.PI_NAME.values)) | |
| print("Lat:", float(ds_meta.LAUNCH_LATITUDE.values)) | |
| cycle = int(np.nanmax(ds_prof.CYCLE_NUMBER.values)) | |
| juld = ds_prof.JULD.values | |
| last_date_np = juld[~np.isnat(juld)] | |
| last_date = pd.to_datetime(last_date_np[-1]).strftime('%d/%m/%Y %H:%M:%S') | |
| last_pres = ds_prof.PRES.values[-1] | |
| last_temp = ds_prof.TEMP.values[-1] | |
| last_psal = ds_prof.PSAL.values[-1] | |
| valid_idx = ~np.isnan(last_pres) | |
| pres_v = last_pres[valid_idx] | |
| temp_v = last_temp[valid_idx] | |
| psal_v = last_psal[valid_idx] | |
| surface_idx = np.argmin(pres_v) | |
| bottom_idx = np.argmax(pres_v) | |
| print(f"Cycle: {cycle}, Last Date: {last_date}") | |
| print(f"Surface: {pres_v[surface_idx]} dbar {temp_v[surface_idx]} C {psal_v[surface_idx]} PSU") | |
| print(f"Bottom: {pres_v[bottom_idx]} dbar {temp_v[bottom_idx]} C {psal_v[bottom_idx]} PSU") | |