制作管道或ETL的简单库

pypelines-etl的Python项目详细描述


Pypelines ETL公司

制作管道或ETL的简单库

安装

$ pip install pypelines-etl

使用

pypelines允许您构建ETL管道。为此,你只需要 一个Extractor,一些Transformer或{},以及Loader的组合。在

抽取器

制作提取器相当容易。简单地装饰一个返回的函数 带有Extractor的数据:

^{pr2}$

变压器或滤波器

Transformer和{}装饰器是等价的。在

制作TransformerFilter更容易:

importpandasfrompypelinesimportFilter,Transformer@Filterdefkeep_setosa(df:pandas.DataFrame)->pandas.DataFrame:returndf[df['class']=='Iris-setosa']@Filterdefkeep_petal_length(df:pandas.DataFrame)->pandas.Series:returndf['petallength']@Transformerdefmean(series:pandas.Series)->float:returnseries.mean()

注意,可以将Transformer和{}结合起来 以缩短管道语法。例如:

new_transformer=keep_setosa|keep_petal_length|meanpipeline=read_iris_dataset('filepath.csv')|new_transformerprint(pipeline.value)# 1.464

装载机

为了构建Loader,只需修饰一个接受at的函数就足够了 至少一个data参数。在

importjsonfrompypelinesimportLoader@Loaderdefwrite_to_json(output_filepath:str,data:float)->None:withopen(output_filepath,'w')asfile:json.dump({'mean-petal-lenght':{'value':data,'units':'cm'}},file)

调用Loader时不需要data参数, 它加载参数(如URL或路径)。例如,调用write_to_json(output.json) 将不执行函数,但在管道中存储output_filepath参数,直到Loader执行为止。 但是,函数的标准执行(带有data参数)仍然可用write_to_json(output.json, data=1.464)。在

ETL管道

要创建并运行管道,只需将ExtractorTransformerFilter和{}组合起来

read_iris_dataset('filepath.csv')|keep_setosa|keep_petal_length|mean|write_to_json('output.json')

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javaelk:如何在Kibana中按异常类对stacktrace进行分组   java两个组件使用MigLayout相互重叠   java Hibernate标准获取关联实体的列表,而不是父实体的列表   从Java关闭另一个应用程序,但不是由当前Java应用程序启动   java使用OGNL获取参数   java如何在SSLEngine中启用密码TLS\U DHE\U RSA\U和\U AES\U 256\U GCM\U SHA384   在Java中有效地比较两个列表<Object[]>   java杀死挂起的线程   在java中从指定模式前后的字符串中提取子字符串   存储整数的java HashMap替代方案   java如何使用LibGDX加载特定于语言的资产?   java如何使用JSON响应从维基百科读取结构化数据   java无法连接到Spark Master:原因是:[已解除关联]   java如何配置Elastic beanstalk classic负载平衡器以使用CLI终止HTTPS   java筛网中的奥斯汀大于int   java PircBot在每个用户上迭代一组命令   java将带有Jackson的hashmap编组为XML的错误结构   testng中的java设置testfailure给出了正回报   java如何在IntelliJ中正确配置Eclipse项目?