changeset 3:957d0bc600d3 draft default tip

planemo upload for repository https://github.com/jaidevjoshi83/gaiac commit e9587f93346c7b55e1be00bad5844bf2db3ed03d-dirty
author jay
date Thu, 10 Jul 2025 19:41:22 +0000
parents abc767b6d4f4
children
files gaiac_pm_data_pulling/.ipynb_checkpoints/Untitled-checkpoint.ipynb gaiac_pm_data_pulling/Untitled.ipynb gaiac_pm_data_pulling/gaiac_pm_data_pulling.py gaiac_sensor_performance_evaluation/gaiac_sensor_performance_evaluation.py gaiac_sensor_performance_evaluation/gaiac_sensor_performance_evaluation.xml
diffstat 5 files changed, 180 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gaiac_pm_data_pulling/.ipynb_checkpoints/Untitled-checkpoint.ipynb	Thu Jul 10 19:41:22 2025 +0000
@@ -0,0 +1,6 @@
+{
+ "cells": [],
+ "metadata": {},
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gaiac_pm_data_pulling/Untitled.ipynb	Thu Jul 10 19:41:22 2025 +0000
@@ -0,0 +1,136 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "4707b84c-b2f9-4740-bd62-a159e2c7e123",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import pandas as pd"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "id": "c9870ed9-90cc-427b-b811-bd94c6b867c9",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "a = [1,2,4,6]\n",
+    "b = [4,5,6,7]\n",
+    "\n",
+    "df = pd.DataFrame([a,b])"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "id": "502e66d5-022d-47af-a299-a918f0ebd887",
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<div>\n",
+       "<style scoped>\n",
+       "    .dataframe tbody tr th:only-of-type {\n",
+       "        vertical-align: middle;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe tbody tr th {\n",
+       "        vertical-align: top;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe thead th {\n",
+       "        text-align: right;\n",
+       "    }\n",
+       "</style>\n",
+       "<table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       "    <tr style=\"text-align: right;\">\n",
+       "      <th></th>\n",
+       "      <th>0</th>\n",
+       "      <th>1</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <th>0</th>\n",
+       "      <td>1</td>\n",
+       "      <td>4</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>1</th>\n",
+       "      <td>2</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>2</th>\n",
+       "      <td>4</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>3</th>\n",
+       "      <td>6</td>\n",
+       "      <td>7</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "   0  1\n",
+       "0  1  4\n",
+       "1  2  5\n",
+       "2  4  6\n",
+       "3  6  7"
+      ]
+     },
+     "execution_count": 8,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "df.T"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "f39e7015-3e8b-4123-8ec7-c05547ee28b1",
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.14"
+  },
+  "widgets": {
+   "application/vnd.jupyter.widget-state+json": {
+    "state": {},
+    "version_major": 2,
+    "version_minor": 0
+   }
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
--- a/gaiac_pm_data_pulling/gaiac_pm_data_pulling.py	Fri May 23 17:56:46 2025 +0000
+++ b/gaiac_pm_data_pulling/gaiac_pm_data_pulling.py	Thu Jul 10 19:41:22 2025 +0000
@@ -7,9 +7,6 @@
 from html import escape
 from urllib.parse import urljoin
 import requests
-
-log = logging.getLogger("tools.iuc.data_managers.data_manager_refgenie_pull")
-
 import urllib.request
 import json
 
@@ -57,4 +54,4 @@
 
 if __name__ == '__main__':
 
-    simulate_dynamic_options('http://iotprojects.ddns.net')
+    print(simulate_dynamic_options('http://iotprojects.ddns.net'))
--- a/gaiac_sensor_performance_evaluation/gaiac_sensor_performance_evaluation.py	Fri May 23 17:56:46 2025 +0000
+++ b/gaiac_sensor_performance_evaluation/gaiac_sensor_performance_evaluation.py	Thu Jul 10 19:41:22 2025 +0000
@@ -16,14 +16,16 @@
 import statsmodels.api as sm
 from sklearn.metrics import mean_squared_error
 import argparse
+# python 'gaiac_sensor_performance_evaluation.py' -I 'dataset_6.dat' --column_1 '4,7,11' --column_2 '1' --html_out_dir 'out_dir'  --html_file_name 'out.html'
 
 parser = argparse.ArgumentParser()
 parser.add_argument("-I", "--infile", required=True, default=None, help="Path to the input data file.")
 parser.add_argument("-c1", "--column_1", required=True, default=None, help="Name of the first column to use.")
 parser.add_argument("-c2", "--column_2", required=True, default=None, help="Name of the second column to use.")
 parser.add_argument("--html_out_dir", required=False, default=os.path.join(os.getcwd(), 'report_dir'), help="Directory to save the HTML output report (default: './report_dir').")
-parser.add_argument("--html_file_name", required=False, default="jai.html", help="Name of the HTML output file (default: 'jai.html').")
+parser.add_argument("--html_file_name", required=False, default="out.html", help="Name of the HTML output file (default: 'out.html').")
 parser.add_argument("--workdir_path", required=False, default=os.getcwd(), help="Working directory path (default: current directory).")
+parser.add_argument("--tsv_file_name", required=False, default="out.tsv", help="Name of the HTML output file (default: 'out.tsv').")
 
 args = parser.parse_args() 
 
@@ -236,12 +238,31 @@
 f.write('      </tr>'+'\n')
 f.write('<thead>'+'\n')
 
+r_value_lst = []
+r_square_lst = []
+b_lst = []
+r_lst = []
+s_lst = []
+RMSE_v_lst = []
+NRMSE_v_lst = []
+
+
 for c in args.column_1.split(','):
     _,_,r_value, r_square = Reg(df,c, args.column_2)
+
     b = Bias_abs(df, args.column_2, c)
     r, s= R(df, args.column_2, c)
     RMSE_v, NRMSE_v =  RMSE(df, args.column_2, c)
 
+    r_value_lst.append(r_value)
+    r_square_lst.append(r_square)
+    b_lst.append(b)
+    r_lst.append(r[1])
+    s_lst.append(s[1])
+    RMSE_v_lst.append(RMSE_v)
+    NRMSE_v_lst.append(NRMSE_v)
+
+
     f.write('      <tr>'+'\n')
     f.write('        <td>'+str(round(float(r[1]),2))+ u"\u00B1" +str(round(float(r[2]),2))+'</td>'+'\n')
     f.write('        <td>'+str(round(float(s[1]),2))+ u"\u00B1" +str(round(float(s[2]),2))+'</td>'+'\n')
@@ -252,6 +273,11 @@
     f.write('        <td>'+str(b)+'</td>'+'\n')
     f.write('      <tr>'+'\n')
 
+out_df = pd.DataFrame([r_value_lst, r_square_lst, b_lst, r_lst, s_lst, RMSE_v_lst, NRMSE_v_lst])
+out_df_T= out_df.T
+out_df_T.columns = ['Intercept', 'R Squre', 'Bias', 'r', 'Slop', 'RMSE', 'NRMSE' ]
+
+out_df_T.to_csv( 'out.tsv', sep="\t",  index=False)
 
 f.write(a2)
 f.close()
\ No newline at end of file
--- a/gaiac_sensor_performance_evaluation/gaiac_sensor_performance_evaluation.xml	Fri May 23 17:56:46 2025 +0000
+++ b/gaiac_sensor_performance_evaluation/gaiac_sensor_performance_evaluation.xml	Thu Jul 10 19:41:22 2025 +0000
@@ -10,7 +10,13 @@
     </requirements>
 
     <command detect_errors="exit_code"><![CDATA[
-        python '$__tool_directory__/gaiac_sensor_performance_evaluation.py' -I '$infile' --column_1 '$clm2' --column_2 '$clm1' --html_out_dir '$output2.extra_files_path'  --html_file_name '$output2'  
+
+        python '$__tool_directory__/gaiac_sensor_performance_evaluation.py' -I '$infile' --column_1 '$clm2' --column_2 '$clm1' --html_out_dir '$html_output.extra_files_path'  --html_file_name '$html_output'  --tsv_file_name '$tabular_output' 
+
+        && 
+
+        ls -a
+    
     ]]></command>
 
     <inputs>
@@ -27,20 +33,19 @@
     </inputs>
 
     <outputs>   
-        <data name='output2' format='html' label="${tool.name} on $on_string (html)" />
+        <data name='html_output' format='html' label="${tool.name} on $on_string (html)" />
+        <data name='tabular_output' format='tabular' label="${tool.name} on $on_string (tabular)" from_work_dir="out.tsv" />
     </outputs>
  
     <tests>
         <test>
             <!-- input data file -->
             <param name="infile" value="test.tsv"/>
-
             <!-- assume clm1 is the 'Reference' column, clm2 is 'SensorA' and 'SensorB' -->
             <param name="clm1" value="1"/>
             <param name="clm2" value="1,2"/>
-
             <!-- expected output html file -->
-            <output name="output2" file="testout.html" compare="contains"/>
+            <output name="html_output" file="testout.html" compare="contains"/>
         </test>
     </tests>