From a710271d9b59f38622f358b56add2369d6674581 Mon Sep 17 00:00:00 2001 From: sanyhe Date: Fri, 29 Mar 2024 11:12:58 +0800 Subject: [PATCH] perf: add the buit-in dataset for abnormal detection and update the docs. --- README.md | 68 +++++++++++++-- .../Data_Preprocessing/Data Preprocessing.md | 39 ++++++--- docs/source/Home/Introduction.md | 78 +++++++++++++++--- .../data/dataset/Data_AbnormalDetection.xlsx | Bin 0 -> 44562 bytes 4 files changed, 158 insertions(+), 27 deletions(-) create mode 100644 geochemistrypi/data_mining/data/dataset/Data_AbnormalDetection.xlsx diff --git a/README.md b/README.md index 1601b845..80fcafd9 100644 --- a/README.md +++ b/README.md @@ -61,19 +61,29 @@ Eos Website: https://eos.org/editor-highlights/machine-learning-for-geochemists ## Quick Installation +Our software is well tested on **macOS** and **Windows** system with **Python 3.9**. Other systems and Python version are not guranteed. + One instruction to download on **command line**, such as Terminal on macOS, Power Shell on Windows. ``` pip install geochemistrypi ``` +Download the latest version to avoid some old version issues, such as dependency downloading. +``` +pip install "geochemistrypi==0.5.0" +``` + One instruction to download on **Jupyter Notebook** or **Google Colab**. ``` !pip install geochemistrypi ``` - -Check the latest version of our software: +Download the latest version to avoid some old version issues, such as dependency downloading. +``` +!pip install "geochemistrypi==0.5.0" +``` +Check the downloaded version of our software: ``` geochemistrypi --version @@ -95,13 +105,52 @@ One instruction to download on **Jupyter Notebook** or **Google Colab**. !pip install --upgrade geochemistrypi ``` -Check the latest version of our software: +Check the updated version of our software: ``` geochemistrypi --version ``` -## Example +## Data Preparation + +In order to utilize the functions provided by our software, your own data set should satisfy: + +- be with the suffix **.xlsx** or **.csv**, which is supported by Microsoft Excel. +- be comprise of location information **LATITUDE** and **LONGITUDE**, two columns respectively. It is optional. + +If you want to run **classification** algorithm, you data set should satisfy: + +- a label column. You can name it as you wish, such as **Label**. + +Column name specification: + +- No restriction on the column names. You can name them as you want except for two special and optional column **LATITUDE** and **LONGITUDE**. + +- every column can only one column name. Multi level column names are not allowed. + +- Between two columns with values, a completed void column can exists. + +The following are seven built-in data sets in our software stored on Google Drive and Tecent Docs, have a look on them. For the algorithm you intend to run, you can refer to the data format of the corresponding dataset. + ++ Data_Regression.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/13MB4t_2PiZ90tTMJKw7HcBUi2sb3tXej/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ3VmdWZCTGV3bmpM?&u=6868f96d4a384b309036e04e637e367a) + ++ ApplicationData_Regression.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1FCek2OOYQD887jfQz21g0ovqVuUJIjVoNI77D-Ufr9Y/edit?usp=sharing) | [[Tencent Docs]]( +https://docs.qq.com/document/DQ3BDeHhxRGNzSXZN) + ++ Data_Classification.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1xFBCYVmtZfuEAbeBljUlzqBjxVuLAt8x/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ0JUaUFsZnRaZkNG?&u=6868f96d4a384b309036e04e637e367a) + ++ ApplicationData_Classification.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1J7QvdvbbHJMlKtiumBgKDW7ALghfQQZyKGEoOqhKQjw/edit?usp=sharing) | [[Tencent Docs]](https://docs.qq.com/document/DQ2dnQWtubHRBTGtB) + ++ Data_Clustering.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1sbuJdOzGNQ2Pk-bVURfPYg1rltyBbn5J/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ3dKdGtlWkhZS2xR?&u=6868f96d4a384b309036e04e637e367a) + ++ Data_Decomposition.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1kix82qj5--vhnm8-KhuUBH9dqYH6zcY8/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ29oZ0lhUGtZUmdN?&u=6868f96d4a384b309036e04e637e367a) + ++ Data_AbnormalDetectioon.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1NqTQZCkv74Sn_iOJOKRc-QnJzpaWmnzC_lET_0ZreiQ/edit?usp=sharing) | [[Tencent Docs]]( +https://docs.qq.com/document/DQ2hqQ2N2ZGlOUWlT) + +**Note**: For more detail on data preparation, please refer to our online documentation in **Model Example** under the section of **FOR USER**. + +## Running Example **How to run:** After successfully downloading, run this instruction on **command line / Jupyter Notebook / Google Colab** whatever directory it is. @@ -181,6 +230,12 @@ For more details: Please refer to: - MLflow UI user guide - Geochemistry π v0.5.0 [[Bilibili]](https://b23.tv/CW5Rjmo) | [[YouTube]](https://www.youtube.com/watch?v=Yu1nzNeLfRY) +The following screenshot shows the downloads and launching of our software on macOS: + +

