quick-sentiments 0.2.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- quick_sentiments-0.2.6/PKG-INFO +118 -0
- quick_sentiments-0.2.6/README.md +81 -0
- quick_sentiments-0.2.6/pyproject.toml +54 -0
- quick_sentiments-0.2.6/quick_sentiments/__init__.py +8 -0
- quick_sentiments-0.2.6/quick_sentiments/ml_algo/XGB.py +91 -0
- quick_sentiments-0.2.6/quick_sentiments/ml_algo/__init__.py +0 -0
- quick_sentiments-0.2.6/quick_sentiments/ml_algo/logit.py +60 -0
- quick_sentiments-0.2.6/quick_sentiments/ml_algo/nn.py +62 -0
- quick_sentiments-0.2.6/quick_sentiments/ml_algo/rf.py +67 -0
- quick_sentiments-0.2.6/quick_sentiments/pipeline.py +130 -0
- quick_sentiments-0.2.6/quick_sentiments/predict.py +56 -0
- quick_sentiments-0.2.6/quick_sentiments/preprocess.py +195 -0
- quick_sentiments-0.2.6/quick_sentiments/spacy_preprocess.py +135 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/BOW.py +36 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/__init__.py +0 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/glove_100.py +46 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/glove_200.py +46 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/glove_25.py +46 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/glove_50.py +46 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/tf.py +51 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/tfidf.py +42 -0
- quick_sentiments-0.2.6/quick_sentiments/vect/wv.py +49 -0
- quick_sentiments-0.2.6/quick_sentiments/virtual_environment_setup.py +102 -0
- quick_sentiments-0.2.6/quick_sentiments.egg-info/PKG-INFO +118 -0
- quick_sentiments-0.2.6/quick_sentiments.egg-info/SOURCES.txt +793 -0
- quick_sentiments-0.2.6/quick_sentiments.egg-info/dependency_links.txt +1 -0
- quick_sentiments-0.2.6/quick_sentiments.egg-info/requires.txt +14 -0
- quick_sentiments-0.2.6/quick_sentiments.egg-info/top_level.txt +5 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/_distutils_hack/__init__.py +222 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/_distutils_hack/override.py +1 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/__init__.py +39 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/__main__.py +455 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_builder.py +355 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_compat/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_compat/importlib.py +22 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_compat/tarfile.py +32 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_compat/tomllib.py +16 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_ctx.py +98 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_exceptions.py +65 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_types.py +23 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/_util.py +63 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/env.py +372 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/py.typed +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/build/util.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/__init__.py +7 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/ansi.py +102 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/ansitowin32.py +277 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/initialise.py +121 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/__init__.py +1 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/ansi_test.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/ansitowin32_test.py +294 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/initialise_test.py +189 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/isatty_test.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/utils.py +49 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/tests/winterm_test.py +131 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/win32.py +180 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/colorama/winterm.py +195 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/__init__.py +15 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/_elffile.py +109 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/_manylinux.py +262 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/_musllinux.py +85 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/_parser.py +353 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/_structures.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/_tokenizer.py +195 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/licenses/__init__.py +145 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/licenses/_spdx.py +759 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/markers.py +362 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/metadata.py +862 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/py.typed +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/requirements.py +91 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/specifiers.py +1019 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/tags.py +656 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/utils.py +163 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/packaging/version.py +582 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/__init__.py +13 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/__main__.py +24 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/__pip-runner__.py +50 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/__init__.py +19 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/build_env.py +311 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cache.py +292 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/__init__.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/autocompletion.py +171 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/base_command.py +236 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/cmdoptions.py +1074 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/command_context.py +27 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/main.py +79 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/main_parser.py +134 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/parser.py +294 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/progress_bars.py +68 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/req_command.py +508 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/spinners.py +159 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/cli/status_codes.py +6 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/__init__.py +132 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/cache.py +222 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/check.py +54 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/completion.py +121 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/configuration.py +282 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/debug.py +199 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/download.py +147 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/freeze.py +108 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/hash.py +59 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/help.py +41 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/index.py +139 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/inspect.py +92 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/install.py +778 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/list.py +368 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/search.py +174 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/show.py +189 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/uninstall.py +113 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/commands/wheel.py +183 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/configuration.py +381 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/distributions/__init__.py +21 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/distributions/base.py +39 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/distributions/installed.py +23 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/distributions/sdist.py +150 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/distributions/wheel.py +34 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/exceptions.py +733 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/index/__init__.py +2 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/index/collector.py +505 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/index/package_finder.py +1029 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/index/sources.py +223 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/locations/__init__.py +467 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/locations/_distutils.py +173 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/locations/_sysconfig.py +213 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/locations/base.py +81 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/main.py +12 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/__init__.py +127 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/_json.py +84 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/base.py +688 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/importlib/__init__.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/importlib/_compat.py +55 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py +224 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py +188 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/metadata/pkg_resources.py +270 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/__init__.py +2 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/candidate.py +34 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/direct_url.py +237 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/format_control.py +80 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/index.py +28 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/installation_report.py +53 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/link.py +581 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/scheme.py +31 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/search_scope.py +132 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/selection_prefs.py +51 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/target_python.py +110 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/models/wheel.py +92 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/__init__.py +2 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/auth.py +561 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/cache.py +69 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/download.py +186 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/lazy_wheel.py +210 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/session.py +519 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/utils.py +96 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/network/xmlrpc.py +60 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/build_tracker.py +124 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/metadata.py +39 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/metadata_legacy.py +74 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/wheel.py +37 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/wheel_editable.py +46 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/build/wheel_legacy.py +102 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/check.py +187 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/freeze.py +255 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/install/__init__.py +2 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/install/editable_legacy.py +46 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/install/wheel.py +740 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/operations/prepare.py +743 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/pyproject.py +179 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/req/__init__.py +92 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/req/constructors.py +506 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/req/req_file.py +552 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/req/req_install.py +874 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/req/req_set.py +119 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/req/req_uninstall.py +650 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/base.py +20 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +600 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +141 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +555 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +730 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +155 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +255 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py +80 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py +165 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +299 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/self_outdated_check.py +242 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/_log.py +38 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/appdirs.py +52 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/compat.py +63 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/compatibility_tags.py +165 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/datetime.py +11 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/deprecation.py +120 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/egg_link.py +72 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/encoding.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/entrypoints.py +84 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/filesystem.py +153 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/filetypes.py +27 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/glibc.py +88 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/hashes.py +151 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/inject_securetransport.py +35 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/logging.py +348 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/misc.py +735 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/models.py +39 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/packaging.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/setuptools_build.py +146 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/subprocess.py +260 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/temp_dir.py +246 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/unpacking.py +257 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/urls.py +62 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/virtualenv.py +104 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/utils/wheel.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/vcs/__init__.py +15 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/vcs/bazaar.py +112 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/vcs/git.py +526 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/vcs/mercurial.py +163 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/vcs/subversion.py +324 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +705 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_internal/wheel_builder.py +355 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/__init__.py +120 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py +18 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py +137 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/cache.py +65 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +9 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +188 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +39 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/compat.py +32 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/controller.py +439 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py +111 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py +139 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py +190 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py +33 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/certifi/__init__.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/certifi/__main__.py +12 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/certifi/core.py +108 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/__init__.py +115 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/big5freq.py +386 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/big5prober.py +47 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/chardistribution.py +261 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/charsetgroupprober.py +106 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/charsetprober.py +147 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/cli/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/cli/chardetect.py +112 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/codingstatemachine.py +90 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/codingstatemachinedict.py +19 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/cp949prober.py +49 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/enums.py +85 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/escprober.py +102 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/escsm.py +261 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/eucjpprober.py +102 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/euckrfreq.py +196 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/euckrprober.py +47 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/euctwfreq.py +388 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/euctwprober.py +47 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/gb2312freq.py +284 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/gb2312prober.py +47 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/hebrewprober.py +316 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/jisfreq.py +325 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/johabfreq.py +2382 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/johabprober.py +47 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/jpcntx.py +238 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langbulgarianmodel.py +4649 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langgreekmodel.py +4397 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langhebrewmodel.py +4380 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langhungarianmodel.py +4649 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langrussianmodel.py +5725 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langthaimodel.py +4380 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/langturkishmodel.py +4380 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/latin1prober.py +147 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/macromanprober.py +162 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/mbcharsetprober.py +95 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/mbcsgroupprober.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/mbcssm.py +661 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/metadata/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/metadata/languages.py +352 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/resultdict.py +16 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/sbcharsetprober.py +162 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/sbcsgroupprober.py +88 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/sjisprober.py +105 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/universaldetector.py +362 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/utf1632prober.py +225 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/utf8prober.py +82 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/chardet/version.py +9 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/__init__.py +7 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/ansi.py +102 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/ansitowin32.py +277 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/initialise.py +121 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/__init__.py +1 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/ansi_test.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/ansitowin32_test.py +294 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/initialise_test.py +189 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/isatty_test.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/utils.py +49 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/tests/winterm_test.py +131 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/win32.py +180 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/colorama/winterm.py +195 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/__init__.py +23 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/compat.py +1116 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/database.py +1350 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/index.py +508 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/locators.py +1300 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/manifest.py +393 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/markers.py +152 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/metadata.py +1076 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/resources.py +358 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/scripts.py +437 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/util.py +1932 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/version.py +739 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distlib/wheel.py +1082 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distro/__init__.py +54 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distro/__main__.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/distro/distro.py +1399 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/__init__.py +44 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/codec.py +112 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/compat.py +13 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/core.py +400 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/idnadata.py +2151 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/intranges.py +54 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/package_data.py +2 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/idna/uts46data.py +8600 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/msgpack/__init__.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/msgpack/ext.py +193 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/msgpack/fallback.py +1010 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/__about__.py +26 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/__init__.py +25 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/_manylinux.py +301 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/_musllinux.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/_structures.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/markers.py +304 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/requirements.py +146 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/specifiers.py +802 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/tags.py +487 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/utils.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/packaging/version.py +504 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py +3361 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/__init__.py +566 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/__main__.py +53 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/android.py +210 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/api.py +223 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/macos.py +91 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/unix.py +223 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/version.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/platformdirs/windows.py +255 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/__init__.py +82 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/__main__.py +17 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/cmdline.py +668 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/console.py +70 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/filter.py +71 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatter.py +124 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py +158 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/bbcode.py +108 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/groff.py +170 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/html.py +989 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/img.py +645 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/irc.py +154 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/latex.py +521 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/other.py +161 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py +83 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/rtf.py +146 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/svg.py +188 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/terminal.py +127 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/formatters/terminal256.py +338 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/lexer.py +943 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py +559 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/lexers/python.py +1198 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/modeline.py +43 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/plugin.py +88 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/scanner.py +104 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/sphinxext.py +217 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/style.py +197 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py +103 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/token.py +213 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/unistring.py +153 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pygments/util.py +330 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/__init__.py +322 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/actions.py +217 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/common.py +432 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/core.py +6115 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/diagram/__init__.py +656 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/exceptions.py +299 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/helpers.py +1100 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/results.py +796 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/testing.py +331 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/unicode.py +361 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyparsing/util.py +284 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyproject_hooks/__init__.py +23 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyproject_hooks/_compat.py +8 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyproject_hooks/_impl.py +330 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +18 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +353 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/__init__.py +182 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/__version__.py +14 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/adapters.py +538 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/api.py +157 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/auth.py +315 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/certs.py +24 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/compat.py +67 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/cookies.py +561 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/exceptions.py +141 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/help.py +131 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/hooks.py +33 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/models.py +1034 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/packages.py +16 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/sessions.py +833 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/status_codes.py +128 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/structures.py +99 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/requests/utils.py +1094 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/__init__.py +26 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +6 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/providers.py +133 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/reporters.py +43 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/resolvers.py +547 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/resolvelib/structs.py +170 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/__init__.py +177 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/__main__.py +274 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_cell_widths.py +451 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_export_format.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_extension.py +10 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_fileno.py +24 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_inspect.py +270 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_log_render.py +94 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_loop.py +43 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_null_file.py +69 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_palettes.py +309 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_pick.py +17 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_ratio.py +160 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_spinners.py +482 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_stack.py +16 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_timer.py +19 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_win32_console.py +662 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_windows.py +72 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/_wrap.py +56 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/abc.py +33 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/align.py +311 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/ansi.py +240 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/bar.py +94 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/box.py +517 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/cells.py +154 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/color.py +622 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/columns.py +187 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/console.py +2633 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/constrain.py +37 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/containers.py +167 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/control.py +225 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/default_styles.py +190 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/diagnose.py +37 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/emoji.py +96 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/errors.py +34 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/filesize.py +89 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/highlighter.py +232 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/json.py +140 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/jupyter.py +101 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/layout.py +443 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/live.py +375 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/live_render.py +113 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/logging.py +289 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/markup.py +246 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/measure.py +151 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/padding.py +141 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/pager.py +34 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/palette.py +100 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/panel.py +308 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/pretty.py +994 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/progress.py +1702 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/progress_bar.py +224 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/prompt.py +376 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/protocol.py +42 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/region.py +10 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/repr.py +149 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/rule.py +130 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/scope.py +86 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/screen.py +54 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/segment.py +739 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/spinner.py +137 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/status.py +132 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/style.py +796 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/styled.py +42 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/syntax.py +948 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/table.py +1002 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/text.py +1307 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/theme.py +115 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/themes.py +5 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/traceback.py +756 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/rich/tree.py +251 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/six.py +998 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/__init__.py +608 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/_asyncio.py +94 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/_utils.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/after.py +51 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/before.py +46 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/before_sleep.py +71 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/nap.py +43 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/retry.py +272 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/stop.py +103 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/tornadoweb.py +59 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tenacity/wait.py +228 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tomli/__init__.py +11 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tomli/_parser.py +691 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tomli/_re.py +107 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/tomli/_types.py +10 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/typing_extensions.py +3072 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/_collections.py +337 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/_version.py +2 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/connection.py +572 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +1132 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +921 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/fields.py +274 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +537 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/request.py +170 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/response.py +879 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +620 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +495 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/webencodings/__init__.py +342 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/webencodings/labels.py +231 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/webencodings/mklabels.py +59 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/webencodings/tests.py +153 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/_vendor/webencodings/x_user_defined.py +325 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pip/py.typed +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/__init__.py +3296 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/appdirs.py +608 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/__init__.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_adapters.py +170 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_common.py +104 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_compat.py +98 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_itertools.py +35 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_legacy.py +121 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/abc.py +137 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/readers.py +122 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/importlib_resources/simple.py +116 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/jaraco/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/jaraco/context.py +213 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/jaraco/functools.py +525 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/jaraco/text/__init__.py +599 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/more_itertools/__init__.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/more_itertools/more.py +4316 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/more_itertools/recipes.py +698 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/__about__.py +26 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/__init__.py +25 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/_manylinux.py +301 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/_musllinux.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/_structures.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/markers.py +304 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/requirements.py +146 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/specifiers.py +802 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/tags.py +487 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/utils.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/packaging/version.py +504 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/__init__.py +331 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/actions.py +207 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/common.py +424 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/core.py +5814 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/diagram/__init__.py +642 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/exceptions.py +267 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/helpers.py +1088 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/results.py +760 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/testing.py +331 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/unicode.py +352 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/pyparsing/util.py +235 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/_vendor/zipp.py +329 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pkg_resources/extern/__init__.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pyproject_hooks/__init__.py +31 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pyproject_hooks/_impl.py +410 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pyproject_hooks/_in_process/__init__.py +21 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pyproject_hooks/_in_process/_in_process.py +389 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/pyproject_hooks/py.typed +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/__init__.py +247 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_deprecation_warning.py +7 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/__init__.py +24 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/_collections.py +56 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/_functools.py +20 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/_macos_compat.py +12 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +572 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/archive_util.py +280 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/bcppcompiler.py +408 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/ccompiler.py +1220 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/cmd.py +436 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/__init__.py +25 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/_framework_compat.py +55 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/bdist.py +157 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/bdist_dumb.py +144 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/bdist_rpm.py +615 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/build.py +153 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/build_clib.py +208 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/build_ext.py +787 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/build_py.py +407 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/build_scripts.py +173 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/check.py +151 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/clean.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/config.py +377 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/install.py +814 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/install_data.py +84 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/install_egg_info.py +91 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/install_headers.py +45 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/install_lib.py +238 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/install_scripts.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/py37compat.py +31 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/register.py +319 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/sdist.py +531 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/command/upload.py +205 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/config.py +139 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/core.py +291 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/cygwinccompiler.py +364 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/debug.py +5 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/dep_util.py +96 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/dir_util.py +243 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/dist.py +1286 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/errors.py +127 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/extension.py +248 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/fancy_getopt.py +470 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/file_util.py +249 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/filelist.py +371 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/log.py +80 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/msvc9compiler.py +832 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/msvccompiler.py +695 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/py38compat.py +8 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/py39compat.py +22 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/spawn.py +109 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/sysconfig.py +558 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/text_file.py +287 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/unixccompiler.py +401 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/util.py +513 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/version.py +358 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_distutils/versionpredicate.py +175 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_entry_points.py +86 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_imp.py +82 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_importlib.py +47 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_itertools.py +23 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_path.py +29 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_reqs.py +19 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/__init__.py +1047 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py +68 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_collections.py +30 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_compat.py +71 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_functools.py +104 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py +73 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_meta.py +48 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_metadata/_text.py +99 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/__init__.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +170 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/_common.py +104 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/_compat.py +98 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +35 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/_legacy.py +121 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/abc.py +137 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/readers.py +122 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/importlib_resources/simple.py +116 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/jaraco/__init__.py +0 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/jaraco/context.py +213 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/jaraco/functools.py +525 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/jaraco/text/__init__.py +599 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.py +4 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/more_itertools/more.py +3824 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.py +620 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/ordered_set.py +488 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/__about__.py +26 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +25 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/_manylinux.py +301 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/_musllinux.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/_structures.py +61 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/markers.py +304 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/requirements.py +146 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +802 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/tags.py +487 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/utils.py +136 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/packaging/version.py +504 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/__init__.py +331 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/actions.py +207 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/common.py +424 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/core.py +5814 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/diagram/__init__.py +642 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/exceptions.py +267 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/helpers.py +1088 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/results.py +760 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/testing.py +331 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/unicode.py +352 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/pyparsing/util.py +235 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/tomli/__init__.py +11 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/tomli/_parser.py +691 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/tomli/_re.py +107 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/tomli/_types.py +10 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/typing_extensions.py +2296 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/_vendor/zipp.py +329 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/archive_util.py +213 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/build_meta.py +511 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/__init__.py +12 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/alias.py +78 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/bdist_egg.py +457 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/bdist_rpm.py +40 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/build.py +146 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/build_clib.py +101 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/build_ext.py +383 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/build_py.py +368 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/develop.py +193 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/dist_info.py +142 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/easy_install.py +2312 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/editable_wheel.py +844 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/egg_info.py +763 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/install.py +139 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/install_egg_info.py +63 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/install_lib.py +122 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/install_scripts.py +70 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/py36compat.py +134 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/register.py +18 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/rotate.py +64 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/saveopts.py +22 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/sdist.py +210 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/setopt.py +149 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/test.py +251 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/upload.py +17 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/command/upload_docs.py +213 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/__init__.py +35 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +377 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_validate_pyproject/__init__.py +34 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_validate_pyproject/error_reporting.py +318 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py +51 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +1035 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +259 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/expand.py +462 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/pyprojecttoml.py +493 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/config/setupcfg.py +762 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/dep_util.py +25 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/depends.py +176 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/discovery.py +600 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/dist.py +1222 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/errors.py +58 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/extension.py +148 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/extern/__init__.py +76 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/glob.py +167 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/installer.py +104 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/launch.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/logging.py +36 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/monkey.py +165 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/msvc.py +1703 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/namespaces.py +107 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/package_index.py +1126 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/py34compat.py +13 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/sandbox.py +530 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/unicode_utils.py +42 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/version.py +6 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/wheel.py +222 -0
- quick_sentiments-0.2.6/quicktest/Lib/site-packages/setuptools/windows_support.py +29 -0
- quick_sentiments-0.2.6/setup.cfg +4 -0
- quick_sentiments-0.2.6/setup.py +8 -0
- quick_sentiments-0.2.6/tests/test_preprocess.py +14 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: quick-sentiments
|
|
3
|
+
Version: 0.2.6
|
|
4
|
+
Summary: Sentiment Analysis pipeline
|
|
5
|
+
Author: Alabhya Dahal
|
|
6
|
+
Author-email: Alabhya Dahal <alabhya.dahal@gmail.com>
|
|
7
|
+
License: MIT License
|
|
8
|
+
Project-URL: Homepage, https://github.com/AlabhyaMe/Sentiments-Analysis
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
10
|
+
Classifier: Intended Audience :: Developers
|
|
11
|
+
Classifier: Intended Audience :: Science/Research
|
|
12
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
13
|
+
Classifier: Operating System :: OS Independent
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Topic :: Scientific/Engineering
|
|
19
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
20
|
+
Classifier: Topic :: Text Processing :: Linguistic
|
|
21
|
+
Requires-Python: >=3.8
|
|
22
|
+
Description-Content-Type: text/markdown
|
|
23
|
+
Requires-Dist: numpy<2.0.0,>=1.23.0
|
|
24
|
+
Requires-Dist: pandas>=1.3.0
|
|
25
|
+
Requires-Dist: scikit-learn>=1.0.0
|
|
26
|
+
Requires-Dist: polars<0.20.0,>=0.19.5
|
|
27
|
+
Requires-Dist: gensim>4.0.0
|
|
28
|
+
Requires-Dist: nltk==3.8.1
|
|
29
|
+
Requires-Dist: xgboost==3.0.2
|
|
30
|
+
Requires-Dist: scipy<2.0.0,>=1.9.0
|
|
31
|
+
Provides-Extra: dev
|
|
32
|
+
Requires-Dist: pytest>=6.0; extra == "dev"
|
|
33
|
+
Requires-Dist: black>=22.0; extra == "dev"
|
|
34
|
+
Requires-Dist: twine; extra == "dev"
|
|
35
|
+
Requires-Dist: build; extra == "dev"
|
|
36
|
+
Dynamic: author
|
|
37
|
+
|
|
38
|
+
# Quick Sentiments
|
|
39
|
+
|
|
40
|
+
## Updates
|
|
41
|
+
The package is now live!
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
!pip install quick-sentiments
|
|
45
|
+
```
|
|
46
|
+
Alternatively, you can clone the git and install it locally.
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
git clone https://github.com/AlabhyaMe/quick_sentiments.git
|
|
50
|
+
```
|
|
51
|
+
Then run the command in the command prompt or notebook where git is cloned. Make sure you are in the main directory - quick_sentiments
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
pip install .\dist\quick_sentiments-0.2.4-py3-none-any.whl # please note, sometimes I might not have updated the version number to the latest
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
This Python package is designed to streamline natural language processing (NLP) for sentiment analysis. It achieves this by combining various vectorization techniques with machine learning models. The package automates the often complex and time-consuming vectorization process, allowing users to skip the manual coding typically required for this step. Additionally, users can easily select their preferred machine learning models to conduct sentiment analysis.
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
## Features
|
|
61
|
+
|
|
62
|
+
- **End-to-End Pipeline**: Go from raw text to sentiment predictions with minimal setup.
|
|
63
|
+
- **Automated Preprocessing**: Includes robust text cleaning:
|
|
64
|
+
- Lemmatization
|
|
65
|
+
- Stop word removal
|
|
66
|
+
- Punctuation handling
|
|
67
|
+
- URL/emoji/HTML removal, etc.
|
|
68
|
+
- **Multiple Text Representation Methods**:
|
|
69
|
+
- Bag-of-Words (BoW)
|
|
70
|
+
- Term Frequency (TF)
|
|
71
|
+
- TF-IDF (Term Frequency-Inverse Document Frequency)
|
|
72
|
+
- Word Embeddings (Word2Vec - pre-trained Google News 300-dim model)
|
|
73
|
+
- Glove Embedding (25,50,100 and 200)
|
|
74
|
+
- **Multiple Machine Learning Algorithms**:
|
|
75
|
+
- Logistic Regression
|
|
76
|
+
- Random Forest
|
|
77
|
+
- XGBoost
|
|
78
|
+
- Neural Network
|
|
79
|
+
- **Hyperparameter Tuning Support**:
|
|
80
|
+
- All models are compatible with GridSearchCV.
|
|
81
|
+
- By default, models run with standard parameters for quick testing.
|
|
82
|
+
- Grid search options are built-in and ready to use if needed.
|
|
83
|
+
- **Modular Design**: Each component is cleanly separated into its own module.
|
|
84
|
+
- **Prediction on New Data**: Easily apply your trained model to new, unseen data.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## 3. INSTRUCTIONS AND DEMO
|
|
89
|
+
|
|
90
|
+
To help users get started with this package, I have documented comprehensive instructions and a demo workbook. Please begin by reviewing quick_sentiments.pdf for an introduction to the library's capabilities.
|
|
91
|
+
|
|
92
|
+
Afterward, proceed to the Demo workbook, which contains ready-to-use examples. Please ensure that your file names and column labels are accurately set before proceeding with the instructions within the workbook. As an alternative, you may directly execute the Python script, provided your files and labels are correctly configured.
|
|
93
|
+
|
|
94
|
+
### Training Data
|
|
95
|
+
|
|
96
|
+
Place your training CSV file in the `demo/training_data` folder.
|
|
97
|
+
|
|
98
|
+
- It must contain:
|
|
99
|
+
- A column for the raw input text.
|
|
100
|
+
- A column for sentiments
|
|
101
|
+
|
|
102
|
+
### New Data for Prediction
|
|
103
|
+
|
|
104
|
+
Place your new prediction CSV file in the `new_data/` folder.
|
|
105
|
+
|
|
106
|
+
- It must contain:
|
|
107
|
+
- A column named `RawTextColumn` (or another name you configure in the notebook).
|
|
108
|
+
|
|
109
|
+
## 📚 Dataset Citation
|
|
110
|
+
|
|
111
|
+
The demo uses publicly available training data from:
|
|
112
|
+
|
|
113
|
+
> Madhav Kumar Choudhary. *Sentiment Prediction on Movie Reviews*. Kaggle.
|
|
114
|
+
> [https://www.kaggle.com/datasets/madhavkumarchoudhary/sentiment-prediction-on-movie-reviews](https://www.kaggle.com/datasets/madhavkumarchoudhary/sentiment-prediction-on-movie-reviews)
|
|
115
|
+
> Accessed on: 2025- 07-15
|
|
116
|
+
|
|
117
|
+
If you use this dataset in your own work, please cite the original creator as per Kaggle's [Terms of Use](https://www.kaggle.com/terms).
|
|
118
|
+
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Quick Sentiments
|
|
2
|
+
|
|
3
|
+
## Updates
|
|
4
|
+
The package is now live!
|
|
5
|
+
|
|
6
|
+
```bash
|
|
7
|
+
!pip install quick-sentiments
|
|
8
|
+
```
|
|
9
|
+
Alternatively, you can clone the git and install it locally.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
git clone https://github.com/AlabhyaMe/quick_sentiments.git
|
|
13
|
+
```
|
|
14
|
+
Then run the command in the command prompt or notebook where git is cloned. Make sure you are in the main directory - quick_sentiments
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
pip install .\dist\quick_sentiments-0.2.4-py3-none-any.whl # please note, sometimes I might not have updated the version number to the latest
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
This Python package is designed to streamline natural language processing (NLP) for sentiment analysis. It achieves this by combining various vectorization techniques with machine learning models. The package automates the often complex and time-consuming vectorization process, allowing users to skip the manual coding typically required for this step. Additionally, users can easily select their preferred machine learning models to conduct sentiment analysis.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## Features
|
|
24
|
+
|
|
25
|
+
- **End-to-End Pipeline**: Go from raw text to sentiment predictions with minimal setup.
|
|
26
|
+
- **Automated Preprocessing**: Includes robust text cleaning:
|
|
27
|
+
- Lemmatization
|
|
28
|
+
- Stop word removal
|
|
29
|
+
- Punctuation handling
|
|
30
|
+
- URL/emoji/HTML removal, etc.
|
|
31
|
+
- **Multiple Text Representation Methods**:
|
|
32
|
+
- Bag-of-Words (BoW)
|
|
33
|
+
- Term Frequency (TF)
|
|
34
|
+
- TF-IDF (Term Frequency-Inverse Document Frequency)
|
|
35
|
+
- Word Embeddings (Word2Vec - pre-trained Google News 300-dim model)
|
|
36
|
+
- Glove Embedding (25,50,100 and 200)
|
|
37
|
+
- **Multiple Machine Learning Algorithms**:
|
|
38
|
+
- Logistic Regression
|
|
39
|
+
- Random Forest
|
|
40
|
+
- XGBoost
|
|
41
|
+
- Neural Network
|
|
42
|
+
- **Hyperparameter Tuning Support**:
|
|
43
|
+
- All models are compatible with GridSearchCV.
|
|
44
|
+
- By default, models run with standard parameters for quick testing.
|
|
45
|
+
- Grid search options are built-in and ready to use if needed.
|
|
46
|
+
- **Modular Design**: Each component is cleanly separated into its own module.
|
|
47
|
+
- **Prediction on New Data**: Easily apply your trained model to new, unseen data.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 3. INSTRUCTIONS AND DEMO
|
|
52
|
+
|
|
53
|
+
To help users get started with this package, I have documented comprehensive instructions and a demo workbook. Please begin by reviewing quick_sentiments.pdf for an introduction to the library's capabilities.
|
|
54
|
+
|
|
55
|
+
Afterward, proceed to the Demo workbook, which contains ready-to-use examples. Please ensure that your file names and column labels are accurately set before proceeding with the instructions within the workbook. As an alternative, you may directly execute the Python script, provided your files and labels are correctly configured.
|
|
56
|
+
|
|
57
|
+
### Training Data
|
|
58
|
+
|
|
59
|
+
Place your training CSV file in the `demo/training_data` folder.
|
|
60
|
+
|
|
61
|
+
- It must contain:
|
|
62
|
+
- A column for the raw input text.
|
|
63
|
+
- A column for sentiments
|
|
64
|
+
|
|
65
|
+
### New Data for Prediction
|
|
66
|
+
|
|
67
|
+
Place your new prediction CSV file in the `new_data/` folder.
|
|
68
|
+
|
|
69
|
+
- It must contain:
|
|
70
|
+
- A column named `RawTextColumn` (or another name you configure in the notebook).
|
|
71
|
+
|
|
72
|
+
## 📚 Dataset Citation
|
|
73
|
+
|
|
74
|
+
The demo uses publicly available training data from:
|
|
75
|
+
|
|
76
|
+
> Madhav Kumar Choudhary. *Sentiment Prediction on Movie Reviews*. Kaggle.
|
|
77
|
+
> [https://www.kaggle.com/datasets/madhavkumarchoudhary/sentiment-prediction-on-movie-reviews](https://www.kaggle.com/datasets/madhavkumarchoudhary/sentiment-prediction-on-movie-reviews)
|
|
78
|
+
> Accessed on: 2025- 07-15
|
|
79
|
+
|
|
80
|
+
If you use this dataset in your own work, please cite the original creator as per Kaggle's [Terms of Use](https://www.kaggle.com/terms).
|
|
81
|
+
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# pyproject.toml
|
|
2
|
+
[build-system]
|
|
3
|
+
requires = ["setuptools>=61.0", "wheel"]
|
|
4
|
+
build-backend = "setuptools.build_meta"
|
|
5
|
+
|
|
6
|
+
[project]
|
|
7
|
+
name = "quick-sentiments"
|
|
8
|
+
version = "0.2.6" # minor updates
|
|
9
|
+
authors = [
|
|
10
|
+
{ name="Alabhya Dahal", email="alabhya.dahal@gmail.com" },
|
|
11
|
+
]
|
|
12
|
+
description = "Sentiment Analysis pipeline"
|
|
13
|
+
readme = "README.md" # <--- Ensure this points to your README.md
|
|
14
|
+
license = { text = "MIT License" }
|
|
15
|
+
urls = { "Homepage" = "https://github.com/AlabhyaMe/Sentiments-Analysis" }
|
|
16
|
+
classifiers = [
|
|
17
|
+
"Development Status :: 4 - Beta",
|
|
18
|
+
"Intended Audience :: Developers",
|
|
19
|
+
"Intended Audience :: Science/Research",
|
|
20
|
+
"License :: OSI Approved :: MIT License",
|
|
21
|
+
"Operating System :: OS Independent",
|
|
22
|
+
"Programming Language :: Python :: 3",
|
|
23
|
+
"Programming Language :: Python :: 3.8",
|
|
24
|
+
"Programming Language :: Python :: 3.9",
|
|
25
|
+
"Programming Language :: Python :: 3.10",
|
|
26
|
+
"Topic :: Scientific/Engineering",
|
|
27
|
+
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
28
|
+
"Topic :: Text Processing :: Linguistic"
|
|
29
|
+
]
|
|
30
|
+
requires-python = ">=3.8"
|
|
31
|
+
dependencies = [
|
|
32
|
+
"numpy>=1.23.0 ,<2.0.0",
|
|
33
|
+
"pandas>=1.3.0",
|
|
34
|
+
"scikit-learn>=1.0.0 ",
|
|
35
|
+
"polars>=0.19.5,<0.20.0",
|
|
36
|
+
"gensim>4.0.0",
|
|
37
|
+
"nltk==3.8.1",
|
|
38
|
+
"xgboost==3.0.2",
|
|
39
|
+
"scipy>=1.9.0,<2.0.0",
|
|
40
|
+
]
|
|
41
|
+
|
|
42
|
+
[project.optional-dependencies]
|
|
43
|
+
dev = [
|
|
44
|
+
"pytest>=6.0",
|
|
45
|
+
"black>=22.0",
|
|
46
|
+
"twine",
|
|
47
|
+
"build",
|
|
48
|
+
]
|
|
49
|
+
|
|
50
|
+
[tool.setuptools.packages.find]
|
|
51
|
+
where = ["."]
|
|
52
|
+
|
|
53
|
+
[tool.setuptools.package-data]
|
|
54
|
+
"quick_sentiments" = ["*.json", "*.pkl"]
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# quick_sentiments/__init__.py
|
|
2
|
+
from .pipeline import run_pipeline # Expose pipeline function
|
|
3
|
+
from .predict import make_predictions # Expose prediction function
|
|
4
|
+
from .preprocess import pre_process # Expose preprocessing function
|
|
5
|
+
from .spacy_preprocess import pre_process_spacy
|
|
6
|
+
|
|
7
|
+
__all__ = ['run_pipeline', 'make_predictions'] # Controls what's available in *
|
|
8
|
+
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
from xgboost import XGBClassifier # Import XGBClassifier
|
|
2
|
+
from sklearn.model_selection import GridSearchCV # Import GridSearchCV
|
|
3
|
+
from sklearn.metrics import classification_report # For evaluation metrics
|
|
4
|
+
import numpy as np # For type hinting
|
|
5
|
+
|
|
6
|
+
def train_and_predict(X_train, y_train, X_test, perform_tuning: bool = True): # <--- Added perform_tuning flag
|
|
7
|
+
"""
|
|
8
|
+
Trains XGBoostClassifier model (with optional hyperparameter tuning) and predicts on test data.
|
|
9
|
+
|
|
10
|
+
Args:
|
|
11
|
+
X_train: training features (e.g., NumPy array or sparse matrix).
|
|
12
|
+
y_train: training labels (numerical, e.g., 0, 1, 2...).
|
|
13
|
+
X_test: test features (e.g., NumPy array or sparse matrix).
|
|
14
|
+
perform_tuning (bool): If True, performs GridSearchCV. If False, trains
|
|
15
|
+
the model with default parameters. Defaults to True.
|
|
16
|
+
|
|
17
|
+
Returns:
|
|
18
|
+
y_pred: predicted labels for test set.
|
|
19
|
+
best_model: The best trained XGBoostClassifier model (either from GridSearchCV or simple fit).
|
|
20
|
+
"""
|
|
21
|
+
print(" - Starting XGBoost training...")
|
|
22
|
+
|
|
23
|
+
# Determine objective and eval_metric based on number of unique classes
|
|
24
|
+
num_classes = len(np.unique(y_train))
|
|
25
|
+
|
|
26
|
+
if num_classes == 2:
|
|
27
|
+
xgb_objective = 'binary:logistic'
|
|
28
|
+
xgb_eval_metric = 'logloss'
|
|
29
|
+
scoring_metric = 'f1_weighted'
|
|
30
|
+
else:
|
|
31
|
+
xgb_objective = 'multi:softmax'
|
|
32
|
+
xgb_eval_metric = 'mlogloss'
|
|
33
|
+
scoring_metric = 'f1_weighted' # Or 'accuracy'
|
|
34
|
+
|
|
35
|
+
# Base XGBClassifier model (used for both tuning and simple fit)
|
|
36
|
+
# verbosity=0 to suppress excessive output from XGBoost itself during GridSearchCV
|
|
37
|
+
xgb_model = XGBClassifier(
|
|
38
|
+
objective=xgb_objective,
|
|
39
|
+
eval_metric=xgb_eval_metric,
|
|
40
|
+
use_label_encoder=False, # Suppress warning for newer versions
|
|
41
|
+
random_state=42,
|
|
42
|
+
num_class=num_classes if num_classes > 2 else None,
|
|
43
|
+
verbosity=0 # Suppress XGBoost internal verbosity during grid search
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
if perform_tuning:
|
|
48
|
+
print(" - Performing GridSearchCV for hyperparameter tuning...")
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
param_grid = {
|
|
52
|
+
'n_estimators': [100, 200],
|
|
53
|
+
'learning_rate': [0.05, 0.1, 0.2],
|
|
54
|
+
'max_depth': [3, 5, 7],
|
|
55
|
+
'subsample': [0.8, 1.0],
|
|
56
|
+
'colsample_bytree': [0.8, 1.0],
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
}
|
|
60
|
+
print(" - Using default parameter grid for tuning:", param_grid)
|
|
61
|
+
|
|
62
|
+
grid_search = GridSearchCV(
|
|
63
|
+
estimator=xgb_model, # Use the base xgb_model here
|
|
64
|
+
param_grid=param_grid,
|
|
65
|
+
cv=5,
|
|
66
|
+
scoring=scoring_metric,
|
|
67
|
+
n_jobs=-1,
|
|
68
|
+
verbose=1 # Print progress messages from GridSearchCV
|
|
69
|
+
)
|
|
70
|
+
|
|
71
|
+
# Fit GridSearchCV to the training data
|
|
72
|
+
grid_search.fit(X_train, y_train)
|
|
73
|
+
|
|
74
|
+
# Get the best model found by GridSearchCV
|
|
75
|
+
best_model = grid_search.best_estimator_
|
|
76
|
+
|
|
77
|
+
print("\n - Best Hyperparameters found:")
|
|
78
|
+
print(grid_search.best_params_)
|
|
79
|
+
print(f" - Best Cross-Validation Score ({scoring_metric}): {grid_search.best_score_:.4f}")
|
|
80
|
+
else:
|
|
81
|
+
|
|
82
|
+
print(" - Training XGBoost with default parameters (no hyperparameter tuning)...")
|
|
83
|
+
best_model = xgb_model # Use the base model directly
|
|
84
|
+
best_model.fit(X_train, y_train) # Fit it on X_train, y_train
|
|
85
|
+
print(" - Model trained with default parameters.")
|
|
86
|
+
|
|
87
|
+
# Make predictions on the test set using the best model (tuned or default)
|
|
88
|
+
y_pred = best_model.predict(X_test)
|
|
89
|
+
|
|
90
|
+
# Return both the predictions and the best model object
|
|
91
|
+
return y_pred, best_model
|
|
File without changes
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# MLAlgo/logistic_regression_model.py
|
|
2
|
+
|
|
3
|
+
from sklearn.linear_model import LogisticRegression
|
|
4
|
+
from sklearn.model_selection import GridSearchCV # Import GridSearchCV
|
|
5
|
+
from sklearn.metrics import classification_report # For evaluation metrics
|
|
6
|
+
import numpy as np # For type hinting
|
|
7
|
+
|
|
8
|
+
def train_and_predict(X_train, y_train, X_test,perform_tuning = False):
|
|
9
|
+
"""
|
|
10
|
+
Trains Logistic Regression model (with optional hyperparameter tuning) and predicts on test data.
|
|
11
|
+
|
|
12
|
+
Args:
|
|
13
|
+
X_train: training features (e.g., NumPy array or sparse matrix).
|
|
14
|
+
y_train: training labels (list or NumPy array).
|
|
15
|
+
X_test: test features (e.g., NumPy array or sparse matrix).
|
|
16
|
+
perform_tuning (bool): If True, performs GridSearchCV. If False, trains
|
|
17
|
+
the model with default parameters. Defaults to True.
|
|
18
|
+
|
|
19
|
+
Returns:
|
|
20
|
+
y_pred: predicted labels for test set.
|
|
21
|
+
best_model: The best trained LogisticRegression model (either from GridSearchCV or simple fit).
|
|
22
|
+
"""
|
|
23
|
+
lr_model = LogisticRegression(random_state=42) # Base model for training
|
|
24
|
+
|
|
25
|
+
if perform_tuning:
|
|
26
|
+
print(" - Starting Logistic Regression training with GridSearchCV for hyperparameter tuning...")
|
|
27
|
+
|
|
28
|
+
# Define the parameter grid to search (default grid, as no custom grid is passed here)
|
|
29
|
+
param_grid = {
|
|
30
|
+
'solver': ['liblinear', 'lbfgs'],
|
|
31
|
+
'C': [0.1, 1.0, 10.0],
|
|
32
|
+
'class_weight': [None, 'balanced'],
|
|
33
|
+
'max_iter': [500, 1000]
|
|
34
|
+
}
|
|
35
|
+
print(" - Using default parameter grid for tuning:", param_grid)
|
|
36
|
+
|
|
37
|
+
grid_search = GridSearchCV(
|
|
38
|
+
estimator=lr_model,
|
|
39
|
+
param_grid=param_grid,
|
|
40
|
+
cv=5,
|
|
41
|
+
scoring='f1_weighted',
|
|
42
|
+
n_jobs=-1,
|
|
43
|
+
verbose=1
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
grid_search.fit(X_train, y_train)
|
|
47
|
+
best_model = grid_search.best_estimator_
|
|
48
|
+
print("\n - Best Hyperparameters found:")
|
|
49
|
+
print(grid_search.best_params_)
|
|
50
|
+
print(f" - Best Cross-Validation Score (F1-weighted): {grid_search.best_score_:.4f}")
|
|
51
|
+
else:
|
|
52
|
+
print(" - Training Logistic Regression with default parameters (no hyperparameter tuning)...")
|
|
53
|
+
best_model = lr_model # Use the base model directly
|
|
54
|
+
best_model.fit(X_train, y_train) # Fit it on X_train, y_train
|
|
55
|
+
print(" - Model trained with default parameters.")
|
|
56
|
+
|
|
57
|
+
y_pred = best_model.predict(X_test)
|
|
58
|
+
print("Best model parameters:", best_model.get_params())
|
|
59
|
+
|
|
60
|
+
return y_pred, best_model
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
from sklearn.neural_network import MLPClassifier
|
|
2
|
+
from sklearn.model_selection import GridSearchCV
|
|
3
|
+
from sklearn.metrics import classification_report
|
|
4
|
+
import numpy as np
|
|
5
|
+
|
|
6
|
+
def train_and_predict(X_train, y_train, X_test, perform_tuning=False):
|
|
7
|
+
"""
|
|
8
|
+
Trains a Multi-layer Perceptron (MLP) Classifier model (Neural Network)
|
|
9
|
+
(with optional hyperparameter tuning) and predicts on test data.
|
|
10
|
+
|
|
11
|
+
Args:
|
|
12
|
+
X_train: training features (e.g., NumPy array or sparse matrix).
|
|
13
|
+
y_train: training labels (list or NumPy array).
|
|
14
|
+
X_test: test features (e.g., NumPy array or sparse matrix).
|
|
15
|
+
perform_tuning (bool): If True, performs GridSearchCV. If False, trains
|
|
16
|
+
the model with default parameters. Defaults to False.
|
|
17
|
+
|
|
18
|
+
Returns:
|
|
19
|
+
y_pred: predicted labels for test set.
|
|
20
|
+
best_model: The best trained MLPClassifier model (either from GridSearchCV or simple fit).
|
|
21
|
+
"""
|
|
22
|
+
# Base model for training, with a max_iter for convergence
|
|
23
|
+
mlp_model = MLPClassifier(random_state=42, max_iter=1000)
|
|
24
|
+
|
|
25
|
+
if perform_tuning:
|
|
26
|
+
print(" - Starting MLPClassifier training with GridSearchCV for hyperparameter tuning...")
|
|
27
|
+
|
|
28
|
+
# Define the parameter grid to search
|
|
29
|
+
param_grid = {
|
|
30
|
+
'hidden_layer_sizes': [(50,), (100,), (50, 50)],
|
|
31
|
+
'activation': ['relu', 'tanh'],
|
|
32
|
+
'solver': ['adam', 'sgd'],
|
|
33
|
+
'alpha': [0.0001, 0.001, 0.01]
|
|
34
|
+
}
|
|
35
|
+
print(" - Using default parameter grid for tuning:", param_grid)
|
|
36
|
+
|
|
37
|
+
# Initialize GridSearchCV
|
|
38
|
+
grid_search = GridSearchCV(
|
|
39
|
+
estimator=mlp_model,
|
|
40
|
+
param_grid=param_grid,
|
|
41
|
+
cv=3, # Using 3-fold cross-validation for speed
|
|
42
|
+
scoring='f1_weighted',
|
|
43
|
+
n_jobs=-1,
|
|
44
|
+
verbose=1
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
grid_search.fit(X_train, y_train)
|
|
48
|
+
best_model = grid_search.best_estimator_
|
|
49
|
+
print("\n - Best Hyperparameters found:")
|
|
50
|
+
print(grid_search.best_params_)
|
|
51
|
+
print(f" - Best Cross-Validation Score (F1-weighted): {grid_search.best_score_:.4f}")
|
|
52
|
+
else:
|
|
53
|
+
print(" - Training MLPClassifier with default parameters (no hyperparameter tuning)...")
|
|
54
|
+
best_model = mlp_model # Use the base model directly
|
|
55
|
+
best_model.fit(X_train, y_train) # Fit it on X_train, y_train
|
|
56
|
+
print(" - Model trained with default parameters.")
|
|
57
|
+
|
|
58
|
+
y_pred = best_model.predict(X_test)
|
|
59
|
+
print("Best model parameters:", best_model.get_params())
|
|
60
|
+
|
|
61
|
+
return y_pred, best_model
|
|
62
|
+
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# MLAlgo/random_forest_model.py
|
|
2
|
+
|
|
3
|
+
from sklearn.ensemble import RandomForestClassifier
|
|
4
|
+
from sklearn.model_selection import GridSearchCV # Import GridSearchCV
|
|
5
|
+
from sklearn.metrics import classification_report # For evaluation metrics
|
|
6
|
+
import numpy as np # For type hinting
|
|
7
|
+
|
|
8
|
+
def train_and_predict(X_train, y_train, X_test, perform_tuning = False):
|
|
9
|
+
|
|
10
|
+
"""
|
|
11
|
+
Trains RandomForestClassifier model (with optional hyperparameter tuning) and predicts on test data.
|
|
12
|
+
|
|
13
|
+
Args:
|
|
14
|
+
X_train: training features (e.g., NumPy array or sparse matrix).
|
|
15
|
+
y_train: training labels (list or NumPy array).
|
|
16
|
+
X_test: test features (e.g., NumPy array or sparse matrix).
|
|
17
|
+
perform_tuning (bool): If True, performs GridSearchCV. If False, trains
|
|
18
|
+
the model with default parameters. Defaults to True.
|
|
19
|
+
|
|
20
|
+
Returns:
|
|
21
|
+
y_pred: predicted labels for test set.
|
|
22
|
+
best_model: The best trained RandomForestClassifier model (either from GridSearchCV or simple fit).
|
|
23
|
+
"""
|
|
24
|
+
rf_model = RandomForestClassifier(random_state=42) # Base model for training
|
|
25
|
+
|
|
26
|
+
if perform_tuning:
|
|
27
|
+
print(" - Starting Random Forest training with GridSearchCV for hyperparameter tuning...")
|
|
28
|
+
|
|
29
|
+
# Define the parameter grid to search for RandomForestClassifier (default grid)
|
|
30
|
+
param_grid = {
|
|
31
|
+
'n_estimators': [100, 200, 300],
|
|
32
|
+
'max_depth': [10, 20, None],
|
|
33
|
+
'min_samples_split': [2, 5],
|
|
34
|
+
'min_samples_leaf': [1, 2],
|
|
35
|
+
'class_weight': [None, 'balanced']
|
|
36
|
+
}
|
|
37
|
+
print(" - Using default parameter grid for tuning:", param_grid)
|
|
38
|
+
|
|
39
|
+
grid_search = GridSearchCV(
|
|
40
|
+
estimator=rf_model, # Use the base rf_model here
|
|
41
|
+
param_grid=param_grid,
|
|
42
|
+
cv=5,
|
|
43
|
+
scoring='f1_weighted',
|
|
44
|
+
n_jobs=-1,
|
|
45
|
+
verbose=1
|
|
46
|
+
)
|
|
47
|
+
|
|
48
|
+
# Fit GridSearchCV to the training data
|
|
49
|
+
grid_search.fit(X_train, y_train)
|
|
50
|
+
|
|
51
|
+
# Get the best model found by GridSearchCV
|
|
52
|
+
best_model = grid_search.best_estimator_
|
|
53
|
+
|
|
54
|
+
print("\n - Best Hyperparameters found:")
|
|
55
|
+
print(grid_search.best_params_)
|
|
56
|
+
print(f" - Best Cross-Validation Score (F1-weighted): {grid_search.best_score_:.4f}")
|
|
57
|
+
else:
|
|
58
|
+
print(" - Training Random Forest with default parameters (no hyperparameter tuning)...")
|
|
59
|
+
best_model = rf_model # Use the base model directly
|
|
60
|
+
best_model.fit(X_train, y_train) # Fit it on X_train, y_train
|
|
61
|
+
print(" - Model trained with default parameters.")
|
|
62
|
+
|
|
63
|
+
# Make predictions on the test set using the best model (tuned or default)
|
|
64
|
+
y_pred = best_model.predict(X_test)
|
|
65
|
+
|
|
66
|
+
# Return both the predictions and the best model object
|
|
67
|
+
return y_pred, best_model
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# POSITIVELY DO NOT CHANGE (This comment is for the user, I am making necessary fixes based on our conversation)
|
|
2
|
+
|
|
3
|
+
from sklearn.model_selection import train_test_split
|
|
4
|
+
from sklearn.metrics import classification_report, accuracy_score
|
|
5
|
+
from collections import Counter
|
|
6
|
+
from sklearn.preprocessing import LabelEncoder
|
|
7
|
+
import polars as pl
|
|
8
|
+
import importlib
|
|
9
|
+
import numpy as np
|
|
10
|
+
import pandas as pd
|
|
11
|
+
from typing import Union
|
|
12
|
+
|
|
13
|
+
def run_pipeline(
|
|
14
|
+
vectorizer_name: str,
|
|
15
|
+
model_name: str,
|
|
16
|
+
df: Union[pl.DataFrame, pd.DataFrame],
|
|
17
|
+
text_column_name: str,
|
|
18
|
+
sentiment_column_name: str,
|
|
19
|
+
perform_tuning: bool = False
|
|
20
|
+
):
|
|
21
|
+
"""
|
|
22
|
+
Runs the full pipeline:
|
|
23
|
+
- vectorize
|
|
24
|
+
- train model
|
|
25
|
+
- evaluate
|
|
26
|
+
|
|
27
|
+
Args:
|
|
28
|
+
vectorizer_name (str): Name of the vectorizer (e.g., 'tfidf', 'word_embedding').
|
|
29
|
+
model_name (str): Name of the ML model (e.g., 'logistic_regression', 'random_forest').
|
|
30
|
+
df (pl.DataFrame): Your Polars DataFrame containing the text and sentiment columns.
|
|
31
|
+
text_column_name (str): The name of the column in `df` that contains the processed text.
|
|
32
|
+
sentiment_column_name (str): The name of the column in `df` that contains the sentiment labels.
|
|
33
|
+
|
|
34
|
+
Returns:
|
|
35
|
+
dict: A dictionary containing the trained model, fitted vectorizer, label encoder, and evaluation results.
|
|
36
|
+
"""
|
|
37
|
+
print(f"--- Running Pipeline for {vectorizer_name.replace('_', ' ').title()} + {model_name.replace('_', ' ').title()} ---")
|
|
38
|
+
|
|
39
|
+
# Import vectorizer from vect folder
|
|
40
|
+
try:
|
|
41
|
+
vec_module = importlib.import_module(f"quick_sentiments.vect.{vectorizer_name}")
|
|
42
|
+
vectorize_train = getattr(vec_module, "vectorize_train")
|
|
43
|
+
vectorize_test = getattr(vec_module, "vectorize_test")
|
|
44
|
+
except (ImportError, AttributeError) as e:
|
|
45
|
+
print(f"Error loading vectorizer module/function: {e}")
|
|
46
|
+
return None
|
|
47
|
+
|
|
48
|
+
# Import ML model from ml_algo folder
|
|
49
|
+
try:
|
|
50
|
+
model_module = importlib.import_module(f"quick_sentiments.ml_algo.{model_name}")
|
|
51
|
+
train_and_predict_function = getattr(model_module, "train_and_predict")
|
|
52
|
+
except (ImportError, AttributeError) as e:
|
|
53
|
+
print(f"Error loading ML model module/function: {e}")
|
|
54
|
+
return None
|
|
55
|
+
|
|
56
|
+
"""
|
|
57
|
+
Modified to handle both Polars and pandas DataFrames.
|
|
58
|
+
"""
|
|
59
|
+
# Convert to Polars if input is pandas
|
|
60
|
+
if isinstance(df, pd.DataFrame):
|
|
61
|
+
df = pl.from_pandas(df)
|
|
62
|
+
elif not isinstance(df, pl.DataFrame):
|
|
63
|
+
raise TypeError(f"Expected Polars or pandas DataFrame, got {type(df)}")
|
|
64
|
+
|
|
65
|
+
# Polars DataFrame handling
|
|
66
|
+
X_text = df[text_column_name].to_list()
|
|
67
|
+
y_raw = df[sentiment_column_name].to_list()
|
|
68
|
+
|
|
69
|
+
# --- NEW: Check for and drop None values in X_text and y_raw ---
|
|
70
|
+
initial_data_len = len(X_text)
|
|
71
|
+
|
|
72
|
+
# Filter out pairs where either X_text element or y_raw element is None
|
|
73
|
+
# Use zip to iterate over both lists simultaneously and filter
|
|
74
|
+
filtered_data = [(x, y_val) for x, y_val in zip(X_text, y_raw) if x is not None and y_val is not None]
|
|
75
|
+
|
|
76
|
+
# Unzip the filtered data back into X_text and y_raw
|
|
77
|
+
if filtered_data: # Check if filtered_data is not empty to avoid unpacking error
|
|
78
|
+
X_text, y_raw = zip(*filtered_data)
|
|
79
|
+
X_text = list(X_text) # Convert back to list
|
|
80
|
+
y_raw = list(y_raw) # Convert back to list
|
|
81
|
+
else:
|
|
82
|
+
# Handle case where all data might be None
|
|
83
|
+
print("WARNING: All data rows contained missing values after initial extraction. Cannot proceed with training.")
|
|
84
|
+
return None
|
|
85
|
+
|
|
86
|
+
dropped_rows_count = initial_data_len - len(X_text)
|
|
87
|
+
if dropped_rows_count > 0:
|
|
88
|
+
print(f"WARNING: Dropped {dropped_rows_count} rows due to missing values (None) in '{text_column_name}' or '{sentiment_column_name}' columns. Original rows: {initial_data_len}, Rows after dropping: {len(X_text)}")
|
|
89
|
+
else:
|
|
90
|
+
print("No missing values (None) found in text or sentiment columns. Proceeding with all rows.")
|
|
91
|
+
# ------------------------------------------------------------------
|
|
92
|
+
|
|
93
|
+
# Label Encoding for y_raw
|
|
94
|
+
label_encoder = LabelEncoder()
|
|
95
|
+
y = label_encoder.fit_transform(y_raw)
|
|
96
|
+
print(f"Labels encoded: Original -> {label_encoder.classes_}, Encoded -> {np.unique(y)}")
|
|
97
|
+
|
|
98
|
+
# Split data Before vectorization
|
|
99
|
+
print("1. Splitting data into train/test...")
|
|
100
|
+
X_train, X_test, y_train, y_test = train_test_split(
|
|
101
|
+
X_text, y, test_size=0.2, random_state=42, stratify=y
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
# Vectorize the dataset (X)
|
|
105
|
+
print("2. Vectorizing dataset (X)...")
|
|
106
|
+
X_train_vectorized, fitted_vectorizer_object = vectorize_train(X_train)
|
|
107
|
+
X_test_vectorized = vectorize_test(X_test, fitted_vectorizer_object)
|
|
108
|
+
|
|
109
|
+
# Train + predict
|
|
110
|
+
print("3. Training and predicting...")
|
|
111
|
+
y_pred, trained_model_object = train_and_predict_function(X_train_vectorized, y_train, X_test_vectorized, perform_tuning=perform_tuning)
|
|
112
|
+
|
|
113
|
+
# Evaluate
|
|
114
|
+
print("4. Evaluating model...")
|
|
115
|
+
print("\nClassification Report:")
|
|
116
|
+
print(classification_report(y_test, y_pred, target_names=label_encoder.classes_))
|
|
117
|
+
print("True labels distribution:", Counter(y_test))
|
|
118
|
+
print("Predicted labels distribution:", Counter(y_pred))
|
|
119
|
+
|
|
120
|
+
# Return results including all necessary objects for future predictions
|
|
121
|
+
return {
|
|
122
|
+
"model_object": trained_model_object,
|
|
123
|
+
"vectorizer_name": vectorizer_name,
|
|
124
|
+
"vectorizer_object": fitted_vectorizer_object,
|
|
125
|
+
"label_encoder": label_encoder,
|
|
126
|
+
"y_test": y_test,
|
|
127
|
+
"y_pred": y_pred,
|
|
128
|
+
"accuracy": accuracy_score(y_test, y_pred),
|
|
129
|
+
"report": classification_report(y_test, y_pred, output_dict=True, target_names=label_encoder.classes_)
|
|
130
|
+
}
|