Virtual Research Cruise – Preparation#
The observational data#
import pangaeapy
import pandas as pd
doi = "10.1594/PANGAEA.969014"
data_frame = pangaeapy.PanDataSet(doi).data
data_frame
Event | Expedition | Station | Date/Time | Longitude | Latitude | Depth water | Press | Temp | Cond | Sal | Sigma-theta | O2 sat | DO | Chl a | pH | Elevation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.23 | 1.23 | 18.60 | 16.77 | 11.39 | 7.16 | 100.59 | 8.77 | 1.38 | 8.92 | -17.0 |
1 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.21 | 1.21 | 18.60 | 16.77 | 11.39 | 7.16 | 100.59 | 8.77 | 1.37 | 8.92 | -17.0 |
2 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.24 | 1.24 | 18.60 | 16.77 | 11.39 | 7.16 | 100.58 | 8.77 | 1.36 | 8.92 | -17.0 |
3 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.26 | 1.26 | 18.60 | 16.78 | 11.39 | 7.16 | 100.58 | 8.77 | 1.34 | 8.92 | -17.0 |
4 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.27 | 1.27 | 18.60 | 16.78 | 11.39 | 7.16 | 100.58 | 8.77 | 1.32 | 8.92 | -17.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
33553 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.03 | 21.03 | 11.94 | 25.57 | 21.37 | 16.14 | 23.29 | 2.20 | 1.35 | 8.20 | -22.0 |
33554 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.03 | 21.03 | 11.94 | 25.57 | 21.37 | 16.14 | 23.22 | 2.19 | 1.36 | 8.20 | -22.0 |
33555 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.02 | 21.02 | 11.93 | 25.57 | 21.37 | 16.14 | 22.99 | 2.17 | 1.38 | 8.20 | -22.0 |
33556 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.02 | 21.02 | 11.93 | 25.58 | 21.37 | 16.14 | 22.76 | 2.15 | 1.39 | 8.20 | -22.0 |
33557 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.05 | 21.05 | 11.93 | 25.58 | 21.37 | 16.14 | 22.90 | 2.16 | 1.39 | 8.20 | -22.0 |
33558 rows × 17 columns
Vertical aggregation#
The dataset contains high-resolution data in the vertical (every centimeter) and especially near the surface, the CTD was moved down and up again. We aggregate the data in bins of 0.5m vertical resolution in order for them to be a little more similar to ieal CTD profiles. Note that for a real scientific application using the data, we would more carefully consider each profile and possibly exclude the near-surface down-up-down movements, etc.
Vertical aggregation is done by rounding depth to full meters, then grouping all data per station and per rounded depth value and then take the .mean()
over each group. We also remove all non-numeric columns from the data, because for these columns, the .mean()
method is not defined.
data_frame
Event | Expedition | Station | Date/Time | Longitude | Latitude | Depth water | Press | Temp | Cond | Sal | Sigma-theta | O2 sat | DO | Chl a | pH | Elevation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.23 | 1.23 | 18.60 | 16.77 | 11.39 | 7.16 | 100.59 | 8.77 | 1.38 | 8.92 | -17.0 |
1 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.21 | 1.21 | 18.60 | 16.77 | 11.39 | 7.16 | 100.59 | 8.77 | 1.37 | 8.92 | -17.0 |
2 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.24 | 1.24 | 18.60 | 16.77 | 11.39 | 7.16 | 100.58 | 8.77 | 1.36 | 8.92 | -17.0 |
3 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.26 | 1.26 | 18.60 | 16.78 | 11.39 | 7.16 | 100.58 | 8.77 | 1.34 | 8.92 | -17.0 |
4 | AL540_1-1 | AL540 | 1-1 | 2020-07-21 07:04:52 | 11.8264 | 54.2086 | 1.27 | 1.27 | 18.60 | 16.78 | 11.39 | 7.16 | 100.58 | 8.77 | 1.32 | 8.92 | -17.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
33553 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.03 | 21.03 | 11.94 | 25.57 | 21.37 | 16.14 | 23.29 | 2.20 | 1.35 | 8.20 | -22.0 |
33554 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.03 | 21.03 | 11.94 | 25.57 | 21.37 | 16.14 | 23.22 | 2.19 | 1.36 | 8.20 | -22.0 |
33555 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.02 | 21.02 | 11.93 | 25.57 | 21.37 | 16.14 | 22.99 | 2.17 | 1.38 | 8.20 | -22.0 |
33556 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.02 | 21.02 | 11.93 | 25.58 | 21.37 | 16.14 | 22.76 | 2.15 | 1.39 | 8.20 | -22.0 |
33557 | AL540_43-1 | AL540 | 43-1 | 2020-07-29 10:06:27 | 10.1560 | 54.6299 | 21.05 | 21.05 | 11.93 | 25.58 | 21.37 | 16.14 | 22.90 | 2.16 | 1.39 | 8.20 | -22.0 |
33558 rows × 17 columns
data_frame_cleaned = data_frame
data_frame_cleaned["Station"] = data_frame_cleaned.Station.apply(lambda s: f'{int(s.split("-")[0]):02d}-{s.split("-")[-1]}')
data_frame_cleaned["Event"] = data_frame_cleaned.apply(lambda r: r["Expedition"] + "_" + r["Station"], axis=1)
data_frame_cleaned = data_frame_cleaned.drop(columns=["Expedition", "Station"])
data_frame_cleaned = data_frame_cleaned.assign(**{"Depth water": data_frame_cleaned["Depth water"].round()})
data_frame_cleaned = data_frame_cleaned.groupby(["Event", "Depth water"]).mean()
data_frame_cleaned = data_frame_cleaned.reset_index()
data_frame_cleaned = data_frame_cleaned.where(data_frame_cleaned["Depth water"] < 300).dropna()
data_frame_cleaned = data_frame_cleaned.sort_values(by="Event")
data_frame_cleaned
Event | Depth water | Date/Time | Longitude | Latitude | Press | Temp | Cond | Sal | Sigma-theta | O2 sat | DO | Chl a | pH | Elevation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | AL540_01-1 | 1.0 | 2020-07-21 07:04:52.000000000 | 11.826400 | 54.2086 | 1.350952 | 18.600952 | 16.771905 | 11.390000 | 7.160000 | 100.659524 | 8.774762 | 1.338571 | 8.939524 | -17.0 |
19 | AL540_01-1 | 20.0 | 2020-07-21 07:05:52.000000000 | 11.826400 | 54.2086 | 19.500000 | 13.590000 | 22.080000 | 17.420000 | 12.810000 | 50.230000 | 4.680000 | 5.020000 | 8.500000 | -17.0 |
18 | AL540_01-1 | 19.0 | 2020-07-21 07:05:48.730769152 | 11.826400 | 54.2086 | 18.968654 | 14.886154 | 22.098077 | 16.863846 | 12.146346 | 75.270000 | 6.844038 | 4.965192 | 8.654615 | -17.0 |
17 | AL540_01-1 | 18.0 | 2020-07-21 07:05:43.111111168 | 11.826400 | 54.2086 | 17.970889 | 15.259778 | 21.524444 | 16.230444 | 11.586889 | 68.726667 | 6.228444 | 3.704667 | 8.599556 | -17.0 |
16 | AL540_01-1 | 17.0 | 2020-07-21 07:05:37.900000000 | 11.826400 | 54.2086 | 16.974600 | 15.315400 | 21.332200 | 16.049000 | 11.433400 | 68.869000 | 6.241000 | 4.382800 | 8.608200 | -17.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1448 | AL540_43-1 | 2.0 | 2020-07-29 10:05:47.000000000 | 10.155900 | 54.6300 | 1.924783 | 17.622174 | 20.308696 | 14.366957 | 9.626087 | 94.075652 | 8.214783 | 3.724348 | 9.083043 | -22.0 |
1447 | AL540_43-1 | 1.0 | 2020-07-29 10:05:39.528735488 | 10.155900 | 54.6300 | 1.205517 | 17.628046 | 20.286782 | 14.345632 | 9.604828 | 93.893678 | 8.199540 | 2.949770 | 9.080000 | -22.0 |
1466 | AL540_43-1 | 20.0 | 2020-07-29 10:06:19.954545408 | 10.155941 | 54.6299 | 20.055152 | 11.850000 | 25.490455 | 21.344545 | 16.126364 | 23.656818 | 2.233333 | 2.313485 | 8.201212 | -22.0 |
1456 | AL540_43-1 | 10.0 | 2020-07-29 10:06:02.000000000 | 10.156000 | 54.6299 | 9.984375 | 15.162500 | 22.103750 | 16.755625 | 11.971250 | 76.328125 | 6.903750 | 21.375625 | 8.797500 | -22.0 |
1467 | AL540_43-1 | 21.0 | 2020-07-29 10:06:26.444444416 | 10.155989 | 54.6299 | 20.798000 | 11.940667 | 25.568667 | 21.361556 | 16.129333 | 23.675111 | 2.231333 | 1.394889 | 8.191333 | -22.0 |
1467 rows × 15 columns
_data_set = data_frame_cleaned.set_index(["Event", "Depth water"]).to_xarray()
_data_set = _data_set.assign(**{
"Latitude": _data_set.Latitude.isel({"Depth water": 0}),
"Longitude": _data_set.Longitude.isel({"Depth water": 0}),
"Date/Time": _data_set["Date/Time"].isel({"Depth water": 0}),
})
data_frame_cleaned = _data_set.to_dataframe().reset_index().dropna()
data_frame_cleaned
Event | Depth water | Date/Time | Longitude | Latitude | Press | Temp | Cond | Sal | Sigma-theta | O2 sat | DO | Chl a | pH | Elevation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | AL540_01-1 | 1.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 1.350952 | 18.600952 | 16.771905 | 11.390000 | 7.160000 | 100.659524 | 8.774762 | 1.338571 | 8.939524 | -17.0 |
1 | AL540_01-1 | 2.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 1.829722 | 18.600000 | 16.768056 | 11.388333 | 7.160000 | 100.531667 | 8.763333 | 1.364444 | 8.956111 | -17.0 |
2 | AL540_01-1 | 3.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 2.814583 | 18.600000 | 16.764167 | 11.387500 | 7.160000 | 100.370833 | 8.750000 | 1.485000 | 8.980833 | -17.0 |
3 | AL540_01-1 | 4.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 4.075714 | 18.600000 | 16.760000 | 11.380000 | 7.160000 | 100.629286 | 8.772143 | 1.779286 | 8.982143 | -17.0 |
4 | AL540_01-1 | 5.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 4.921905 | 18.600000 | 16.760000 | 11.380000 | 7.169524 | 100.776190 | 8.785714 | 2.117143 | 8.980000 | -17.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
3336 | AL540_43-1 | 17.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 17.012143 | 11.817143 | 25.345000 | 21.230714 | 16.030000 | 27.436429 | 2.594286 | 3.099286 | 8.242857 | -22.0 |
3337 | AL540_43-1 | 18.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 18.022857 | 11.823571 | 25.383571 | 21.260714 | 16.057143 | 25.037143 | 2.367857 | 2.743571 | 8.225714 | -22.0 |
3338 | AL540_43-1 | 19.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 18.993333 | 11.768000 | 25.382000 | 21.292667 | 16.092667 | 24.406667 | 2.309333 | 2.981333 | 8.210000 | -22.0 |
3339 | AL540_43-1 | 20.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 20.055152 | 11.850000 | 25.490455 | 21.344545 | 16.126364 | 23.656818 | 2.233333 | 2.313485 | 8.201212 | -22.0 |
3340 | AL540_43-1 | 21.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 20.798000 | 11.940667 | 25.568667 | 21.361556 | 16.129333 | 23.675111 | 2.231333 | 1.394889 | 8.191333 | -22.0 |
1029 rows × 15 columns
data_frame_cleaned = data_frame_cleaned.sort_values(by="Date/Time")
data_frame_cleaned
Event | Depth water | Date/Time | Longitude | Latitude | Press | Temp | Cond | Sal | Sigma-theta | O2 sat | DO | Chl a | pH | Elevation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | AL540_01-1 | 1.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 1.350952 | 18.600952 | 16.771905 | 11.390000 | 7.160000 | 100.659524 | 8.774762 | 1.338571 | 8.939524 | -17.0 |
19 | AL540_01-1 | 20.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 19.500000 | 13.590000 | 22.080000 | 17.420000 | 12.810000 | 50.230000 | 4.680000 | 5.020000 | 8.500000 | -17.0 |
18 | AL540_01-1 | 19.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 18.968654 | 14.886154 | 22.098077 | 16.863846 | 12.146346 | 75.270000 | 6.844038 | 4.965192 | 8.654615 | -17.0 |
17 | AL540_01-1 | 18.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 17.970889 | 15.259778 | 21.524444 | 16.230444 | 11.586889 | 68.726667 | 6.228444 | 3.704667 | 8.599556 | -17.0 |
16 | AL540_01-1 | 17.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 16.974600 | 15.315400 | 21.332200 | 16.049000 | 11.433400 | 68.869000 | 6.241000 | 4.382800 | 8.608200 | -17.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
3321 | AL540_43-1 | 2.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 1.924783 | 17.622174 | 20.308696 | 14.366957 | 9.626087 | 94.075652 | 8.214783 | 3.724348 | 9.083043 | -22.0 |
3320 | AL540_43-1 | 1.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 1.205517 | 17.628046 | 20.286782 | 14.345632 | 9.604828 | 93.893678 | 8.199540 | 2.949770 | 9.080000 | -22.0 |
3339 | AL540_43-1 | 20.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 20.055152 | 11.850000 | 25.490455 | 21.344545 | 16.126364 | 23.656818 | 2.233333 | 2.313485 | 8.201212 | -22.0 |
3329 | AL540_43-1 | 10.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 9.984375 | 15.162500 | 22.103750 | 16.755625 | 11.971250 | 76.328125 | 6.903750 | 21.375625 | 8.797500 | -22.0 |
3340 | AL540_43-1 | 21.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 20.798000 | 11.940667 | 25.568667 | 21.361556 | 16.129333 | 23.675111 | 2.231333 | 1.394889 | 8.191333 | -22.0 |
1029 rows × 15 columns
data_frame_cleaned.to_csv("/home/jovyan/shared_materials/projects_data/02_virtual_research_cruise_AL540_CTD_cleaned.csv", index=False)
data_frame = pd.read_csv("/home/jovyan/shared_materials/projects_data/02_virtual_research_cruise_AL540_CTD_cleaned.csv", parse_dates=True)
data_frame
Event | Depth water | Date/Time | Longitude | Latitude | Press | Temp | Cond | Sal | Sigma-theta | O2 sat | DO | Chl a | pH | Elevation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | AL540_01-1 | 1.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 1.350952 | 18.600952 | 16.771905 | 11.390000 | 7.160000 | 100.659524 | 8.774762 | 1.338571 | 8.939524 | -17.0 |
1 | AL540_01-1 | 20.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 19.500000 | 13.590000 | 22.080000 | 17.420000 | 12.810000 | 50.230000 | 4.680000 | 5.020000 | 8.500000 | -17.0 |
2 | AL540_01-1 | 19.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 18.968654 | 14.886154 | 22.098077 | 16.863846 | 12.146346 | 75.270000 | 6.844038 | 4.965192 | 8.654615 | -17.0 |
3 | AL540_01-1 | 18.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 17.970889 | 15.259778 | 21.524444 | 16.230444 | 11.586889 | 68.726667 | 6.228444 | 3.704667 | 8.599556 | -17.0 |
4 | AL540_01-1 | 17.0 | 2020-07-21 07:04:52.000000000 | 11.8264 | 54.2086 | 16.974600 | 15.315400 | 21.332200 | 16.049000 | 11.433400 | 68.869000 | 6.241000 | 4.382800 | 8.608200 | -17.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1024 | AL540_43-1 | 2.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 1.924783 | 17.622174 | 20.308696 | 14.366957 | 9.626087 | 94.075652 | 8.214783 | 3.724348 | 9.083043 | -22.0 |
1025 | AL540_43-1 | 1.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 1.205517 | 17.628046 | 20.286782 | 14.345632 | 9.604828 | 93.893678 | 8.199540 | 2.949770 | 9.080000 | -22.0 |
1026 | AL540_43-1 | 20.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 20.055152 | 11.850000 | 25.490455 | 21.344545 | 16.126364 | 23.656818 | 2.233333 | 2.313485 | 8.201212 | -22.0 |
1027 | AL540_43-1 | 10.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 9.984375 | 15.162500 | 22.103750 | 16.755625 | 11.971250 | 76.328125 | 6.903750 | 21.375625 | 8.797500 | -22.0 |
1028 | AL540_43-1 | 21.0 | 2020-07-29 10:05:39.528735488 | 10.1559 | 54.6300 | 20.798000 | 11.940667 | 25.568667 | 21.361556 | 16.129333 | 23.675111 | 2.231333 | 1.394889 | 8.191333 | -22.0 |
1029 rows × 15 columns
The simulation data#
import copernicusmarine
# copernicusmarine.login()
/miniconda3/envs/jupyter/lib/python3.12/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html
from .autonotebook import tqdm as notebook_tqdm
ds_sim = copernicusmarine.open_dataset(
dataset_id="cmems_mod_bal_phy_my_P1D-m",
service="arco-geo-series",
)
ds_sim
INFO - 2025-06-30T14:51:56Z - Selected dataset version: "202303"
INFO - 2025-06-30T14:51:56Z - Selected dataset part: "default"
<xarray.Dataset> Size: 6TB Dimensions: (depth: 56, latitude: 774, longitude: 763, time: 11322) Coordinates: * depth (depth) float32 224B 0.5016 1.516 2.548 ... 663.9 688.0 712.0 * latitude (latitude) float32 3kB 53.01 53.02 53.04 ... 65.86 65.87 65.89 * longitude (longitude) float32 3kB 9.042 9.069 9.097 ... 30.15 30.18 30.21 * time (time) datetime64[ns] 91kB 1993-01-01 1993-01-02 ... 2023-12-31 Data variables: bottomT (time, latitude, longitude) float32 27GB dask.array<chunksize=(2, 774, 763), meta=np.ndarray> mlotst (time, latitude, longitude) float32 27GB dask.array<chunksize=(2, 774, 763), meta=np.ndarray> siconc (time, latitude, longitude) float32 27GB dask.array<chunksize=(2, 774, 763), meta=np.ndarray> sithick (time, latitude, longitude) float32 27GB dask.array<chunksize=(2, 774, 763), meta=np.ndarray> sla (time, latitude, longitude) float32 27GB dask.array<chunksize=(2, 774, 763), meta=np.ndarray> so (time, depth, latitude, longitude) float32 1TB dask.array<chunksize=(2, 56, 774, 763), meta=np.ndarray> sob (time, latitude, longitude) float32 27GB dask.array<chunksize=(2, 774, 763), meta=np.ndarray> thetao (time, depth, latitude, longitude) float32 1TB dask.array<chunksize=(2, 56, 774, 763), meta=np.ndarray> uo (time, depth, latitude, longitude) float32 1TB dask.array<chunksize=(2, 56, 774, 763), meta=np.ndarray> vo (time, depth, latitude, longitude) float32 1TB dask.array<chunksize=(2, 56, 774, 763), meta=np.ndarray> Attributes: comment: Data on cropped native product grid. Horizontal velocities ... contact: servicedesk.cmems@mercator-ocean.eu Conventions: CF-1.0 title: CMEMS NEMO daily integrated model fields source: CMEMS BAL MFC NEMO model output converted to NetCDF references: https://marine.copernicus.eu/ institution: Baltic MFC, PU Danish Meteorological Institute
ds_sim_cropped = ds_sim.sel(
longitude=slice(9, 17),
latitude=slice(54, 56),
time=slice("2020-07-21", "2020-07-30"),
)
ds_sim_cropped
<xarray.Dataset> Size: 317MB Dimensions: (depth: 56, latitude: 120, longitude: 287, time: 10) Coordinates: * depth (depth) float32 224B 0.5016 1.516 2.548 ... 663.9 688.0 712.0 * latitude (latitude) float32 480B 54.01 54.02 54.04 ... 55.96 55.97 55.99 * longitude (longitude) float32 1kB 9.042 9.069 9.097 ... 16.93 16.96 16.99 * time (time) datetime64[ns] 80B 2020-07-21 2020-07-22 ... 2020-07-30 Data variables: bottomT (time, latitude, longitude) float32 1MB dask.array<chunksize=(1, 120, 287), meta=np.ndarray> mlotst (time, latitude, longitude) float32 1MB dask.array<chunksize=(1, 120, 287), meta=np.ndarray> siconc (time, latitude, longitude) float32 1MB dask.array<chunksize=(1, 120, 287), meta=np.ndarray> sithick (time, latitude, longitude) float32 1MB dask.array<chunksize=(1, 120, 287), meta=np.ndarray> sla (time, latitude, longitude) float32 1MB dask.array<chunksize=(1, 120, 287), meta=np.ndarray> so (time, depth, latitude, longitude) float32 77MB dask.array<chunksize=(1, 56, 120, 287), meta=np.ndarray> sob (time, latitude, longitude) float32 1MB dask.array<chunksize=(1, 120, 287), meta=np.ndarray> thetao (time, depth, latitude, longitude) float32 77MB dask.array<chunksize=(1, 56, 120, 287), meta=np.ndarray> uo (time, depth, latitude, longitude) float32 77MB dask.array<chunksize=(1, 56, 120, 287), meta=np.ndarray> vo (time, depth, latitude, longitude) float32 77MB dask.array<chunksize=(1, 56, 120, 287), meta=np.ndarray> Attributes: comment: Data on cropped native product grid. Horizontal velocities ... contact: servicedesk.cmems@mercator-ocean.eu Conventions: CF-1.0 title: CMEMS NEMO daily integrated model fields source: CMEMS BAL MFC NEMO model output converted to NetCDF references: https://marine.copernicus.eu/ institution: Baltic MFC, PU Danish Meteorological Institute
ds_sim_cropped = ds_sim_cropped.load()
ds_sim_cropped
<xarray.Dataset> Size: 317MB Dimensions: (depth: 56, latitude: 120, longitude: 287, time: 10) Coordinates: * depth (depth) float32 224B 0.5016 1.516 2.548 ... 663.9 688.0 712.0 * latitude (latitude) float32 480B 54.01 54.02 54.04 ... 55.96 55.97 55.99 * longitude (longitude) float32 1kB 9.042 9.069 9.097 ... 16.93 16.96 16.99 * time (time) datetime64[ns] 80B 2020-07-21 2020-07-22 ... 2020-07-30 Data variables: bottomT (time, latitude, longitude) float32 1MB nan nan ... 7.584 8.227 mlotst (time, latitude, longitude) float32 1MB nan nan ... 16.5 16.62 siconc (time, latitude, longitude) float32 1MB nan nan nan ... 0.0 0.0 sithick (time, latitude, longitude) float32 1MB nan nan nan ... 0.0 0.0 sla (time, latitude, longitude) float32 1MB nan nan ... 0.1514 0.1531 so (time, depth, latitude, longitude) float32 77MB nan nan ... nan sob (time, latitude, longitude) float32 1MB nan nan ... 8.04 8.009 thetao (time, depth, latitude, longitude) float32 77MB nan nan ... nan uo (time, depth, latitude, longitude) float32 77MB nan nan ... nan vo (time, depth, latitude, longitude) float32 77MB nan nan ... nan Attributes: comment: Data on cropped native product grid. Horizontal velocities ... contact: servicedesk.cmems@mercator-ocean.eu Conventions: CF-1.0 title: CMEMS NEMO daily integrated model fields source: CMEMS BAL MFC NEMO model output converted to NetCDF references: https://marine.copernicus.eu/ institution: Baltic MFC, PU Danish Meteorological Institute
ds_sim_cropped.drop_encoding().to_netcdf(
"/home/jovyan/shared_materials/projects_data/02_virtual_research_cruise_cmems_mod_bal_phy_my_P1D-m_cropped.nc"
)