Skip to content

feat: suggest similar columns if column gets accessed that doesnt exist#385

Merged
jxnior01 merged 89 commits intomainfrom
203-suggest-similar-columns-if-column-gets-accessed-that-doesnt-exist
Jul 13, 2023
Merged

feat: suggest similar columns if column gets accessed that doesnt exist#385
jxnior01 merged 89 commits intomainfrom
203-suggest-similar-columns-if-column-gets-accessed-that-doesnt-exist

Conversation

@robmeth
Copy link
Copy Markdown
Contributor

@robmeth robmeth commented Jun 23, 2023

Closes #203

Summary of Changes

  • Added a method _get_similar_columns to find columns with a name similar to a given name.
  • Updated UnknownColumnNameError to allow for passing name suggestions.
  • Used these suggestions in get_column, keep_only_columns, remove_columns, rename_column, replace_column, transform_column, plot_lineplot, plot_scatterplot.

Co-authored-by: jxnior01 129027012+jxnior01@users.noreply.github.com

@robmeth robmeth requested a review from a team as a code owner June 23, 2023 12:32
@robmeth robmeth linked an issue Jun 23, 2023 that may be closed by this pull request
@lars-reimann
Copy link
Copy Markdown
Member

lars-reimann commented Jun 23, 2023

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ PYTHON black 4 0 0 0.9s
✅ PYTHON mypy 4 0 2.04s
✅ PYTHON ruff 4 0 0 0.11s
✅ REPOSITORY git_diff yes no 0.09s

See detailed report in MegaLinter reports
Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff

MegaLinter is graciously provided by OX Security

@jxnior01 jxnior01 requested a review from lars-reimann as a code owner June 23, 2023 13:24
@codecov
Copy link
Copy Markdown

codecov bot commented Jun 23, 2023

Codecov Report

Merging #385 (fdd47ca) into main (5cfba79) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main      #385   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           49        49           
  Lines         2683      2715   +32     
=========================================
+ Hits          2683      2715   +32     
Impacted Files Coverage Δ
src/safeds/data/tabular/containers/_table.py 100.00% <100.00%> (ø)
src/safeds/exceptions/_data.py 100.00% <100.00%> (ø)

jxnior01 and others added 3 commits July 13, 2023 19:50
…olumns.py

Co-authored-by: Severin Paul Höfer <84280965+zzril@users.noreply.github.com>
Co-authored-by: Severin Paul Höfer <84280965+zzril@users.noreply.github.com>
@zzril
Copy link
Copy Markdown
Contributor

zzril commented Jul 13, 2023

Concerning the update of poetry.lock: Is this safe?

When I updated this earlier in 6419940, I only (automatically) added the dependencies for levenshtein.

But now I see a later commit has also re-generated it with a newer poetry version and changed the category in every entry. Is this necessary? @lars-reimann @Marsmaennchen221

@lars-reimann
Copy link
Copy Markdown
Member

lars-reimann commented Jul 13, 2023

Concerning the update of poetry.lock: Is this safe?

When I updated this earlier in 6419940, I only (automatically) added the dependencies for levenshtein.

But now I see a later commit has also re-generated it with a newer poetry version and changed the category in every entry. Is this necessary? @lars-reimann @Marsmaennchen221

I'd suggest reverting this file back to the state of 6419940. When a new dependency gets added, the lockfile should only be changed minimally.

@zzril
Copy link
Copy Markdown
Contributor

zzril commented Jul 13, 2023

Concerning the update of poetry.lock: Is this safe?
When I updated this earlier in 6419940, I only (automatically) added the dependencies for levenshtein.
But now I see a later commit has also re-generated it with a newer poetry version and changed the category in every entry. Is this necessary? @lars-reimann @Marsmaennchen221

I'd suggest reverting this file back to the state of 6419940. When a new dependency gets added, the lockfile should only be changed minimally.

Done.

@zzril zzril dismissed their stale review July 13, 2023 20:22

Suggestions were applied.

Copy link
Copy Markdown
Member

@lars-reimann lars-reimann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes to pyproject.toml and poetry.lock are OK. I didn't review the rest.

@jxnior01 jxnior01 merged commit 6a097a4 into main Jul 13, 2023
@jxnior01 jxnior01 deleted the 203-suggest-similar-columns-if-column-gets-accessed-that-doesnt-exist branch July 13, 2023 20:38
lars-reimann pushed a commit that referenced this pull request Jul 13, 2023
## [0.15.0](v0.14.0...v0.15.0) (2023-07-13)

### Features

* Add copy method for tables ([#405](#405)) ([72e87f0](72e87f0)), closes [#275](#275)
* add gaussian noise to image ([#430](#430)) ([925a505](925a505)), closes [#381](#381)
* add schema conversions when adding new rows to a table and schema conversion when creating a new table ([#432](#432)) ([6e9ff69](6e9ff69)), closes [#404](#404) [#322](#322) [#127](#127) [#322](#322) [#127](#127)
* add test for empty tables for the method `Table.sort_rows` ([#431](#431)) ([f94b768](f94b768)), closes [#402](#402)
* added color adjustment feature ([#409](#409)) ([2cbee36](2cbee36)), closes [#380](#380)
* added test_repr table tests ([#410](#410)) ([cb77790](cb77790)), closes [#349](#349)
* discretize table ([#327](#327)) ([5e3da8d](5e3da8d)), closes [#143](#143)
* Improve error handling of TaggedTable ([#450](#450)) ([c5da544](c5da544)), closes [#150](#150)
* Maintain tagging in methods inherited from `Table` class ([#332](#332)) ([bc73a6c](bc73a6c)), closes [#58](#58)
* new error class `OutOfBoundsError` ([#438](#438)) ([1f37e4a](1f37e4a)), closes [#262](#262)
* rename several `Table` methods for consistency ([#445](#445)) ([9954986](9954986)), closes [#439](#439)
* suggest similar columns if column gets accessed that doesnt exist ([#385](#385)) ([6a097a4](6a097a4)), closes [#203](#203)

### Bug Fixes

* added the missing ids in parameterized tests ([#412](#412)) ([dab6419](dab6419)), closes [#362](#362)
* don't warn if `Imputer` transforms column without missing values ([#448](#448)) ([f0cb6a5](f0cb6a5))
* Warnings raised by underlying seaborn and numpy libraries  ([#425](#425)) ([c4143af](c4143af)), closes [#357](#357)
@lars-reimann
Copy link
Copy Markdown
Member

🎉 This PR is included in version 0.15.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@lars-reimann lars-reimann added the released Included in a release label Jul 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

released Included in a release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Suggest similar columns if column gets accessed that doesn't exist

6 participants