水知識圖譜-資料處理腳本

需求


規格

  • Scripts 中要有使用的工具範例

設計


V0.1

  • 使用與管理本地與自訂 url 資料
  • 支援 Wikidata query service 

V0.0.2

  • bring up open data class with interactive mode support
  • 自動下載 開放資料列表,用於本地管理
  • 指定任何 dataset id 下載/管理有CSV 的資料集
  • 提供河川列表
  • 提供欄位跟資料集的對應表

開發思路
經由處理河川列表的開放資料後,想來了解關於河有哪些開放資料,然後就發現開放資料很多,連東西在哪都有點難找。開放資料網站上雖有滿不錯的查詢介面,但想要知道怎麼的輪廓,以及進階的搜尋與分析就滿麻煩的。於是下載了整個開放資料資料集列表。

由於資料量大,意外發現 google sheet 能夠使用 query 命令,達到類似的 SQL 存取方式。

由於在開發小工具時,發現 panda 的強大性,似乎能將一個 CSV 當成資料庫使用。
於是想來開發一個 open data 的 class, 讓存取分析上能夠方便

OpenDataMgr 簡單說明
OpenDataMgr 會下載開放資料列表 CSV, 類似在本地端擁有這個 table
經由 get_dataset 這個命令,可以將任何一個有 CSV 的 dataset 取回,建立本地的 table
因為主題需要也特別建立 river list, 欄位跟資料集的對應,以方便後續分析
由於使用方式接近開放人員,在資料庫中手動查詢與分析,所以先建構互動式的使用方式
也就是結合 python script 的強項以及 panda 的系統設計,直接在 script 環境下使用

並將使用經驗與範例,收錄在文件與 jupyter notebook(opendata_test.ipynb) 中,以方便使用者能稍微不需要認真搞懂 panda

使用與範例請參考後面研究筆記

V0.0.1

  • Basic application foundation
  • CFG, logging, CLI, plot, unit test, simple test
  • minor update for some simple test for opendata, wikidata
  • simple test for river_tree, colmap

V 未來

  • import JSON
  • DataMgr
  • LinkMap

實作





驗證

Bug & Issue

  • panda.plot line type 畫出來跟中文有點衝突
  • 取不到 dataset 時要顯示 error msg
  • 欄位 desc by 行

測試

  • 範例

釋出

環境需求

  • python 3
  • numpy
  • panda

安裝

建議使用環境 
  • Anaconda
  • Jupyter

研究

取得 wikidata query service
  • 台灣河流
SELECT DISTINCT ?river ?riverLabel ?destLabel ?length WHERE {
  ?river wdt:P17 wd:Q865;
    wdt:P31 wd:Q4022.
    OPTIONAL {?river wdt:P403 ?dest.}
    OPTIONAL {?river wdt:P2043 ?length.}
  
  SERVICE wikibase:label { bd:serviceParam wikibase:language "zh". }
}
ORDER BY DESC(?length)

matlabplot



開放資料
  • 政府開放資料-自己整理 sheet

google sheet programming


Water Knowledge Graph opendata class - interactive mode

Version: V0.0.3
usage manual
  • 會需要熟悉 python panda
  • 有需要時請參考程式碼

