• 大小: 127KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-17
  • 语言: Python
  • 标签:

资源简介

FastDTW的一个Python实现

资源截图

代码片段和文件信息

import os.path
from setuptools import setup find_packages Extension
from setuptools.command.build_ext import build_ext as _build_ext
import warnings

try:
    from Cython.Build import cythonize
    USE_CYTHON = True
except ImportError:
    USE_CYTHON = False

# numpy path is needed for building with and without cython:
try:
    import numpy
    numpy_includes = [numpy.get_include()]
    HAVE_NUMPY = True
except ImportError:
    # “python setup.py build“ will not work and trigger fallback to pure python later on
    # but “python setup.py clean“ will be successful with the first call of setup(...)
    numpy_includes = []
    HAVE_NUMPY = False

classifiers = [
    ‘Programming Language :: Python :: 2‘
    ‘Programming Language :: Python :: 3‘
    ‘Intended Audience :: Science/Research‘
    ‘License :: OSI Approved :: MIT License‘
    ‘Topic :: Scientific/Engineering‘
]


class build_ext(_build_ext):
    def finalize_options(self):
        _build_ext.finalize_options(self)
        # Prevent numpy from thinking it is still in its setup process:
        __builtins__.__NUMPY_SETUP__ = False
        import numpy
        self.include_dirs.append(numpy.get_include())


ext = ‘.pyx‘ if USE_CYTHON else ‘.cpp‘

extensions = [Extension(
        ‘fastdtw._fastdtw‘
        [os.path.join(‘fastdtw‘ ‘_fastdtw‘ + ext)]
        language=“c++“
        include_dirs=numpy_includes
        libraries=[“stdc++“]
    )]

if USE_CYTHON:
    extensions = cythonize(extensions)

dir_path = os.path.dirname(os.path.realpath(__file__))
with open(os.path.join(dir_path ‘README.rst‘)) as f:
    long_description = f.read()

kwargs = {
    ‘name‘: ‘fastdtw‘
    ‘version‘: ‘0.3.2‘
    ‘author‘: ‘Kazuaki Tanida‘
    ‘url‘: ‘https://github.com/slaypni/fastdtw‘
    ‘description‘: ‘Dynamic Time Warping (DTW) algorithm with an O(N) time and memory complexity.‘
    ‘long_description‘: long_description
    ‘license‘: ‘MIT‘
    ‘keywords‘: [‘dtw‘]
    ‘install_requires‘: [‘numpy‘]
    ‘packages‘: find_packages()
    ‘ext_modules‘:  extensions
    ‘test_suite‘: ‘tests‘
    ‘setup_requires‘: [‘pytest-runner‘]
    ‘tests_require‘: [‘pytest‘]
    ‘classifiers‘: classifiers
}

try:
    setup(**kwargs)
except SystemExit:
    del kwargs[‘ext_modules‘]
    reason = ‘numpy missing ‘ if not HAVE_NUMPY else ‘‘
    warnings.warn(reason+‘compilation failed. Installing pure python package‘)
    setup(**kwargs)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-04-06 18:30  fastdtw-master\
     文件         115  2019-04-06 18:30  fastdtw-master\.gitignore
     文件        1080  2019-04-06 18:30  fastdtw-master\LICENSE
     文件          43  2019-04-06 18:30  fastdtw-master\MANIFEST.in
     文件         216  2019-04-06 18:30  fastdtw-master\Pipfile
     文件       13782  2019-04-06 18:30  fastdtw-master\Pipfile.lock
     文件         762  2019-04-06 18:30  fastdtw-master\README.rst
     目录           0  2019-04-06 18:30  fastdtw-master\fastdtw\
     文件         102  2019-04-06 18:30  fastdtw-master\fastdtw\__init__.py
     文件      890291  2019-04-06 18:30  fastdtw-master\fastdtw\_fastdtw.cpp
     文件       15340  2019-04-06 18:30  fastdtw-master\fastdtw\_fastdtw.pyx
     文件        5627  2019-04-06 18:30  fastdtw-master\fastdtw\fastdtw.py
     文件          22  2019-04-06 18:30  fastdtw-master\setup.cfg
     文件        2421  2019-04-06 18:30  fastdtw-master\setup.py
     目录           0  2019-04-06 18:30  fastdtw-master\tests\
     文件        2038  2019-04-06 18:30  fastdtw-master\tests\test_fastdtw.py

评论

共有 条评论