+ Downloads and Launching on macOS +

+ ## Roadmap ### First Phase @@ -247,7 +302,6 @@ The whole package is under construction and the documentation is progressively e + Jianming Zhao (Jamie, Zhejiang University, China) + Jianhao Sun (Jin, China University of Geosciences, Wuhan, China) -+ Kaixin Zheng (Hayne, Sun Yat-sen University, China) + Yongkang Chan (Kill-virus, Lanzhou University, China) + Mengying Ye (Mary, Jilin University, China) + Mengqi Gao (China University of Geosciences, Beijing, China) @@ -261,6 +315,9 @@ The whole package is under construction and the documentation is progressively e + Yucheng Yan (Andy, University of Sydney, Australia) + Ruitao Chang (China University of Geosciences Beijing, China) + Junchi Liao(Roceda, University of Electronic Science and Technology of China, China) ++ Panyan Weng (The University of Sydney, Australia) ++ Siqi Yao (Clara, Dongguan University of Technology, China) ++ Zhelan Lin(Lan, Fuzhou University, China) ## Join Us :) @@ -327,6 +384,7 @@ More Videos will be recorded soon. + Shengxin Wang (Samson, Lanzhou University, China) + Wenyu Zhao (Molly, Zhejiang University, China) + Qiuhao Zhao (Brad, Zhejiang University, China) ++ Kaixin Zheng (Hayne, Sun Yat-sen University, China) + Anzhou Li (Andrian, Zhejiang University, China) + Dan Hu (Notre Dame University, United States) + Xunxin Liu (Tante, China University of Geosciences, Wuhan, China) diff --git a/docs/source/For User/Model Example/Data_Preprocessing/Data Preprocessing.md b/docs/source/For User/Model Example/Data_Preprocessing/Data Preprocessing.md index ef7be7bc..ea905770 100644 --- a/docs/source/For User/Model Example/Data_Preprocessing/Data Preprocessing.md +++ b/docs/source/For User/Model Example/Data_Preprocessing/Data Preprocessing.md @@ -9,26 +9,40 @@ Firstly you need to start the geochemistrypi programm via command line instrucit In order to utilize the functions provided by our software, your own data set should satisfy: -- be with the suffix **.xlsx**, which is supported by Microsoft Excel. -- be comprise of location information **LATITUDE** and **LONGITUDE**, two columns respectively. +- be with the suffix **.xlsx** or **.csv**, which is supported by Microsoft Excel. +- be comprise of location information **LATITUDE** and **LONGITUDE**, two columns respectively. It is optional. If you want to run **classification** algorithm, you data set should satisfy: -- Tag column **LABEL** to differentiate the data. +- a label column. You can name it as you wish, such as **Label**. -The following are four built-in data set in our software stored on Google Drive, have a look on them. For the algorithm you intend to run, you can refer to the data format of the corresponding dataset. +Column name specification: -+ [Data_Regression.xlsx (International - Google drive)](https://docs.google.com/spreadsheets/d/13MB4t_2PiZ90tTMJKw7HcBUi2sb3tXej/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) -+ [Data_Regression.xlsx (China - Tencent Docs)](https://docs.qq.com/document/DQ3VmdWZCTGV3bmpM?&u=6868f96d4a384b309036e04e637e367a) +- No restriction on the column names. You can name them as you want except for two special and optional column **LATITUDE** and **LONGITUDE**. -+ [Data_Classification.xlsx (International - Google drive)](https://docs.google.com/spreadsheets/d/1xFBCYVmtZfuEAbeBljUlzqBjxVuLAt8x/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) -+ [Data_Classification.xlsx (China - Tencent Docs)](https://docs.qq.com/document/DQ0JUaUFsZnRaZkNG?&u=6868f96d4a384b309036e04e637e367a) +- every column can only one column name. Multi level column names are not allowed. + +- Between two columns with values, a completed void column can exists. + +The following are seven built-in data sets in our software stored on Google Drive and Tecent Docs, have a look on them. For the algorithm you intend to run, you can refer to the data format of the corresponding dataset. + ++ Data_Regression.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/13MB4t_2PiZ90tTMJKw7HcBUi2sb3tXej/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ3VmdWZCTGV3bmpM?&u=6868f96d4a384b309036e04e637e367a) + ++ ApplicationData_Regression.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1FCek2OOYQD887jfQz21g0ovqVuUJIjVoNI77D-Ufr9Y/edit?usp=sharing) | [[Tencent Docs]]( +https://docs.qq.com/document/DQ3BDeHhxRGNzSXZN) + ++ Data_Classification.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1xFBCYVmtZfuEAbeBljUlzqBjxVuLAt8x/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ0JUaUFsZnRaZkNG?&u=6868f96d4a384b309036e04e637e367a) + ++ ApplicationData_Classification.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1J7QvdvbbHJMlKtiumBgKDW7ALghfQQZyKGEoOqhKQjw/edit?usp=sharing) | [[Tencent Docs]](https://docs.qq.com/document/DQ2dnQWtubHRBTGtB) + ++ Data_Clustering.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1sbuJdOzGNQ2Pk-bVURfPYg1rltyBbn5J/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ3dKdGtlWkhZS2xR?&u=6868f96d4a384b309036e04e637e367a) + ++ Data_Decomposition.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1kix82qj5--vhnm8-KhuUBH9dqYH6zcY8/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ29oZ0lhUGtZUmdN?&u=6868f96d4a384b309036e04e637e367a) + ++ Data_AbnormalDetectioon.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1NqTQZCkv74Sn_iOJOKRc-QnJzpaWmnzC_lET_0ZreiQ/edit?usp=sharing) | [[Tencent Docs]]( +https://docs.qq.com/document/DQ2hqQ2N2ZGlOUWlT) -+ [Data_Clustering.xlsx (International - Google drive)](https://docs.google.com/spreadsheets/d/1sbuJdOzGNQ2Pk-bVURfPYg1rltyBbn5J/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) -+ [Data_Clustering.xlsx (China - Tencent Docs)](https://docs.qq.com/document/DQ3dKdGtlWkhZS2xR?&u=6868f96d4a384b309036e04e637e367a) -+ [Data_Decomposition.xlsx (International - Google drive)](https://docs.google.com/spreadsheets/d/1kix82qj5--vhnm8-KhuUBH9dqYH6zcY8/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) -+ [Data_Decomposition.xlsx (China - Tencent Docs)](https://docs.qq.com/document/DQ29oZ0lhUGtZUmdN?&u=6868f96d4a384b309036e04e637e367a) #### Loading Data By running the start command, there will be a prompt if your dataset is successfully loaded: @@ -43,6 +57,7 @@ By running the start command, there will be a prompt if your dataset is successf 47 - U(PPM) -------------------- (Press Enter key to move forward.) + #### World Map Projection After successfully loading your data, you will be asked if you would like to plot a world map projection for a specific element: diff --git a/docs/source/Home/Introduction.md b/docs/source/Home/Introduction.md index a72f6395..62199014 100644 --- a/docs/source/Home/Introduction.md +++ b/docs/source/Home/Introduction.md @@ -62,19 +62,29 @@ Eos Website: https://eos.org/editor-highlights/machine-learning-for-geochemists ## Quick Installation +Our software is well tested on **macOS** and **Windows** system with **Python 3.9**. Other systems and Python version are not guranteed. + One instruction to download on **command line**, such as Terminal on macOS, Power Shell on Windows. ``` pip install geochemistrypi ``` +Download the latest version to avoid some old version issues, such as dependency downloading. +``` +pip install "geochemistrypi==0.5.0" +``` + One instruction to download on **Jupyter Notebook** or **Google Colab**. ``` !pip install geochemistrypi ``` - -Check the latest version of our software: +Download the latest version to avoid some old version issues, such as dependency downloading. +``` +!pip install "geochemistrypi==0.5.0" +``` +Check the downloaded version of our software: ``` geochemistrypi --version @@ -96,13 +106,52 @@ One instruction to download on **Jupyter Notebook** or **Google Colab**. !pip install --upgrade geochemistrypi ``` -Check the latest version of our software: +Check the updated version of our software: ``` geochemistrypi --version ``` -## Example +## Data Preparation + +In order to utilize the functions provided by our software, your own data set should satisfy: + +- be with the suffix **.xlsx** or **.csv**, which is supported by Microsoft Excel. +- be comprise of location information **LATITUDE** and **LONGITUDE**, two columns respectively. It is optional. + +If you want to run **classification** algorithm, you data set should satisfy: + +- a label column. You can name it as you wish, such as **Label**. + +Column name specification: + +- No restriction on the column names. You can name them as you want except for two special and optional column **LATITUDE** and **LONGITUDE**. + +- every column can only one column name. Multi level column names are not allowed. + +- Between two columns with values, a completed void column can exists. + +The following are seven built-in data sets in our software stored on Google Drive and Tecent Docs, have a look on them. For the algorithm you intend to run, you can refer to the data format of the corresponding dataset. + ++ Data_Regression.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/13MB4t_2PiZ90tTMJKw7HcBUi2sb3tXej/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ3VmdWZCTGV3bmpM?&u=6868f96d4a384b309036e04e637e367a) + ++ ApplicationData_Regression.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1FCek2OOYQD887jfQz21g0ovqVuUJIjVoNI77D-Ufr9Y/edit?usp=sharing) | [[Tencent Docs]]( +https://docs.qq.com/document/DQ3BDeHhxRGNzSXZN) + ++ Data_Classification.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1xFBCYVmtZfuEAbeBljUlzqBjxVuLAt8x/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ0JUaUFsZnRaZkNG?&u=6868f96d4a384b309036e04e637e367a) + ++ ApplicationData_Classification.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1J7QvdvbbHJMlKtiumBgKDW7ALghfQQZyKGEoOqhKQjw/edit?usp=sharing) | [[Tencent Docs]](https://docs.qq.com/document/DQ2dnQWtubHRBTGtB) + ++ Data_Clustering.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1sbuJdOzGNQ2Pk-bVURfPYg1rltyBbn5J/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ3dKdGtlWkhZS2xR?&u=6868f96d4a384b309036e04e637e367a) + ++ Data_Decomposition.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1kix82qj5--vhnm8-KhuUBH9dqYH6zcY8/edit?usp=sharing&ouid=110717816678586054594&rtpof=true&sd=true) | [[Tencent Docs]](https://docs.qq.com/document/DQ29oZ0lhUGtZUmdN?&u=6868f96d4a384b309036e04e637e367a) + ++ Data_AbnormalDetectioon.xlsx [[Google Drive]](https://docs.google.com/spreadsheets/d/1NqTQZCkv74Sn_iOJOKRc-QnJzpaWmnzC_lET_0ZreiQ/edit?usp=sharing) | [[Tencent Docs]]( +https://docs.qq.com/document/DQ2hqQ2N2ZGlOUWlT) + +**Note**: For more detail on data preparation, please refer to our online documentation in **Model Example** under the section of **FOR USER**. + +## Running Example **How to run:** After successfully downloading, run this instruction on **command line / Jupyter Notebook / Google Colab** whatever directory it is. @@ -176,10 +225,17 @@ Copy the URL shown on the console into any browser to open the MLflow web interf For more details: Please refer to: -+ [Manual v1.1.0 for Geochemistry π - Beta (International - Google drive)](https://drive.google.com/file/d/1yryykCyWKM-Sj88fOYbOba6QkB_fu2ws/view?usp=sharing) -+ [Manual v1.1.0 for Geochemistry π - Beta (China - Tencent Docs)](https://docs.qq.com/pdf/DQ0l5d2xVd2VwcnVW?&u=6868f96d4a384b309036e04e637e367a) -+ [Geochemistry π - Download and Run the Beta Version (International - Youtube)](https://www.youtube.com/watch?v=EeVaJ3H7_AU&list=PLy8hNsI55lvh1UHjhVhqNUj3xPdV9sEiM&index=9) -+ [Geochemistry π - Download and Run the Beta Version (China - Bilibili)](https://www.bilibili.com/video/BV1UM4y1Q7Ju/?spm_id_from=333.999.0.0&vd_source=27944ab3b73a78970c1a52a5dcbb9140) +- Manual v1.1.0 for Geochemistry π - Beta [[Tencent Docs]](https://docs.qq.com/pdf/DQ0l5d2xVd2VwcnVW?&u=6868f96d4a384b309036e04e637e367a) | [[Google drive]](https://drive.google.com/file/d/1yryykCyWKM-Sj88fOYbOba6QkB_fu2ws/view?usp=sharing) + +- Geochemistry π - Download and Run the Beta Version [[Bilibili]](https://www.bilibili.com/video/BV1UM4y1Q7Ju/?spm_id_from=333.999.0.0&vd_source=27944ab3b73a78970c1a52a5dcbb9140) | [[YouTube]](https://www.youtube.com/watch?v=EeVaJ3H7_AU&list=PLy8hNsI55lvh1UHjhVhqNUj3xPdV9sEiM&index=9) + +- MLflow UI user guide - Geochemistry π v0.5.0 [[Bilibili]](https://b23.tv/CW5Rjmo) | [[YouTube]](https://www.youtube.com/watch?v=Yu1nzNeLfRY) + +The following screenshot shows the downloads and launching of our software on macOS: + +

+ Downloads and Launching on macOS +

## Roadmap @@ -236,7 +292,6 @@ The whole package is under construction and the documentation is progressively e ![Geochemistry π.png](https://github.com/ZJUEarthData/geochemistrypi/assets/97781484/e77b1f11-41ab-4354-9064-6d62cc1bf1e4) - ## Team Info **Leader:** @@ -248,7 +303,6 @@ The whole package is under construction and the documentation is progressively e + Jianming Zhao (Jamie, Zhejiang University, China) + Jianhao Sun (Jin, China University of Geosciences, Wuhan, China) -+ Kaixin Zheng (Hayne, Sun Yat-sen University, China) + Yongkang Chan (Kill-virus, Lanzhou University, China) + Mengying Ye (Mary, Jilin University, China) + Mengqi Gao (China University of Geosciences, Beijing, China) @@ -262,6 +316,9 @@ The whole package is under construction and the documentation is progressively e + Yucheng Yan (Andy, University of Sydney, Australia) + Ruitao Chang (China University of Geosciences Beijing, China) + Junchi Liao(Roceda, University of Electronic Science and Technology of China, China) ++ Panyan Weng (The University of Sydney, Australia) ++ Siqi Yao (Clara, Dongguan University of Technology, China) ++ Zhelan Lin(Lan, Fuzhou University, China) ## Join Us :) @@ -328,6 +385,7 @@ More Videos will be recorded soon. + Shengxin Wang (Samson, Lanzhou University, China) + Wenyu Zhao (Molly, Zhejiang University, China) + Qiuhao Zhao (Brad, Zhejiang University, China) ++ Kaixin Zheng (Hayne, Sun Yat-sen University, China) + Anzhou Li (Andrian, Zhejiang University, China) + Dan Hu (Notre Dame University, United States) + Xunxin Liu (Tante, China University of Geosciences, Wuhan, China) diff --git a/geochemistrypi/data_mining/data/dataset/Data_AbnormalDetection.xlsx b/geochemistrypi/data_mining/data/dataset/Data_AbnormalDetection.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..d14ffac744b8ecf8844d062a17b8843680489a74 GIT binary patch literal 44562 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 literal 0 HcmV?d00001