# start and setup
(base) wuulong-pro:script wuulong$ python
Python 3.7.1 (default, Dec 14 2018, 13:28:58
[Clang 4.0.1 (tags/RELEASE_401/final)] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from codes.opendata import *
['"https://data.gov.tw/datasets/export/csv?type=dataset&order=pubdate&qs=&uid=', 'opendata_list.csv']
[nan, 'db.csv']
DataMgr inited for interactive used
dMgr,odMgr,ldMgr,od_df,ld_df,rivercode_df,river_df,colname_df,term_df variable ready


python Panda 參考
  • 常用 API
  • 簡單教學
  • 查到的使用方式
  • 學習範例

usage example
>>> from codes.opendata import *
>>> odMgr = OpenDataMgr()
>>> odMgr.od_df.columns
Index(['資料集名稱', '服務分類', '檔案格式', '資料下載網址', '編碼格式', '資料集類型', '資料集描述', '主要欄位說明',
       '提供機關', '更新頻率', '授權方式', '相關網址', '計費方式', '提供機關聯絡人姓名', '提供機關聯絡人電話',
       '上架日期', '詮釋資料更新時間', '備註', 'df'],
      dtype='object')
>>> did1=22223
>>> odMgr.od_df.loc[did1]
資料集名稱                                                 河川流量測站站況
服務分類                                                      公共資訊
檔案格式                                              JSON;CSV;XML
資料下載網址       https://data.wra.gov.tw/Service/OpenData.aspx?...
編碼格式                                         UTF-8;UTF-8;UTF-8
資料集類型                                                      b01
資料集描述        本資料集主要描述水利署所屬流量站之基本資料,有助於了解流量站的相關內容。 資料集中包括包括測...
主要欄位說明       AffiliatedBasin;AffiliatedSubsidiaryBasin;Affi...
提供機關                                                    經濟部水利署
更新頻率                                                        即時
授權方式                                            政府資料開放授權條款-第1
相關網址         https://data.wra.gov.tw/WraStandardWrisp/Query...
計費方式                                                        免費
提供機關聯絡人姓名                                               蔡斐毓 先生
提供機關聯絡人電話                                          02-37073091
上架日期                                          2017/09/12 15:49
詮釋資料更新時間                                      2019/05/01 14:56
備註                                                         NaN
df                AffiliatedBasin  AffiliatedSubsidiaryBasi...
Name: 22223, dtype: object

>>> odMgr.get_dataset(did1)
True
>>> df1 = odMgr.od_df['df'][did1]
>>> df1.columns
Index(['AffiliatedBasin', 'AffiliatedSubsidiaryBasin',
       'AffiliatedSubSubsidiaryBasin', 'AlertLevel1', 'AlertLevel2',
       'AlertLevel3', 'BasinIdentifier', 'BrittlenessStatus',
       'CarDriveDistanceInHours', 'CityElectricitySupplyStatus',
       'ConstructionManagement', 'CrossRiverStructuresNameOfEquipment',
       'DataCollectionFrequecy', 'DataSubmitted', 'DrainageArea',
       'DrainageStatus', 'EcologicalEnvironmentMonitoring',
       'ElevationOfWaterLevelZeroPoint', 'EnglishAddress', 'EnglishgRiverName',
       'EnglishName', 'EquipmentStatus',
       'EquipmentStatusOnCrossRiverStructures', 'FloodPreventionPurpose',
       'HighSedimentStatus', 'HydroFacilityManagement',
       'HydrologicalMonitoringPurpose', 'LightningStatus', 'LocationAddress',
       'LocationByTWD67_XY', 'LocationByTWD97_XY', 'MaintainCycle',
       'NoPeriodicalDataSubmissionReason', 'NormalObservationType',
       'ObervationItems', 'ObservationMethod', 'ObservationReason',
       'ObservationStatus', 'ObservatoryIdentifier', 'ObservatoryName',
       'OnSiteDataCollection', 'OtherRequirement',
       'RealTimeDataDeliveryFrequency',
       'RealTimeDataDeliveryFrequencyInFloodDefenceTime', 'Remarks',
       'ReplaceStatus', 'RiverName', 'RiverSectionDepositionAndErosionChange',
       'SetDate', 'ShortObservationType', 'SolarPotentialDemage',
       'SolarStatus', 'StealStatus', 'StraightRiverStatus', 'SubsidenceStatus',
       'SunLightCoverageStatus', 'SunshineStatus', 'TideStatus', 'TownName',
       'TransmissionEquipment', 'UpStreamReservoirStatus',
       'VerticalDatumSource', 'WalkDistanceInHours', 'WaterDrawStatus',
       'WaterResourceDistrictIdentifier', 'WaterResourceNumber',
       'WirelessTransmissionType'],
      dtype='object')


>>> df1.loc[0]
AffiliatedBasin                                                              1140
AffiliatedSubsidiaryBasin                                                     NaN
AffiliatedSubSubsidiaryBasin                                                  NaN
AlertLevel1                                                                   NaN
AlertLevel2                                                                   NaN
AlertLevel3                                                                   NaN
BasinIdentifier                                                          1140H001
BrittlenessStatus                                                             NaN
CarDriveDistanceInHours                                                       NaN
CityElectricitySupplyStatus                                                   NaN
ConstructionManagement                                                        NaN
CrossRiverStructuresNameOfEquipment                                           NaN
DataCollectionFrequecy                                                        NaN
DataSubmitted                                                                 NaN
DrainageArea                                                               335.29
DrainageStatus                                                                  2
EcologicalEnvironmentMonitoring                                               NaN
ElevationOfWaterLevelZeroPoint                                              68800
EnglishAddress                                     Yufeng T.Jianshi H. Hsinchu H.
EnglishgRiverName                                                     Dahan River
EnglishName                                                               YU FENG
EquipmentStatus                                                               NaN
EquipmentStatusOnCrossRiverStructures                                         NaN
FloodPreventionPurpose                                                        NaN
HighSedimentStatus                                                              2
HydroFacilityManagement                                                       NaN
HydrologicalMonitoringPurpose                                                 NaN
LightningStatus                                                               NaN
LocationAddress                                                         新竹縣尖石鄉玉峰村
LocationByTWD67_XY                                           279345.50 2727961.80
                                                                ...              
ObservationStatus                                                              現存
ObservatoryIdentifier                                                          19
ObservatoryName                                                          玉峰(馬利哥灣)
OnSiteDataCollection                                                          NaN
OtherRequirement                                                              NaN
RealTimeDataDeliveryFrequency                                                 NaN
RealTimeDataDeliveryFrequencyInFloodDefenceTime                               NaN
Remarks                                                                       NaN
ReplaceStatus                                                                 NaN
RiverName                                                                     大漢溪
RiverSectionDepositionAndErosionChange                                          5
SetDate                                                                       NaN
ShortObservationType                                                          NaN
SolarPotentialDemage                                                          NaN
SolarStatus                                                                   NaN
StealStatus                                                                   NaN
StraightRiverStatus                                                             2
SubsidenceStatus                                                              NaN
SunLightCoverageStatus                                                        NaN
SunshineStatus                                                                NaN
TideStatus                                                                      2
TownName                                                                      NaN
TransmissionEquipment                                                         NaN
UpStreamReservoirStatus                                                         2
VerticalDatumSource                                                             5
WalkDistanceInHours                                                           NaN
WaterDrawStatus                                                                 2
WaterResourceDistrictIdentifier                                                10
WaterResourceNumber                                                            11
WirelessTransmissionType                                                      NaN
Name: 0, Length: 67, dtype: object

>>> did2=22227
>>> odMgr.get_dataset(did2)
True
>>> df1[df1['RiverName']=='蘭陽溪']['ObservatoryName']
105    牛鬥(1)
106     蘭陽大橋
107      家源橋
110      北成橋
111    牛鬥(3)
Name: ObservatoryName, dtype: object

>>> df2[df2['RiverName']=='蘭陽溪']['ObservatoryName']
739    牛鬥(1)
740    牛鬥(2)
741       圓山
742      天送埤
744     蘭陽大橋
745       南興
749     壯圍提尾
750      獨立山
751       壯圍
752      家源橋
757      北成橋
758    牛鬥(3)
Name: ObservatoryName, dtype: object

>>> stations = list(df1[df1['RiverName']=='蘭陽溪']['ObservatoryName'])
>>> stations.extend(list(df2[df2['RiverName']=='蘭陽溪']['ObservatoryName']))
>>> set(stations)
{'壯圍提尾', '牛鬥(2)', '獨立山', '牛鬥(1)', '牛鬥(3)', '家源橋', '蘭陽大橋', '南興', '壯圍', '圓山', '天送埤', '北成橋'}

>>> odf = odMgr.od_df

>>> odf.groupby('提供機關')['資料集名稱'].count()
提供機關
中國輸出入銀行            18
中央存款保險股份有限公司       16
中央研究院              21
中央警察大學             12
...
高雄市鳥松區公所            4
高雄市鹽埕區公所            2
高雄榮民總醫院             3
高雄高等行政法院           56
Name: 資料集名稱, Length: 723, dtype: int64

>>> riverlist = ['濁水溪','淡水河']
>>> df = pd.DataFrame(riverlist, columns = ["RiverName"])
>>> df
  RiverName
0       濁水溪
1       淡水河

>>> merge_df = pd.merge(df, df1, left_on='RiverName',right_on='RiverName', how='left')
>>> merge_df[['RiverName','ObservatoryName']]
  RiverName ObservatoryName
0       濁水溪             彰雲橋
1       濁水溪             玉峰橋
2       濁水溪            溪州大橋
3       濁水溪             寶石橋
4       濁水溪            南雲大橋
5       淡水河             覽勝橋

history:
from codes.opendata import *
odMgr = OpenDataMgr()
river_df = odMgr.get_riverlist()
did1=22227
df1=odMgr.get_dataset(did1)
merge_df = pd.merge(river_df, df1, left_on='Name',right_on='RiverName', how='left')
merge_df[['RiverName','ObservatoryName']]
pd.set_option('display.max_rows', None)
pd.set_option('display.max_columns', None)
df1[df1.isna().any(axis=1)] # 秀出 有 nan 的那些行內容
cur=df1[['RiverName','ObservatoryName','AffiliatedBasin']]
cur=df1[['RiverName','ObservatoryName']]
merge_df1 = pd.merge(river_df, cur.dropna(), left_on='Name',right_on='RiverName', how='left',left_index=True).dropna()
#concat_df = pd.concat([river_df, cur.dropna()], join="inner")
cur.dtypes
cur = cur.astype({'AffiliatedBasin': str})
merge_df = merge_df1[['Name','ObservatoryName','AffiliatedBasin']]
merge_df.groupby('Name')['ObservatoryName'].count()
merge_df.sort_values(by=['col1'])
merge_df.groupby('Name')['ObservatoryName'].count().sort_values(ascending=False)
group_df = merge_df.groupby('Name')['ObservatoryName'].apply(lambda x: ','.join(x)) #河上有哪些站
group_df.sort_index(ascending=True)

#
rivercode_df = odMgr.get_dataset(22228) #河川代碼
od_df[['主要欄位說明']].values # to array
>>> type(od_df[['主要欄位說明']].ix[:,0])
<class 'pandas.core.series.Series'>
od_df[['主要欄位說明']].ix[:,0].str.split(pat = ";")
wra=od_df[od_df['提供機關']=='經濟部水利署']
desc=wra[['資料集名稱','主要欄位說明']]
desc=desc.dropna()
colname_df = pd.DataFrame(desc['主要欄位說明'].str.split(';').tolist(), index=desc['資料集名稱']).stack()

colname_df = colname_df.reset_index([0, '資料集名稱'])
colname_df.columns = ['資料集名稱', 'Colname']
colname_groupby_df = colname_df.groupby('Colname')['資料集名稱'].apply(lambda x: ','.join(x)) #colname 被哪些 dataset 用到

colname_df.to_csv(index=False)
export_csv = colname_df.to_csv ('output/out.csv', index = None, header=True)

like_df = od_df[od_df['資料集名稱'].str.contains('登山')]
df[df['A'].str.contains("hello")]

ignore_df=term_df['欄位忽略詞'].dropna().reset_index([0],'欄位忽略詞')
#欄位 count > 5, 不是忽略詞
colname_groupby_df = colname_df.groupby('Colname')['資料集名稱'].count().sort_values(ascending=False)
freq_df = colname_groupby_df[colname_groupby_df>=5]

mon_list = list(set(freq_df.index) - set(ignore_df.values))
mon_s = pd.Series(mon_list) 

dot_df=colname_df[colname_df['Colname'].isin(mon_s.values)]

myprint = lambda row: "\"%s\" -> \"%s\";" %(row[1],row[0])
print(dot_df.apply(myprint, axis=1).to_string(index=False))

odMgr.gen_col_tree(False,5)


pandasql

使用技巧

類別
語法
初始化
from codes.opendata import *
panda 廣域設定
pd.set_option(‘display.max_rows', None)
pd.set_option('display.max_columns', None)
set_option 說明
pd.set_option('max_colwidth', 100)
使用物件 method
df=odMgr.get_dataset(118038)
odMgr.gen_col_tree(False,5)
看資料
df
df[‘資料集名稱’]
df.iloc[22228]
基本查詢
df1[df1[‘RiverName']=='蘭陽溪']['ObservatoryName']
od_df[od_df[‘資料集名稱'].str.contains('河川')]
查資料集
mon_df = od_df[od_df['資料集名稱'].str.contains('河川')][['資料集名稱','提供機關']].sort_values(by=['提供機關'])
mon_df[mon_df['提供機關'].isin(['行政院環境保護署','經濟部水利署'])]
odf.groupby('提供機關')['資料集名稱'].count().sort_values()

group_df = merge_df.groupby('Name')['ObservatoryName'].apply(lambda x: ','.join(x)) #河上有哪些站
group_df.sort_index(ascending=True)
未定義
merge_df = pd.merge(df, df1, left_on='RiverName',right_on='RiverName', how='left')
colname_df.to_csv ('output/out.csv', index = None, header=True)

可能的問題

  • 政府開放資料網站某資料集(如 22228)的主要欄位說明跟全部資料集 CSV 下載的欄位說明不一致,網站上有中英文對照,CSV 內沒有中文說明
  • 如 22228
  • CSV 中的主要欄位說明
BasinIdentifier;BasinName;EnglishBasinName;EnglishSubsidiaryBasinName;EnglishSubSubsidiaryBasinName;EnglishSubSubSubsidiaryBasinName;GovernmentUnitIdentifier;Remarks;SubsidiaryBasinIdentifier;SubsidiaryBasinName;SubSubsidiaryBasinIdentifier;SubSubsidiaryBasinName;SubSubSubsidiaryBasinIdentifier;SubSubSubsidiaryBasinName
  • 網站上即時看到的

  • dataset 沒資料
  • 10865        水利署_施政計畫,資料沒內容
  • 無法存取
  • 6079        河川水質測點基本資料(含地理圖資) ,存取錯誤(手動也錯誤)

資料查詢的練習

Q: 裡面有水質資料嗎? 查一下水盒子怎麼佈比較好? 然後管場域的是哪些機關?
  • 發想
  • 水質資料相關的資料集?
  • 水質相關在環保署,農委會主要是農田水利會觀測資料
  • 相關資料集列表(大概看而已,需要補充)
#89036        重要河川水質概況
#6078        河川水質監測資料 ,有測站位置
#72351        河川水質監測站位置圖 ,KML
#6701        河川水質季監測資料
#6395        水庫水質監測點基本資料
#8820        水庫水質監測站位置圖
#6345        水庫水質監測資料
#37221        環保專案摘要資料_水質保護

資料集識別碼
資料集名稱
資料集描述
89036
重要河川水質概況
本資料依全國及河川別統計重要河川水質監測結果,包括溶氧量、生化需氧量、懸浮固體、氨氮之平均值及最大值。
6078
河川水質監測資料
環保署發布河川水質監測資料,包括河川污染指標(River Pollution Index, RPI)及主要污染物監測值等資料。由於監測資料需要每個月現場...
72351
河川水質監測站位置圖
顯示環保署設於臺灣本島主要河川的水質監測站位置。
6701
河川水質季監測資料
環保署發布河川水質季監測資料,包括硝酸鹽氮、總磷及重金屬污染物監測值等資料。由於監測資料為每季現場採樣、經實驗室檢測分析及資料品保品管程序,通常於採樣隔...
6395
水庫水質監測點基本資料
環保署發布水庫水質監測點基本資料,包括各測點地理環境位置等資料。本項資料為視監測計畫需求不定期更新
8820
水庫水質監測站位置圖
顯示環保署設於臺灣本島、澎湖、金門、馬祖等於主要水庫的水質監測站位置。
6345
水庫水質監測資料
環保署發布水庫水質監測資料,包括一般水庫水質背景監測值及卡爾森指數(CTSI)指標計算值等資料。由於監測資料為每季現場採樣,並經實驗室檢測分析及資料品保...
37221
環保專案摘要資料_水質保護
環保署各委辦案專案成果報告摘要資料_水質保護類別

  • OK 水質測站的位置與測項
  • #22223        河川流量測站站況 (水質站目前都在流量站內)
  • 哪些是真的有的?
  • 只看測站欄位說明似乎找不出哪些有測水質
  • 可能需要看測值的欄位
  • 從 6078        河川水質監測資料,可以知道哪些測項在哪個河流與流域測

欄位說明
AffiliatedBasin(測站所屬流域,主流)、AffiliatedSubsidiaryBasin(測站所屬之流域,支流 備註:測站因位於主流上故未填寫支流名稱。)、AffiliatedSubSubsidiaryBasin(測站所屬之流域,次支流 備註:測站因位於主流或支流上故未填寫次支流名稱。)、AlertLevel1(一級警戒水位高,一級警戒水位高[m] 備註:部分測站並未指定一級警戒水位高。)、AlertLevel2(二級警戒水位高,二級警戒水位高[m] 備註:部分測站並未指定二級警戒水位高。)、AlertLevel3(三級警戒水位高,三級警戒水位高[m] 備註:部分測站並未指定三級警戒水位高。)、BasinIdentifier(流域編號)、BrittlenessStatus(是否易受天災破壞)、CarDriveDistanceInHours(所需車程,單程,小時)、CityElectricitySupplyStatus(測站有市電供電)、ConstructionManagement(工程施工管理)、CrossRiverStructuresNameOfEquipment(設置之橋樑或構造物名稱,設置之橋樑或構造物名稱 備註:部分測站因選址問題並非位於特定橋梁或構造物上,故無法填寫。)、DataCollectionFrequecy(現場收集資料之頻率,日)、DataSubmitted(水文資料是否定期送水文組彙整)、DrainageArea(集水面積)、DrainageStatus(測站上游是否有放水點)、EcologicalEnvironmentMonitoring(生態環境監測)、ElevationOfWaterLevelZeroPoint(水尺零點標高)、EnglishAddress(英文站址)、EnglishgRiverName(河川英文名稱)、EnglishName(英文站名)、EquipmentStatus(設備型態)、EquipmentStatusOnCrossRiverStructures(是否設置於跨河構造物)、FloodPreventionPurpose(防汛用途)、HighSedimentStatus(是否為高含砂量河段)、HydroFacilityManagement(水利設施管理)、HydrologicalMonitoringPurpose(水文觀測用途)、LightningStatus(測站是否易遭雷擊)、LocationAddress(中文站址)、LocationByTWD67_XY(TM2度分帶67XY坐標)、LocationByTWD97_XY(TM2度分帶97XY坐標)、MaintainCycle(現場巡邏或維護之頻率,日)、NoPeriodicalDataSubmissionReason(水文資料無定期送水文組彙整原因)、NormalObservationType(正常觀測之性質)、ObervationItems(觀測項目)、ObservationMethod(觀測方式)、ObservationReason(觀測原因)、ObservationStatus(觀測現況)、ObservatoryIdentifier(站號)、ObservatoryName(中文站名)、OnSiteDataCollection(是否有人工現場收集資料)、OtherRequirement(特定計畫或特定需求)、RealTimeDataDeliveryFrequency(即時資料傳送頻率,平時)、RealTimeDataDeliveryFrequencyInFloodDefenceTime(即時資料傳送頻率,防汛時)、Remarks(備註)、ReplaceStatus(是否有暫時取代之測站)、RiverName(河川中文名稱)、RiverSectionDepositionAndErosionChange(測站斷面沖淤變化)、SetDate(設站日期)、ShortObservationType(短期觀測的原因)、SolarPotentialDemage(設站地點太陽能板可能易遭外力破壞)、SolarStatus(測站有太陽能供電)、StealStatus(是否易受人為破壞或竊盜)、StraightRiverStatus(是否位於平直河段)、SubsidenceStatus(是否位於容易地層下陷地區)、SunLightCoverageStatus(設站點陽光易受遮蔽)、SunshineStatus(日照是否充足)、TideStatus(是否感潮)、TownName(鄉鎮名稱)、TransmissionEquipment(是否有傳輸設備)、UpStreamReservoirStatus(上游引蓄水)、VerticalDatumSource(基準高程之引測來源)、WalkDistanceInHours(所需步行路程,單程,小時)、WaterDrawStatus(測站上游是否有引水點)、WaterResourceDistrictIdentifier(水資源分區編號)、WaterResourceNumber(水資源分區編號)、WirelessTransmissionType(無線傳輸方式)

#大腸桿菌群 在哪個河流測
array(['東港溪', '鹽水溪', '朴子溪', '阿公店溪', '二仁溪', '高屏溪', '曾文溪', '急水溪', '港口溪',
       '知本溪', '利嘉溪', '太平溪', '卑南溪', '保力溪', '四重溪', '楓港溪', '枋山溪', '率芒溪',
       '林邊溪'], dtype=object)

  • 管場域的是哪些機構
  • 環保署機構資訊
  • 環保署基本資料集瀏覽
  • 農委會機構
  • 環保署機構資訊
  • 36691-河川名詞庫 ,河川簡介,水庫簡介,機關簡介,首長介紹
  • 哪邊水質差
  • 查河川水質季監測資料 
  • #6701        河川水質季監測資料
  • 可以查到各種感測值,要怎麼知道水質差?
  • 河流的流域與範圍
  • 有哪些河
  • 河的基本資訊
  • 河流上的測站
  • 得找測站在哪個河川中
  • #6701        河川水質季監測資料
  • 河流交會點
  • 水庫集水區 或自來水取水口上游可能會有水質監測

流域編碼 --> 水位站-->流量站-->水質(流量站 環保署共站 不定期冊水質)
1140 淡水河  ---> 1140H001 玉峰  -->1140H001 玉峰 --->-->1140H001 玉峰
有水位站 不一定有流量站
但有流量監測一定會有水位站
Q: 查詢計畫書跟預算的開放資料?

Library


參考



水利署圖書館 https://lib.wra.gov.tw/opac/
  • 提供的資料集,這個資料集可以查到所有水利署所有計畫之報告。 “標籤雲查詢”

河川復育網
  • 當時我們也利用這個資料集寫了台灣河川復育網之”出版書籍”的單元。
  • 其實是我喜歡一個資料集之一,只是好像沒有被留意到!

水利年報下載