Giter Site home page Giter Site logo

data-playground-desktop's Introduction

To start off, clone this branch of the repo into your local:

git clone -b main --single-branch https://github.com/aL0NEW0LF/data-playground-desktop

After cloning the project, activate the env:

.venv\Scripts\activate

You can run the following command to install the dependencies:

pip3 install -r requirements.txt

Then run the main file with:

python main.py

2 sets of data are included, for users to test the app, first one is the titanic dataset to test all features of the app, second one is the same dataset but cleaned so the user can test training and testing the model directly.

Important

The work flow will be as follows:

After starting the app:

  1. Choose your wanted ML algorithm
  2. Upload data
  3. Choose your target column
  4. Proccess & visualize your data
  5. Split your dataset into training & testing data
  6. Train & test your model, then see results

Note

TODO

  • Choose target column right after uploading data
  • Variance threshold feature selection
  • More data processing
  • More plots if possible
  • Better error handling & conditions handling
  • Add training & testing the model without spliting the data
  • Model configuration
  • Model, metrics & data visualization after training
  • Better UI
  • Import ML model to use
  • Add log file to record every step of the process and be able to return
  • Fix the 'K-means' workflow, with more visualization of the results
  • Add 3d and violent visualization
  • Choose what form you want to save your file
  • Add more regression models
  • Add regression metrics plots
  • Add a button to show the dataset info and description and different metrics on click
  • Add a way predict for new datasets
  • Add a way to create a new dataset or line of data
  • Save the label encoder used to later reverse transform future predictions
  • Choose the column where you want to handle missing values

data-playground-desktop's People

Contributors

al0new0lf avatar abd-ibn avatar

Stargazers

Ahmed Samady avatar

Watchers

 avatar

data-playground-desktop's Issues

bug: invalid command name "2290026746176update"

after testing the model, plotting and closing the app,
image
i get this bug:
image
The program is trying to execute a command called 2577533870784update, but this command does not exist. This command looks like it might be the result of some kind of string concatenation error, where a memory address (the number) is being concatenated with a command name (update). This could be happening if you're trying to update a widget after it has been destroyed.

bug: visualization

When you apply features selection with variance threshold on the dataset, and try to visualize the dataset, i get this error:

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Python311\Lib\tkinter\__init__.py", line 1948, in __call__
    return self.func(*args)
           ^^^^^^^^^^^^^^^^
  File "D:\FST\MST - AIDS\S1\ADVANCED PYTHON\data-playground-desktop\.venv\Lib\site-packages\customtkinter\windows\widgets\ctk_button.py", line 554, in _clicked
    self._command()
  File "D:\FST\MST - AIDS\S1\ADVANCED PYTHON\data-playground-desktop\main.py", line 218, in <lambda>
    self.VisualizeButton = ctk.CTkButton(ButtonsFrame, text="Visualize", command=lambda: self.VisPageSwitch(controller=controller), state='disabled', corner_radius=0, text_color="#101010", bg_color="#FFFFFF", fg_color="#FFFFFF", font=SMALLFONT, hover_color="#F0F0F0", height=48)
                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\FST\MST - AIDS\S1\ADVANCED PYTHON\data-playground-desktop\main.py", line 350, in VisPageSwitch
    app.frames[VisualizationPage].ColumnXCombobox.configure(values=get_dataframe_columns(DATA.file_data))
  File "D:\FST\MST - AIDS\S1\ADVANCED PYTHON\data-playground-desktop\.venv\Lib\site-packages\customtkinter\windows\widgets\ctk_optionmenu.py", line 273, in configure
    self._dropdown_menu.configure(values=self._values)
  File "D:\FST\MST - AIDS\S1\ADVANCED PYTHON\data-playground-desktop\.venv\Lib\site-packages\customtkinter\windows\widgets\core_widget_classes\dropdown_menu.py", line 147, in configure
    self._add_menu_commands()
  File "D:\FST\MST - AIDS\S1\ADVANCED PYTHON\data-playground-desktop\.venv\Lib\site-packages\customtkinter\windows\widgets\core_widget_classes\dropdown_menu.py", line 100, in _add_menu_commands
    self.add_command(label=value.ljust(self._min_character_width),
                           ^^^^^^^^^^^
AttributeError: 'int' object has no attribute 'ljust'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.