lynguine 数据导向架构接口的包。
项目描述
lynguine
《lynguine》库是一个基于DOA原则的数据管理库。它提供这些功能以支持其他库,如《lamd》和《referia》。
安装方法
%pip install lynguine
该软件由TK原理部分组成。
配置
首先 config
,它由interface
和context
组成。
context
定义了Context
对象,用于存储有关上下文的信息,例如机器类型等。另一方面,interface
定义了用于定义输入和输出的Interface
对象,该对象定义了与其他“黑盒过程”的连接。
一个简短的示例
可以使用以下命令加载本地上下文。
import lynguine as ln
ctxt = ln.config.context.Context()
interface
模块包含《lynguine》的关键结构。它指定了流入和流出的流,以及计算操作。每个流都以下列形式指定。
input:
source:
可以使用计算字段进行预处理。
input:
compute:
field: ColumnName0
function: computeFunction
args:
arg1: argument1
arg2: argument2
row_args:
arg3: ColumnName1
通常数据将存储在另一个文件中(csv、excel、yaml等),但有时将数据存储在称为“data”的字段中的“local”会更方便。在下一个示例中,我们这样做来展示如何使用compute
功能来增强文件。这里添加了两个字段,全名(用作索引)和今天的日期作为访问日期。
import yaml
from lynguine.config.interface import Interface
from lynguine.assess.data import CustomDataFrame
# Let's assume this is the text stored in the interface file
yaml_text = """input:
type: local
index: fullName
data:
- familyName: Xing
givenName: Pei
- familyName: Venkatasubramanian
givenName: Siva
- familyName: Paz Luiz
givenName: Miguel
compute: # compute is used for preprocessing as data is loaded
- field: fullName # the field fullName is created from this compute command
function: render_liquid
args: # keyword arguments to pass to the function
template: '{{familyName | replace: " ", "-"}}_{{givenName | replace: " ", "-"}}' # The liquid template allows us to combine the names
row_args: # arguments are taken from the same row
givenName: givenName
familyName: familyName
- field: accessDate
function: today"""
interface = Interface(yaml.safe_load(yaml_text))
data = CustomDataFrame.from_flow(interface)
print(data)
将创建一个新的字段fullname
,然后用作索引。
访问
其次,该软件使用访问、评估、地址分解。其中access
用于访问数据,包括io
和download
。io
允许读写各种不同的文件格式,如json
、yaml
、markdown
、csv
、xls
、bibtex
。
download
用于从网络访问资源,例如下载特定的URL。
一个简短的示例
也许您想从PMLR会议卷1《实践中的高斯过程》创建一个bibtex文件。在下面的简例中,我们使用lynguine
首先下载相关URL,然后将其加载并保存为bibtex。
import lynguine
评估
评估是关于对原始数据进行处理。在assess
下,lynguine
提供data
和compute
。data
模块提供了一个提供数据访问和操作能力的CustomDataFrame
对象。而compute
模块封装了各种预处理和处理数据的计算能力。
一个简短的示例
import lynguine
工具
util
模块提供了用于数据处理的各种工具。包括:
dataframe
用于操作数据框。fake
用于生成假数据。files
用于与文件交互。html
用于处理HTML。liquid
用于处理液体模板语言。talk
用于处理Neil的演讲格式。tex
用于处理LaTeX。text
用于处理文本。yaml
用于处理YAML。misc
用于其他杂项工具。
一个简短的示例
import lynguine
测试
测试存储在tests
子目录中。它们使用pytest
。
一个简短的示例
如果您已安装poetry,可以使用以下命令运行测试:
poetry run pytest
为什么选择lynguine?
这个名字来源于数据导向架构就像一系列数据流,就像linguine面条。在意大利语中,这个词也意味着“小舌头”,因此还有服务之间翻译的隐含意义。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。