From 84f08f24c6afcfaf5cbcc9cf0012dda493607e73 Mon Sep 17 00:00:00 2001 From: Jesselyn Mu <90194068+jesselynmu@users.noreply.github.com> Date: Sat, 1 Feb 2025 12:36:28 +0700 Subject: [PATCH] design layout fix --- App.py | 33 +- X_train.csv | 14182 ++++++++++------------- asset/sitemap.png | Bin 36462 -> 32194 bytes login.py | 2 +- notebook/preprocessed_data_train_1.csv | 9241 +++++++++++++++ notebook/train-rus.ipynb | 205 +- notebook/train_regression.ipynb | 238 +- pages/home.py | 17 +- pages/prediction.py | 34 - 9 files changed, 15417 insertions(+), 8535 deletions(-) create mode 100644 notebook/preprocessed_data_train_1.csv diff --git a/App.py b/App.py index 5e44886..0d1e142 100644 --- a/App.py +++ b/App.py @@ -10,17 +10,13 @@ from pages.exploration import show_exploration from pages.karyawan_komen import show_karyawan_komen from pages.pimpinan_exploration import show_pimpinan_exploration -# Set konfigurasi halaman sebagai perintah pertama -st.set_page_config(page_title="Aplikasi Prediksi Retensi Karyawan", layout="wide", initial_sidebar_state="collapsed") +st.set_page_config(page_title="TALENTRA", layout="wide", initial_sidebar_state="collapsed") -# Tambahkan direktori 'App' ke sys.path sys.path.append(os.path.dirname(os.path.abspath(__file__))) -# Import halaman dari folder pages import pages as pg -# Import halaman dari root directory -from login import show_login # Impor dari file login.py di root directory +from login import show_login parent_dir = os.path.dirname(os.path.abspath(__file__)) logo_path = os.path.join(parent_dir, "asset/logo.png") @@ -51,7 +47,6 @@ st.markdown( unsafe_allow_html=True, ) -# CSS untuk mengubah warna latar belakang background_style = """ \n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
employee_iddomisilijenis_kelamindate_of_birthjoin_dateresign_datemarriage_statdependanteducationabsent_90Davg_time_workdepartemenpositionincometotal_kompjob_satisfactionperformance_ratingchurn_status
0EM0001Kabupaten BogorLaki-laki1970-09-102024-01-04NaNMarried2S11.09.34Engineering & ITJunior5198046NaN220
1EM0002Kota Jakarta SelatanLaki-laki1980-12-092021-01-052023-04-22Married3SLTA11.09.86Service & SupportStaff1281761NaN121
2EM0003TangerangLaki-laki1987-04-252022-01-172024-01-31Single0D23.09.66Creative & DesignStaff4902208NaN131
3EM0004Kepulauan SeribuLaki-laki1975-12-242022-01-26NaNMarried1S11.09.54MarketingJunior6410492NaN210
4EM0005Kota Jakarta UtaraLaki-laki1987-06-152022-01-312023-02-21Single0SLTA1.09.14OperationsStaff1208627NaN221
\n", - "" - ], - "text/plain": [ - " employee_id domisili jenis_kelamin date_of_birth join_date \\\n", - "0 EM0001 Kabupaten Bogor Laki-laki 1970-09-10 2024-01-04 \n", - "1 EM0002 Kota Jakarta Selatan Laki-laki 1980-12-09 2021-01-05 \n", - "2 EM0003 Tangerang Laki-laki 1987-04-25 2022-01-17 \n", - "3 EM0004 Kepulauan Seribu Laki-laki 1975-12-24 2022-01-26 \n", - "4 EM0005 Kota Jakarta Utara Laki-laki 1987-06-15 2022-01-31 \n", - "\n", - " resign_date marriage_stat dependant education absent_90D avg_time_work \\\n", - "0 NaN Married 2 S1 1.0 9.34 \n", - "1 2023-04-22 Married 3 SLTA 11.0 9.86 \n", - "2 2024-01-31 Single 0 D2 3.0 9.66 \n", - "3 NaN Married 1 S1 1.0 9.54 \n", - "4 2023-02-21 Single 0 SLTA 1.0 9.14 \n", - "\n", - " departemen position income total_komp job_satisfaction \\\n", - "0 Engineering & IT Junior 5198046 NaN 2 \n", - "1 Service & Support Staff 1281761 NaN 1 \n", - "2 Creative & Design Staff 4902208 NaN 1 \n", - "3 Marketing Junior 6410492 NaN 2 \n", - "4 Operations Staff 1208627 NaN 2 \n", - "\n", - " performance_rating churn_status \n", - "0 2 0 \n", - "1 2 1 \n", - "2 3 1 \n", - "3 1 0 \n", - "4 2 1 " - ] - }, - "execution_count": 1, - "metadata": {}, - "output_type": "execute_result" + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\lib\\site-packages\\numpy\\__init__.py:148: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service\n", + " from . import _distributor_init\n" + ] + }, + { + "ename": "ImportError", + "evalue": "Unable to import required dependencies:\nnumpy: \n\nIMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!\n\nImporting the numpy C-extensions failed. This error can happen for\nmany reasons, often due to issues with your setup or how NumPy was\ninstalled.\n\nWe have compiled some common reasons and troubleshooting tips at:\n\n https://numpy.org/devdocs/user/troubleshooting-importerror.html\n\nPlease note and check the following:\n\n * The Python version is: Python3.10 from \"c:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\python.exe\"\n * The NumPy version is: \"1.21.5\"\n\nand make sure that they are the versions you expect.\nPlease carefully study the documentation linked above for further help.\n\nOriginal error was: No module named 'numpy.core._multiarray_umath'\n", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mImportError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[1], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mpandas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mpd\u001b[39;00m\n\u001b[0;32m 2\u001b[0m data \u001b[38;5;241m=\u001b[39m pd\u001b[38;5;241m.\u001b[39mread_csv(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mD:\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mTugas Akhir\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mCodingan\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mDevelopment\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mApp\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124motebook\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mpreprocessed_data_train_1.csv\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m 3\u001b[0m data\u001b[38;5;241m.\u001b[39mhead()\n", + "File \u001b[1;32mc:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\lib\\site-packages\\pandas\\__init__.py:16\u001b[0m\n\u001b[0;32m 13\u001b[0m missing_dependencies\u001b[38;5;241m.\u001b[39mappend(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mdependency\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00me\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m 15\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m missing_dependencies:\n\u001b[1;32m---> 16\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mImportError\u001b[39;00m(\n\u001b[0;32m 17\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mUnable to import required dependencies:\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;241m.\u001b[39mjoin(missing_dependencies)\n\u001b[0;32m 18\u001b[0m )\n\u001b[0;32m 19\u001b[0m \u001b[38;5;28;01mdel\u001b[39;00m hard_dependencies, dependency, missing_dependencies\n\u001b[0;32m 21\u001b[0m \u001b[38;5;66;03m# numpy compat\u001b[39;00m\n", + "\u001b[1;31mImportError\u001b[0m: Unable to import required dependencies:\nnumpy: \n\nIMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!\n\nImporting the numpy C-extensions failed. This error can happen for\nmany reasons, often due to issues with your setup or how NumPy was\ninstalled.\n\nWe have compiled some common reasons and troubleshooting tips at:\n\n https://numpy.org/devdocs/user/troubleshooting-importerror.html\n\nPlease note and check the following:\n\n * The Python version is: Python3.10 from \"c:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\python.exe\"\n * The NumPy version is: \"1.21.5\"\n\nand make sure that they are the versions you expect.\nPlease carefully study the documentation linked above for further help.\n\nOriginal error was: No module named 'numpy.core._multiarray_umath'\n" + ] } ], "source": [ "import pandas as pd\n", - "data = pd.read_csv('D:\\Tugas Akhir\\Codingan\\Development\\Data\\data_train.csv')\n", + "data = pd.read_csv('D:\\Tugas Akhir\\Codingan\\Development\\App\\notebook\\preprocessed_data_train_1.csv')\n", "data.head()" ] }, @@ -5375,7 +5210,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.18" + "version": "3.10.16" } }, "nbformat": 4, diff --git a/notebook/train_regression.ipynb b/notebook/train_regression.ipynb index 2eb73d7..206cebd 100644 --- a/notebook/train_regression.ipynb +++ b/notebook/train_regression.ipynb @@ -23,224 +23,24 @@ }, "outputs": [ { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
employee_iddomisilijenis_kelamindate_of_birthjoin_dateresign_datemarriage_statdependanteducationabsent_90D...active_work_categorywork_stability_scoremarried_dependent_ratioposition_scorejob_income_position_scoreeducation_scoreeducation_income_ratioweighted_satisfaction_performanceresign_risk_indicatoradjusted_work_time
0EM0001Kabupaten BogorLaki-laki1970-09-102024-01-042024-10-31Married2S11.0...Short-term5.00322599023.051.039609e+062.0Medium9.329634
1EM0002Kota Jakarta SelatanLaki-laki1980-12-092021-01-052023-04-22Married3SLTA11.0...Mid-term2.25411281761.011.281761e+061.4Medium9.815385
2EM0003TangerangLaki-laki1987-04-252022-01-172024-01-31Single0D23.0...Mid-term6.00114902208.031.634069e+061.8Medium9.646590
3EM0004Kepulauan SeribuLaki-laki1975-12-242022-01-262024-10-31Married1S11.0...Mid-term16.50223205246.051.282098e+061.6Medium9.536789
4EM0005Kota Jakarta UtaraLaki-laki1987-06-152022-01-312023-02-21Single0SLTA1.0...Mid-term6.00111208627.011.208627e+062.0Medium9.131545
\n", - "

5 rows × 37 columns

\n", - "
" - ], - "text/plain": [ - " employee_id domisili jenis_kelamin date_of_birth join_date \\\n", - "0 EM0001 Kabupaten Bogor Laki-laki 1970-09-10 2024-01-04 \n", - "1 EM0002 Kota Jakarta Selatan Laki-laki 1980-12-09 2021-01-05 \n", - "2 EM0003 Tangerang Laki-laki 1987-04-25 2022-01-17 \n", - "3 EM0004 Kepulauan Seribu Laki-laki 1975-12-24 2022-01-26 \n", - "4 EM0005 Kota Jakarta Utara Laki-laki 1987-06-15 2022-01-31 \n", - "\n", - " resign_date marriage_stat dependant education absent_90D ... \\\n", - "0 2024-10-31 Married 2 S1 1.0 ... \n", - "1 2023-04-22 Married 3 SLTA 11.0 ... \n", - "2 2024-01-31 Single 0 D2 3.0 ... \n", - "3 2024-10-31 Married 1 S1 1.0 ... \n", - "4 2023-02-21 Single 0 SLTA 1.0 ... \n", - "\n", - " active_work_category work_stability_score married_dependent_ratio \\\n", - "0 Short-term 5.00 3 \n", - "1 Mid-term 2.25 4 \n", - "2 Mid-term 6.00 1 \n", - "3 Mid-term 16.50 2 \n", - "4 Mid-term 6.00 1 \n", - "\n", - " position_score job_income_position_score education_score \\\n", - "0 2 2599023.0 5 \n", - "1 1 1281761.0 1 \n", - "2 1 4902208.0 3 \n", - "3 2 3205246.0 5 \n", - "4 1 1208627.0 1 \n", - "\n", - " education_income_ratio weighted_satisfaction_performance \\\n", - "0 1.039609e+06 2.0 \n", - "1 1.281761e+06 1.4 \n", - "2 1.634069e+06 1.8 \n", - "3 1.282098e+06 1.6 \n", - "4 1.208627e+06 2.0 \n", - "\n", - " resign_risk_indicator adjusted_work_time \n", - "0 Medium 9.329634 \n", - "1 Medium 9.815385 \n", - "2 Medium 9.646590 \n", - "3 Medium 9.536789 \n", - "4 Medium 9.131545 \n", - "\n", - "[5 rows x 37 columns]" - ] - }, - "execution_count": 1, - "metadata": {}, - "output_type": "execute_result" + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\lib\\site-packages\\numpy\\__init__.py:148: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service\n", + " from . import _distributor_init\n" + ] + }, + { + "ename": "ImportError", + "evalue": "Unable to import required dependencies:\nnumpy: \n\nIMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!\n\nImporting the numpy C-extensions failed. This error can happen for\nmany reasons, often due to issues with your setup or how NumPy was\ninstalled.\n\nWe have compiled some common reasons and troubleshooting tips at:\n\n https://numpy.org/devdocs/user/troubleshooting-importerror.html\n\nPlease note and check the following:\n\n * The Python version is: Python3.10 from \"c:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\python.exe\"\n * The NumPy version is: \"1.21.5\"\n\nand make sure that they are the versions you expect.\nPlease carefully study the documentation linked above for further help.\n\nOriginal error was: No module named 'numpy.core._multiarray_umath'\n", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mImportError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[1], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mpandas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mpd\u001b[39;00m\n\u001b[0;32m 3\u001b[0m df \u001b[38;5;241m=\u001b[39m pd\u001b[38;5;241m.\u001b[39mread_csv(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mD:\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mTugas Akhir\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mCodingan\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mDevelopment\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mData\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mpreprocessed_data_train.csv\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m 4\u001b[0m df\u001b[38;5;241m.\u001b[39mhead()\n", + "File \u001b[1;32mc:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\lib\\site-packages\\pandas\\__init__.py:16\u001b[0m\n\u001b[0;32m 13\u001b[0m missing_dependencies\u001b[38;5;241m.\u001b[39mappend(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mdependency\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00me\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m 15\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m missing_dependencies:\n\u001b[1;32m---> 16\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mImportError\u001b[39;00m(\n\u001b[0;32m 17\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mUnable to import required dependencies:\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;241m.\u001b[39mjoin(missing_dependencies)\n\u001b[0;32m 18\u001b[0m )\n\u001b[0;32m 19\u001b[0m \u001b[38;5;28;01mdel\u001b[39;00m hard_dependencies, dependency, missing_dependencies\n\u001b[0;32m 21\u001b[0m \u001b[38;5;66;03m# numpy compat\u001b[39;00m\n", + "\u001b[1;31mImportError\u001b[0m: Unable to import required dependencies:\nnumpy: \n\nIMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!\n\nImporting the numpy C-extensions failed. This error can happen for\nmany reasons, often due to issues with your setup or how NumPy was\ninstalled.\n\nWe have compiled some common reasons and troubleshooting tips at:\n\n https://numpy.org/devdocs/user/troubleshooting-importerror.html\n\nPlease note and check the following:\n\n * The Python version is: Python3.10 from \"c:\\Users\\Jesselyn Mu\\anaconda3\\envs\\myenv\\python.exe\"\n * The NumPy version is: \"1.21.5\"\n\nand make sure that they are the versions you expect.\nPlease carefully study the documentation linked above for further help.\n\nOriginal error was: No module named 'numpy.core._multiarray_umath'\n" + ] } ], "source": [ @@ -2199,7 +1999,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.18" + "version": "3.10.16" } }, "nbformat": 4, diff --git a/pages/home.py b/pages/home.py index 42574c0..a932acc 100644 --- a/pages/home.py +++ b/pages/home.py @@ -241,11 +241,13 @@ def show_home():

Bagian Aplikasi

- Aplikasi ini dirancang untuk mendukung prediksi retensi karyawan dan pengelolaan data dengan fitur-fitur yang terstruktur berdasarkan peran pengguna. - Halaman login menjadi pintu masuk utama untuk autentikasi, setelah itu pengguna diarahkan ke halaman sesuai perannya: admin, karyawan, atau pimpinan. - Admin memiliki akses ke halaman prediksi untuk analisis data, dashboard untuk memantau statistik, dan halaman laporan untuk melihat detail data. - Karyawan dapat mengisi form kepuasan kerja untuk memberikan umpan balik terkait pengalaman mereka. - Sementara itu, pimpinan dapat menggunakan dashboard untuk melihat data strategis serta mengisi form penilaian kinerja guna mengevaluasi performa karyawan. + Aplikasi ini dirancang untuk mendukung prediksi retensi karyawan dan pengelolaan data + dengan fitur-fitur yang terstruktur berdasarkan peran pengguna. + Dimulai dari Halaman Utama, pengguna diarahkan ke Halaman Login, + yang kemudian membagi akses berdasarkan peran: Admin, Karyawan, dan Pimpinan. + Admin memiliki akses ke Halaman Prediksi, Halaman Dashboard, dan Halaman Laporan untuk mengelola data dan analisis. + Karyawan dapat mengisi Form Kepuasan Kerja dan Form Komplain untuk memberikan feedback dan keluhan. + Pimpinan memiliki akses ke Form Penilaian untuk evaluasi serta Halaman Dashboard untuk melihat data yang relevan. Aplikasi ini dirancang untuk mempermudah pengelolaan dan pengambilan keputusan berbasis data.

@@ -254,7 +256,6 @@ def show_home(): unsafe_allow_html=True ) - # Berita dan Informasi st.markdown( f"""
@@ -274,7 +275,6 @@ def show_home(): unsafe_allow_html=True ) - # Footer st.markdown( """