Question: I'm encountering an issue while trying to install the dependencies for my Python project using setup.py and pip install -r requirements.txt in Windows Poweshell. Here's my setup.py: import setuptools with open("README.md","r") as fh: long_description = fh.read() setuptools.setup( name = "titanic-prediction", version = "0.0.1", author = "author", author_email = "author@gmail.com", description = "simple repo for exercise", long_description = "long_description", long_description_content_type = "text/markdown", url = "", packages = setuptools.find_packages(), classifiers = ["Programming Language :: Python :: 3"], install_requires = [ "matplotlib", "numpy", "pandas == 1.1.4", "scikit-learn == 0.22", #(>= 3.5) "seaborn == 0.11.0"], python_requires = ">=3.7" )  and this is my requirements.txt install_requires =[ "matplotlib", "numpy", "pandas==1.1.4", "pydantic==1.6.1", "scikit-learn", "seaborn==0.11.0", ],  Then I try to run python setup.py develop, but I got this error: running develop D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\develop.py:41: EasyInstallDeprecationWarning: easy_install command is deprecated. !! ******************************************************************************** Please avoid running ``setup.py`` and ``easy_install``. Instead, use pypa/build, pypa/installer or other standards-based tools. See https://github.com/pypa/setuptools/issues/917 for details. ******************************************************************************** !! easy_install.initialize_options(self) D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\_distutils\cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. !! ******************************************************************************** Please avoid running ``setup.py`` directly. Instead, use pypa/build, pypa/installer or other standards-based tools. See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. ******************************************************************************** !! self.initialize_options() running egg_info writing titanic_prediction.egg-info\PKG-INFO writing dependency_links to titanic_prediction.egg-info\dependency_links.txt writing requirements to titanic_prediction.egg-info\requires.txt writing top-level names to titanic_prediction.egg-info\top_level.txt reading manifest file 'titanic_prediction.egg-info\SOURCES.txt' writing manifest file 'titanic_prediction.egg-info\SOURCES.txt' running build_ext Creating d:\data analyst\github\lokalhangatt\pacmann - git\minggu_4\4. advanced data manipulation\pertemuan 8 - data preprocessing pipeline\virenv_preprocessing\lib\site-packages\titanic-prediction.egg-link (link to .) titanic-prediction 0.0.1 is already the active version in easy-install.pth Installed d:\data analyst\github\lokalhangatt\pacmann - git\minggu_4\4. advanced data manipulation\pertemuan 8 - data preprocessing pipeline\virenv_preprocessing\simple_pipeline Processing dependencies for titanic-prediction==0.0.1 Searching for scikit-learn==0.22 Reading https://pypi.org/simple/scikit-learn/ Downloading https://files.pythonhosted.org/packages/4f/2c/04e10167991ed6209fb251a212ca7c3148006f335f4aadf1808db2cbeda8/scikit-learn-0.22.tar.gz#sha256=314abf60c073c48a1e95feaae9f3ca47a2139bd77cebb5b877c23a45c9e03012 Best match: scikit-learn 0.22 Processing scikit-learn-0.22.tar.gz Writing C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.cfg Running scikit-learn-0.22\setup.py -q bdist_egg --dist-dir C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\egg-dist-tmp-a2evsbeb C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py:12: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html from pkg_resources import parse_version Partial import of sklearn during the build process. Traceback (most recent call last): File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 195, in check_package_status module = importlib.import_module(package) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\Python312\Lib\importlib\__init__.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen importlib._bootstrap>", line 1387, in _gcd_import File "<frozen importlib._bootstrap>", line 1360, in _find_and_load File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked ModuleNotFoundError: No module named 'numpy' Traceback (most recent call last): File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 167, in save_modules yield saved File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 209, in setup_context yield File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 270, in run_setup _execfile(setup_script, ns) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 52, in _execfile exec(code, globals, locals) File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 303, in <module> File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 291, in setup_package File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 219, in check_package_status ImportError: numpy is not installed. scikit-learn requires numpy >= 1.11.0. Installation instructions are available on the scikit-learn website: http://scikit-learn.org/stable/install.html During handling of the above exception, another exception occurred: Traceback (most recent call last): File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\simple_pipeline\setup.py", line 6, in <module> setuptools.setup( File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\__init__.py", line 117, in setup return distutils.core.setup(**attrs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\_distutils\core.py", line 183, in setup return run_commands(dist) ^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\_distutils\core.py", line 199, in run_commands dist.run_commands() File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\_distutils\dist.py", line 954, in run_commands self.run_command(cmd) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\dist.py", line 995, in run_command super().run_command(command) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\_distutils\dist.py", line 973, in run_command cmd_obj.run() File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\develop.py", line 35, in run self.install_for_development() File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\develop.py", line 127, in install_for_development self.process_distribution(None, self.dist, not self.no_deps) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\easy_install.py", line 788, in process_distribution distros = WorkingSet([]).resolve( ^^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\pkg_resources\__init__.py", line 892, in resolve dist = self._resolve_dist( ^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\pkg_resources\__init__.py", line 928, in _resolve_dist dist = best[req.key] = env.best_match( ^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\pkg_resources\__init__.py", line 1266, in best_match return self.obtain(req, installer) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\pkg_resources\__init__.py", line 1302, in obtain return installer(requirement) if installer else None ^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\easy_install.py", line 710, in easy_install return self.install_item(spec, dist.location, tmpdir, deps) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\easy_install.py", line 737, in install_item dists = self.install_eggs(spec, download, tmpdir) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\easy_install.py", line 934, in install_eggs return self.build_and_install(setup_script, setup_base) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\easy_install.py", line 1206, in build_and_install self.run_setup(setup_script, setup_base, args) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\command\easy_install.py", line 1192, in run_setup run_setup(setup_script, args) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 260, in run_setup with setup_context(setup_dir): File "C:\Program Files\Python312\Lib\contextlib.py", line 158, in __exit__ self.gen.throw(value) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 201, in setup_context with save_modules(): File "C:\Program Files\Python312\Lib\contextlib.py", line 158, in __exit__ self.gen.throw(value) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 180, in save_modules saved_exc.resume() File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 154, in resume raise exc.with_traceback(self._tb) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 167, in save_modules yield saved File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 209, in setup_context yield File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 270, in run_setup _execfile(setup_script, ns) File "D:\Data Analyst\Github\lokalhangatt\Pacmann - Git\Minggu_4\4. ADVANCED DATA MANIPULATION\Pertemuan 8 - Data Preprocessing Pipeline\virenv_preprocessing\Lib\site-packages\setuptools\sandbox.py", line 52, in _execfile exec(code, globals, locals) File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 303, in <module> File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 291, in setup_package File "C:\Users\ADMINI~1\AppData\Local\Temp\easy_install-dxw9q95a\scikit-learn-0.22\setup.py", line 219, in check_package_status ImportError: numpy is not installed. scikit-learn requires numpy >= 1.11.0. Installation instructions are available on the scikit-learn website: http://scikit-learn.org/stable/install.html  Then when I try to run requirements.txt, it shows an error like this: ERROR: Invalid requirement: '–r': Expected package name at the start of dependency specifier –r ^  Is there any mistakes from my setup.py or requirements.txt files? And how to solve it?

Answer: You use a wrong character for -r option; Python options parser (and any othe options parsers) expects simple dash (ascii minus) but you use n-dash. Compare these: -r (simple dash, minus) –r (n-dash) —r (m-dash) Use simple dash, minus: pip install -r