How to install scikit-surprise from the ground up

I’m a colleague student and I’m trying to install scikit-surprise but I encountered errors after errors. I have install Microsoft Visual C++ 2015-2022, install all the packages (numpy, wheel, …), used Microsoft Visual Studio installer to install requirements, using anaconda to update and install scikit-surprise but it still returns an error and I cannot import surprise in my python code. The error message is:

Collecting scikit-surprise
  Using cached scikit-surprise-1.1.3.tar.gz (771 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: joblib>=1.0.0 in c:usersnameappdatalocalprogramspythonpython312libsite-packages (from scikit-surprise) (1.4.0)
Requirement already satisfied: numpy>=1.17.3 in c:usersnameappdatalocalprogramspythonpython312libsite-packages (from scikit-surprise) (1.26.4)
Requirement already satisfied: scipy>=1.3.2 in c:usersnameappdatalocalprogramspythonpython312libsite-packages (from scikit-surprise) (1.13.0)
Building wheels for collected packages: scikit-surprise
  Building wheel for scikit-surprise (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [129 lines of output]
      C:UsersnameAppDataLocalTemppip-install-yp9x09a7scikit-surprise_27597a36d9db4afaaf94b2c07d1b972fsetup.py:65: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
      !!

              ********************************************************************************
              Requirements should be satisfied by a PEP 517 installer.
              If you are using pip, you can try `pip install --use-pep517`.
              ********************************************************************************

      !!
        dist.Distribution().fetch_build_eggs(["numpy>=1.17.3"])
      running bdist_wheel
      running build
      running build_py
      creating build
      creating buildlib.win-amd64-cpython-312
      creating buildlib.win-amd64-cpython-312surprise
      copying surpriseaccuracy.py -> buildlib.win-amd64-cpython-312surprise
      copying surprisebuiltin_datasets.py -> buildlib.win-amd64-cpython-312surprise
      copying surprisedataset.py -> buildlib.win-amd64-cpython-312surprise
      copying surprisedump.py -> buildlib.win-amd64-cpython-312surprise
      copying surprisereader.py -> buildlib.win-amd64-cpython-312surprise
      copying surprisetrainset.py -> buildlib.win-amd64-cpython-312surprise
      copying surpriseutils.py -> buildlib.win-amd64-cpython-312surprise
      copying surprise__init__.py -> buildlib.win-amd64-cpython-312surprise
      copying surprise__main__.py -> buildlib.win-amd64-cpython-312surprise
      creating buildlib.win-amd64-cpython-312surprisemodel_selection
      copying surprisemodel_selectionsearch.py -> buildlib.win-amd64-cpython-312surprisemodel_selection
      copying surprisemodel_selectionsplit.py -> buildlib.win-amd64-cpython-312surprisemodel_selection
      copying surprisemodel_selectionvalidation.py -> buildlib.win-amd64-cpython-312surprisemodel_selection
      copying surprisemodel_selection__init__.py -> buildlib.win-amd64-cpython-312surprisemodel_selection
      creating buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsalgo_base.py -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsbaseline_only.py -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsknns.py -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmspredictions.py -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsrandom_pred.py -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithms__init__.py -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      running egg_info
      writing scikit_surprise.egg-infoPKG-INFO
      writing dependency_links to scikit_surprise.egg-infodependency_links.txt
      writing entry points to scikit_surprise.egg-infoentry_points.txt
      writing requirements to scikit_surprise.egg-inforequires.txt
      writing top-level names to scikit_surprise.egg-infotop_level.txt
      reading manifest file 'scikit_surprise.egg-infoSOURCES.txt'
      reading manifest template 'MANIFEST.in'
      adding license file 'LICENSE.md'
      writing manifest file 'scikit_surprise.egg-infoSOURCES.txt'
      C:UsersnameAppDataLocalProgramsPythonPython312Libsite-packagessetuptoolscommandbuild_py.py:207: _Warning: Package 'surprise.prediction_algorithms' is absent from the `packages` configuration.
      !!

              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'surprise.prediction_algorithms' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.

              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'surprise.prediction_algorithms' is explicitly added
              to the `packages` configuration field.

              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).

              You can read more about "package discovery" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

              If you don't want 'surprise.prediction_algorithms' to be distributed and are
              already explicitly excluding 'surprise.prediction_algorithms' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.

              You can read more about "package data files" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************

      !!
        check.warn(importable)
      copying surprisesimilarities.c -> buildlib.win-amd64-cpython-312surprise
      copying surprisesimilarities.pyx -> buildlib.win-amd64-cpython-312surprise
      copying surpriseprediction_algorithmsco_clustering.c -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsmatrix_factorization.c -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsoptimize_baselines.c -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsslope_one.c -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsco_clustering.pyx -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsmatrix_factorization.pyx -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsoptimize_baselines.pyx -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      copying surpriseprediction_algorithmsslope_one.pyx -> buildlib.win-amd64-cpython-312surpriseprediction_algorithms
      running build_ext
      building 'surprise.similarities' extension
      creating buildtemp.win-amd64-cpython-312
      creating buildtemp.win-amd64-cpython-312Release
      creating buildtemp.win-amd64-cpython-312Releasesurprise
      "C:Program Files (x86)Microsoft Visual Studio2022BuildToolsVCToolsMSVC14.39.33519binHostX86x64cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:UsersnameAppDataLocalProgramsPythonPython312Libsite-packagesnumpycoreinclude -IC:UsersnameAppDataLocalProgramsPythonPython312include -IC:UsersnameAppDataLocalProgramsPythonPython312Include "-IC:Program Files (x86)Microsoft Visual Studio2022BuildToolsVCToolsMSVC14.39.33519include" "-IC:Program Files (x86)Microsoft Visual Studio2022BuildToolsVCAuxiliaryVSinclude" "-IC:Program Files (x86)Windows Kits10include10.0.22621.0ucrt" "-IC:Program Files (x86)Windows Kits10\include10.0.22621.0\um" "-IC:Program Files (x86)Windows Kits10\include10.0.22621.0\shared" "-IC:Program Files (x86)Windows Kits10\include10.0.22621.0\winrt" "-IC:Program Files (x86)Windows Kits10\include10.0.22621.0\cppwinrt" /Tcsurprise/similarities.c /Fobuildtemp.win-amd64-cpython-312Releasesurprise/similarities.obj
      similarities.c
      C:UsersnameAppDataLocalProgramsPythonPython312Libsite-packagesnumpycoreincludenumpynpy_1_7_deprecated_api.h(14) : Warning Msg: Using deprecated NumPy API, disable it with #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
      surprise/similarities.c(15478): warning C4996: 'Py_OptimizeFlag': deprecated in 3.12
      surprise/similarities.c(24414): error C2039: 'curexc_traceback': is not a member of '_ts'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/pystate.h(115): note: see declaration of '_ts'
      surprise/similarities.c(24417): error C2039: 'curexc_traceback': is not a member of '_ts'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/pystate.h(115): note: see declaration of '_ts'
      surprise/similarities.c(24531): warning C4013: '_PyUnicode_Ready' undefined; assuming extern returning int
      surprise/similarities.c(25020): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(26982): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(27037): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(27254): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(27309): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(27450): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(27505): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      surprise/similarities.c(27856): error C2039: 'ob_digit': is not a member of '_longobject'
      C:UsersnameAppDataLocalProgramsPythonPython312includecpython/longintrepr.h(87): note: see declaration of '_longobject'
      error: command 'C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\bin\HostX86\x64\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for scikit-surprise
  Running setup.py clean for scikit-surprise
Failed to build scikit-surprise
ERROR: Could not build wheels for scikit-surprise, which is required to install pyproject.toml-based projects

Can someone show me how to install scikit-surprise from the ground up?

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật