How do I index my data according to the years #7412
Replies: 4 comments 22 replies
-
this sounds like a present_eu10.groupby("Time.year") Does that help? If not, can you give a bit more context on the datasets and what you're doing with the extracted groups? |
Beta Was this translation helpful? Give feedback.
-
Can you provide the output from: and
|
Beta Was this translation helpful? Give feedback.
-
If I understand correctly, what you want to do is
Breaking the task up this way makes the code very easy to read and understand: wind_speed = np.sqrt(present_eu10["EU10"] ** 2 + present_ev["EV10"] ** 2)
maximum_per_year = wind_speed.groupby("Time.year").max()
n_exceeded = (wind_speed > threshold).groupby("Time.year").sum() if |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I have this dataset. I want to calculate the wind speed for each year. The data is from 2000 to 2013. I can calculate the wind speed.
Is there any a more efficient way that I can index my dataset. The code I have right now I have to rewrite the indexing part for each indvidivual year manual. Is there a way better way I can do the indexing and break the data into individual years?
opens all the netcdf4 files containing eu10 and ev10
#present climate data
present_eu10 = xr.open_mfdataset('/chinook2/wgallus/climate_output/EU10.nc')
present_ev10 = xr.open_mfdataset('/chinook2/wgallus/climate_output/EV10.nc')
#future climate data
future_eu10 = xr.open_mfdataset('/chinook2/wgallus/climate_output_future/PGW_EU10.nc')
future_ev10= xr.open_mfdataset('/chinook2/wgallus/climate_output_future/PGW_EV10.nc')
Indexing the data according to the different years.
year2000eu = present_eu10['EU10'].isel(Time = slice(0, 2208))
year2000ev = present_ev10['EV10'].isel(Time = slice(0, 2208))
future2000eu = future_eu10['EU10'].isel(Time = slice(0, 2208))
future2000ev = future_ev10['EV10'].isel(Time = slice(0, 2208))
ds1_2001 = present_eu10['EU10'].isel(Time = slice(2208, 10968))
ds2_2001 = present_ev10['EV10'].isel(Time = slice(2208, 10968))
ds3_2001 = future_eu10['EU10'].isel(Time = slice(2208, 10968))
ds4_2001 = future_ev10['EV10'].isel(Time = slice(2208, 10968))
ds1_2002 = present_eu10['EU10'].isel(Time = slice(10968, 19728))
ds2_2002 = present_ev10['EV10'].isel(Time = slice(10968, 19728))
ds3_2002 = future_eu10['EU10'].isel(Time = slice( 10968, 19728))
ds4_2002 = future_ev10['EV10'].isel(Time = slice( 10968, 19728))
ds1_2003 = present_eu10['EU10'].isel(Time = slice(19728, 28488))
ds2_2003 = present_ev10['EV10'].isel(Time = slice(19728, 28488))
ds3_2003 = future_eu10['EU10'].isel(Time = slice(19728,28488))
ds4_2003 = future_ev10['EV10'].isel(Time = slice(19728,28488))
ds1_2004 = present_eu10['EU10'].isel(Time = slice(28488, 37272))
ds2_2004 = present_ev10['EV10'].isel(Time = slice(28488, 37272))
ds3_2004 = future_eu10['EU10'].isel(Time = slice(28488, 37272))
ds4_2004 = future_ev10['EV10'].isel(Time = slice(28488, 37272))
ds1_2005 = present_eu10['EU10'].sel(Time = "2005")
ds2_2005 = present_ev10['EV10'].sel(Time = "2005")
ds3_2005 = future_eu10['EU10'].sel(Time = "2005")
ds4_2005 = future_ev10['EV10'].sel(Time = "2005")
ds1_2006 = present_eu10['EU10'].sel(Time = "2006")
ds2_2006 = present_ev10['EV10'].sel(Time = "2006")
ds3_2006 = future_eu10['EU10'].sel(Time = "2006")
ds4_2006 = future_ev10['EV10'].sel(Time = "2006")
ds1_2007 = present_eu10['EU10'].sel(Time = "2007")
ds2_2007 = present_ev10['EV10'].sel(Time = "2007")
ds3_2007 = future_eu10['EU10'].sel(Time = "2007")
ds4_2007 = future_ev10['EV10'].sel(Time = "2007")
ds1_2008 = present_eu10['EU10'].sel(Time = "2008")
ds2_2008 = present_ev10['EV10'].sel(Time = "2008")
ds3_2008 = future_eu10['EU10'].sel(Time = "2008")
ds4_2008 = future_ev10['EV10'].sel(Time = "2008")
ds1_2009 = present_eu10['EU10'].sel(Time = "2009")
ds2_2009 = present_ev10['EV10'].sel(Time = "2009")
ds3_2009 = future_eu10['EU10'].sel(Time = "2009")
ds4_2009 = future_ev10['EV10'].sel(Time = "2009")
ds1_2010 = present_eu10['EU10'].sel(Time = "2010")
ds2_2010 = present_ev10['EV10'].sel(Time = "2010")
ds3_2010 = future_eu10['EU10'].sel(Time = "2010")
ds4_2010 = future_ev10['EV10'].sel(Time = "2010")
ds1_2011 = present_eu10['EU10'].sel(Time = "2011")
ds2_2011 = present_ev10['EV10'].sel(Time = "2011")
ds3_2011 = future_eu10['EU10'].sel(Time = "2011")
ds4_2011 = future_ev10['EV10'].sel(Time = "2011")
ds1_2012 = present_eu10['EU10'].sel(Time = "2012")
ds2_2012 = present_ev10['EV10'].sel(Time = "2012")
ds3_2012 = future_eu10['EU10'].sel(Time = "2012")
ds4_2012 = future_ev10['EV10'].sel(Time = "2012")
ds1_2013 = present_eu10['EU10'].sel(Time = "2013")
ds2_2013 = present_ev10['EV10'].sel(Time = "2013")
ds3_2013 = future_eu10['EU10'].sel(Time = "2013")
ds4_2013 = future_ev10['EV10'].sel(Time = "2013")
Beta Was this translation helpful? Give feedback.
All reactions