以数值形式编码化学元素,解码元素的数值表示。
项目描述
element_coder
以数值形式编码化学元素,解码元素的数值表示。
💪 入门
from element_coder import encode, decode
decode(encode('Si', 'mod_pettifor'), 'mod_pettifor')
>'Si'
命令行界面
element_coder.encode
和 element_coder.decode
命令行工具已自动安装。可以使用 --help
标志从shell中显示帮助
$ element_coder.encode H
102
$ element_coder.decode 102
H
也适用于向量值编码
$ element_coder.decode 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 --property cgcnn
H
🚀 安装
可以从PyPI安装最新版本
$ pip install element_coder
可以直接从GitHub使用以下命令安装最新代码和数据
$ pip install git+https://github.com/kjappelbaum/element-coder.git
要开发模式下安装,请使用以下命令
$ git clone git+https://github.com/kjappelbaum/element-coder.git
$ cd element-coder
$ pip install -e .
背景
对于某些应用(如化学中的机器学习)元素必须进行数值编码。有许多库可以做到这一点。对于大多数应用,即使是pymatgen也可以完成这项工作
from pymatgen.core import Element
def encode_element(element: Element, property: str):
return getattr(element, property)
然而,此代码存在一些问题,因此有许多其他库试图解决这个问题,包括mendeleev、elementy、EIMD。然而,
- 这些库中没有支持我感兴趣的属性。
- 这些库中没有支持将描述符解码为元素的功能。
👐 贡献
我们欢迎您的贡献,无论是提交问题、提交拉取请求还是分支,都十分感激。有关如何参与的更多信息,请参阅CONTRIBUTING.rst。
👋 著作权归属
⚖️ 许可证
本包中的代码采用MIT许可证授权。
🍪 Cookiecutter
本包使用@audreyfeldroy的cookiecutter包,以及@cthoyt的cookiecutter-snekpack模板创建。
🛠️ 对于开发者
请参阅开发者指南
README的最后一部分是如果您想通过代码贡献来参与其中。
❓ 测试
在克隆仓库并使用pip install tox
安装tox
后,可以通过以下命令重复运行tests/
文件夹中的单元测试:
$ tox
此外,这些测试会随着每个提交自动在GitHub Action中重新运行。
📦 发布版本
在开发模式下安装包并使用pip install tox
安装tox
后,在tox.ini
的finish
环境中包含创建新版本的命令。在shell中运行以下命令:
$ tox -e finish
此脚本执行以下操作:
- 使用BumpVersion将
setup.cfg
和src/element_coder/version.py
中的版本号切换,去掉-dev
后缀 - 将代码打包成tar归档和wheel格式
- 使用
twine
上传到PyPI。请确保有一个配置好的.pypirc
文件,以避免在此步骤中手动输入 - 推送到GitHub。您需要创建一个与版本提升的提交相关的发布
- 将版本提升到下一个补丁级别。如果您进行了重大更改并希望通过次要版本提升版本,您可以在之后使用
tox -e bumpversion minor
项目详情
关闭
element_coder-0.0.8.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5a04e318368337e0e32197469d6e8f9c05e027c357a711c7094ac4cc7c93fbef |
|
MD5 | 188eba2fc2503e503171957a8dd0edef |
|
BLAKE2b-256 | 0aa9822070ec8bffe7ebfc71c85df538361697d62305dc1071c1b7c153e86a16 |
关闭
element_coder-0.0.8-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f954d97a6b565af9dc901e5b8a10fa91471464af7f92a8f79aec927c87b36f73 |
|
MD5 | c9d1c9570a1e65e2d69b8bcb020a8acf |
|
BLAKE2b-256 | 05f989ea133760cb3c20c660d271633702a9d8a67d3761ebcdd4945e2ffd7c87 |