Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -162,4 +162,4 @@ ciccada/


*.csv
*.png
*.png
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: v6.0.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
Expand All @@ -11,7 +11,7 @@ repos:
exclude: ^uv.lock$
- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: v0.8.2
rev: v0.15.11
hooks:
# Run the linter.
- id: ruff
Expand Down
45 changes: 23 additions & 22 deletions BOM_NCI/Get_ALL_postcodes_ABS.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,14 @@
"outputs": [],
"source": [
"import sys\n",
"sys.path.append('../') \n",
"from visualisation import *\n",
"import xarray as xr\n",
"\n",
"sys.path.append(\"../\")\n",
"import dask\n",
"import geopandas as gpd\n",
"import xarray as xr\n",
"from shapely.geometry import Point\n",
"\n",
"from visualisation import *\n",
"# crs = EPSG:4326 (WGS 84)"
]
},
Expand All @@ -36,7 +38,7 @@
],
"source": [
"bom_path = \"/home/hossein/CICCADA/BOM_NCI/2023/01/01/\"\n",
"files = glob(bom_path+\"*.nc\")\n",
"files = glob(bom_path + \"*.nc\")\n",
"len(files)"
]
},
Expand All @@ -57,13 +59,13 @@
"source": [
"df = [xr.open_dataset(file).to_dataframe() for file in files[:15]]\n",
"df = pd.concat(df, axis=0).reset_index(drop=False)\n",
"df = df.dropna(subset='direct_normal_irradiance').reset_index(drop=True)\n",
"df['julian_date'] = pd.to_datetime(df['julian_date'], origin='julian', unit='D')\n",
"df = df[['latitude', 'longitude']].drop_duplicates().reset_index(drop=True)\n",
"df = df.dropna(subset=\"direct_normal_irradiance\").reset_index(drop=True)\n",
"df[\"julian_date\"] = pd.to_datetime(df[\"julian_date\"], origin=\"julian\", unit=\"D\")\n",
"df = df[[\"latitude\", \"longitude\"]].drop_duplicates().reset_index(drop=True)\n",
"# df = df.query(f\"latitude >= -35 & latitude <= -34.6 & longitude >= 138.5 & longitude <= 138.8\").reset_index(drop=True)\n",
"df['geometry'] = [Point(x,y) for x,y in zip(df['longitude'], df['latitude'])]\n",
"geo_list = df['geometry'].unique()\n",
"print('len(geo_list): ', len(geo_list))"
"df[\"geometry\"] = [Point(x, y) for x, y in zip(df[\"longitude\"], df[\"latitude\"])]\n",
"geo_list = df[\"geometry\"].unique()\n",
"print(\"len(geo_list): \", len(geo_list))"
]
},
{
Expand All @@ -73,7 +75,9 @@
"metadata": {},
"outputs": [],
"source": [
"gdf = gpd.GeoDataFrame(df[['longitude', 'latitude', 'geometry']], geometry='geometry', crs='EPSG:4326') # assuming WGS84"
"gdf = gpd.GeoDataFrame(\n",
" df[[\"longitude\", \"latitude\", \"geometry\"]], geometry=\"geometry\", crs=\"EPSG:4326\"\n",
") # assuming WGS84"
]
},
{
Expand All @@ -83,8 +87,8 @@
"metadata": {},
"outputs": [],
"source": [
"gdf_postcodes = gpd.read_file('POA_2021_AUST_GDA2020_SHP/POA_2021_AUST_GDA2020.shp')\n",
"gdf_postcodes = gdf_postcodes.to_crs('EPSG:4326') # Ensure same CRS"
"gdf_postcodes = gpd.read_file(\"POA_2021_AUST_GDA2020_SHP/POA_2021_AUST_GDA2020.shp\")\n",
"gdf_postcodes = gdf_postcodes.to_crs(\"EPSG:4326\") # Ensure same CRS"
]
},
{
Expand Down Expand Up @@ -153,10 +157,7 @@
"outputs": [],
"source": [
"gdf_joined = gpd.sjoin(\n",
" gdf,\n",
" gdf_postcodes[['POA_CODE21', 'geometry']],\n",
" how='left',\n",
" predicate='within'\n",
" gdf, gdf_postcodes[[\"POA_CODE21\", \"geometry\"]], how=\"left\", predicate=\"within\"\n",
")"
]
},
Expand All @@ -167,7 +168,7 @@
"metadata": {},
"outputs": [],
"source": [
"gdf_joined.drop(columns=['index_right'], inplace=True)\n",
"gdf_joined.drop(columns=[\"index_right\"], inplace=True)\n",
"gdf_joined = gdf_joined.dropna().reset_index(drop=True)"
]
},
Expand All @@ -178,7 +179,7 @@
"metadata": {},
"outputs": [],
"source": [
"gdf_joined.to_csv('bom_postcodes_points.csv', index=False)"
"gdf_joined.to_csv(\"bom_postcodes_points.csv\", index=False)"
]
},
{
Expand All @@ -188,7 +189,7 @@
"metadata": {},
"outputs": [],
"source": [
"gdf_postcodes['geometry'][0]"
"gdf_postcodes[\"geometry\"][0]"
]
},
{
Expand Down Expand Up @@ -265,7 +266,7 @@
],
"source": [
"fig, ax = plt.subplots()\n",
"gdf_postcodes.plot(ax=ax, facecolor='none', edgecolor='black')\n"
"gdf_postcodes.plot(ax=ax, facecolor=\"none\", edgecolor=\"black\")"
]
},
{
Expand All @@ -275,7 +276,7 @@
"metadata": {},
"outputs": [],
"source": [
"gdf.plot(ax=ax, color='red', markersize=2)\n",
"gdf.plot(ax=ax, color=\"red\", markersize=2)\n",
"plt.show()"
]
}
Expand Down
60 changes: 38 additions & 22 deletions BOM_NCI/Get_ALL_postcodes_GNAF.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,15 @@
"outputs": [],
"source": [
"import sys\n",
"sys.path.append('../') \n",
"from visualisation import *\n",
"import xarray as xr\n",
"\n",
"sys.path.append(\"../\")\n",
"import dask\n",
"import geopandas as gpd\n",
"import xarray as xr\n",
"from shapely.geometry import Point\n",
"from sklearn.neighbors import KDTree\n",
"\n",
"from visualisation import *\n",
"# crs = EPSG:4326 (WGS 84)"
]
},
Expand All @@ -37,7 +39,7 @@
],
"source": [
"bom_path = \"/home/hossein/CICCADA/BOM_NCI/2023/01/01/\"\n",
"files = glob(bom_path+\"*.nc\")\n",
"files = glob(bom_path + \"*.nc\")\n",
"len(files)"
]
},
Expand All @@ -50,9 +52,9 @@
"source": [
"df = [xr.open_dataset(file).to_dataframe() for file in files[:15]]\n",
"df = pd.concat(df, axis=0).reset_index(drop=False)\n",
"df = df.dropna(subset='direct_normal_irradiance').reset_index(drop=True)\n",
"df['julian_date'] = pd.to_datetime(df['julian_date'], origin='julian', unit='D')\n",
"df = df[['latitude', 'longitude']].drop_duplicates().reset_index(drop=True)"
"df = df.dropna(subset=\"direct_normal_irradiance\").reset_index(drop=True)\n",
"df[\"julian_date\"] = pd.to_datetime(df[\"julian_date\"], origin=\"julian\", unit=\"D\")\n",
"df = df[[\"latitude\", \"longitude\"]].drop_duplicates().reset_index(drop=True)"
]
},
{
Expand Down Expand Up @@ -113,9 +115,13 @@
"metadata": {},
"outputs": [],
"source": [
"SA_STREET_LOCALITY_POINT_psv = pd.read_csv(glob(f\"{naf_path}SA_STREET_LOCALITY_POINT_psv.psv\")[0], sep='|', low_memory=False).dropna(axis=1)\n",
"SA_ADDRESS_DETAIL_psv = pd.read_csv(glob(f\"{naf_path}SA_ADDRESS_DETAIL_psv.psv\")[0], sep='|', low_memory=False).dropna(axis=1)\n",
"# SA_ADDRESS_DETAIL_psv\n"
"SA_STREET_LOCALITY_POINT_psv = pd.read_csv(\n",
" glob(f\"{naf_path}SA_STREET_LOCALITY_POINT_psv.psv\")[0], sep=\"|\", low_memory=False\n",
").dropna(axis=1)\n",
"SA_ADDRESS_DETAIL_psv = pd.read_csv(\n",
" glob(f\"{naf_path}SA_ADDRESS_DETAIL_psv.psv\")[0], sep=\"|\", low_memory=False\n",
").dropna(axis=1)\n",
"# SA_ADDRESS_DETAIL_psv"
]
},
{
Expand Down Expand Up @@ -292,7 +298,9 @@
"metadata": {},
"outputs": [],
"source": [
"a = pd.read_csv(glob(f\"{naf_path}SA_ADDRESS_DETAIL_psv.psv\")[0], sep='|', low_memory=False)"
"a = pd.read_csv(\n",
" glob(f\"{naf_path}SA_ADDRESS_DETAIL_psv.psv\")[0], sep=\"|\", low_memory=False\n",
")"
]
},
{
Expand Down Expand Up @@ -334,7 +342,7 @@
"metadata": {},
"outputs": [],
"source": [
"5035 in SA_ADDRESS_DETAIL_psv['POSTCODE'].unique()"
"5035 in SA_ADDRESS_DETAIL_psv[\"POSTCODE\"].unique()"
]
},
{
Expand All @@ -344,7 +352,7 @@
"metadata": {},
"outputs": [],
"source": [
"SA_ADDRESS_DETAIL_psv['POSTCODE'].unique().shape"
"SA_ADDRESS_DETAIL_psv[\"POSTCODE\"].unique().shape"
]
},
{
Expand All @@ -365,8 +373,14 @@
}
],
"source": [
"locaility_points = SA_STREET_LOCALITY_POINT_psv[['STREET_LOCALITY_PID', 'LONGITUDE', 'LATITUDE']].merge(SA_ADDRESS_DETAIL_psv[['STREET_LOCALITY_PID', 'POSTCODE']].drop_duplicates(), on='STREET_LOCALITY_PID', how='left')\n",
"locaility_points.drop(columns=['STREET_LOCALITY_PID'], inplace=True)\n",
"locaility_points = SA_STREET_LOCALITY_POINT_psv[\n",
" [\"STREET_LOCALITY_PID\", \"LONGITUDE\", \"LATITUDE\"]\n",
"].merge(\n",
" SA_ADDRESS_DETAIL_psv[[\"STREET_LOCALITY_PID\", \"POSTCODE\"]].drop_duplicates(),\n",
" on=\"STREET_LOCALITY_PID\",\n",
" how=\"left\",\n",
")\n",
"locaility_points.drop(columns=[\"STREET_LOCALITY_PID\"], inplace=True)\n",
"locaility_points.dropna(inplace=True)\n",
"locaility_points.columns"
]
Expand All @@ -388,8 +402,8 @@
"metadata": {},
"outputs": [],
"source": [
"postcode_coords = locaility_points[['LATITUDE', 'LONGITUDE']].to_numpy()\n",
"kdtree = KDTree(postcode_coords, metric='euclidean')"
"postcode_coords = locaility_points[[\"LATITUDE\", \"LONGITUDE\"]].to_numpy()\n",
"kdtree = KDTree(postcode_coords, metric=\"euclidean\")"
]
},
{
Expand All @@ -414,9 +428,11 @@
"metadata": {},
"outputs": [],
"source": [
"df['nearest_postcode'] = locaility_points.iloc[nearest_indices]['POSTCODE'].values\n",
"df[\"nearest_postcode\"] = locaility_points.iloc[nearest_indices][\"POSTCODE\"].values\n",
"\n",
"df['distance_km'] = nearest_distances*111 # Rough conversion factor for degrees to kilometers"
"df[\"distance_km\"] = (\n",
" nearest_distances * 111\n",
") # Rough conversion factor for degrees to kilometers"
]
},
{
Expand Down Expand Up @@ -447,7 +463,7 @@
}
],
"source": [
"df0['nearest_postcode'].unique().shape"
"df0[\"nearest_postcode\"].unique().shape"
]
},
{
Expand All @@ -468,7 +484,7 @@
}
],
"source": [
"5035 in df0['nearest_postcode'].unique()"
"5035 in df0[\"nearest_postcode\"].unique()"
]
},
{
Expand All @@ -478,7 +494,7 @@
"metadata": {},
"outputs": [],
"source": [
"df0.to_csv('bom_postcodes_points.csv', index=False)"
"df0.to_csv(\"bom_postcodes_points.csv\", index=False)"
]
}
],
Expand Down
19 changes: 11 additions & 8 deletions BOM_NCI/describe_bom_data.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,13 @@
"outputs": [],
"source": [
"import sys\n",
"sys.path.append('../') \n",
"from visualisation import *\n",
"\n",
"sys.path.append(\"../\")\n",
"import concurrent.futures\n",
"\n",
"import xarray as xr\n",
"import concurrent.futures"
"\n",
"from visualisation import *"
]
},
{
Expand All @@ -31,7 +34,7 @@
],
"source": [
"bom_path = \"/home/hossein/CICCADA/BOM_NCI/2023/01/01/\"\n",
"files = glob(bom_path+\"*.nc\")\n",
"files = glob(bom_path + \"*.nc\")\n",
"len(files)"
]
},
Expand All @@ -47,7 +50,7 @@
"# print(ds)\n",
"\n",
"# List all variables\n",
"# print(ds.variables)\n"
"# print(ds.variables)"
]
},
{
Expand All @@ -64,7 +67,7 @@
}
],
"source": [
"print(ds['latitude'].attrs)\n"
"print(ds[\"latitude\"].attrs)"
]
},
{
Expand Down Expand Up @@ -201,12 +204,12 @@
}
],
"source": [
"for key in ('quality_mask','cloud_type'):\n",
"for key in (\"quality_mask\", \"cloud_type\"):\n",
" print(ds[key].long_name)\n",
" print(ds[key].flag_meanings)\n",
" print(ds[key].flag_values)\n",
" print(ds[key].comment)\n",
" print('---------------------------------')"
" print(\"---------------------------------\")"
]
}
],
Expand Down
Loading
Loading