Skip to main content

DataFushion的python算法插件

Project description

DataFushion_Plugins_Python说明

1.简介

针对Python算法在DataFushion平台使用所给出的插件,主要用于规范化算法的输入输出

2.使用

  • Step1:引入datafushon包中的operation模块
  • Step2:使用资源管理器进行数据拆解处理,并在其中实现自己需要实现的业务算法逻辑
from datafushion import operation


if __name__ == '__main__':
    with operation() as destruction:
        input_data_struct_list = destruction.input_data_struct_list
        param_map = destruction.param_map
        param_multiply = float(param_map['multiply'])

        data_result = []

        for input_data_struct in input_data_struct_list:
            file_input_mapping = input_data_struct.file_input_mapping
            data_list = input_data_struct.data_list
            field_x = file_input_mapping['x'][0]
            field_y = file_input_mapping['y'][0]
            for data in data_list:
                x = float(data[field_x])
                y = float(data[field_y])
                sum_result = param_multiply * (x + y)
                res = {
                    "sum": sum_result,
                    "x":   x,
                    "y":   y,
                }
                data_result.append(res)

        destruction.data_result = data_result

注意:


destruction为解构的HandleDataSet实体类,


input_data_struct_list中包含了输入数据的封装,其类型为List

其元素为HandleInputDataStruct类,包含的属性为file_type,file_path,file_input_mapping,data_list

算法需要使用的是file_input_mapping和data_list

data_list是输入数据的字典列表

file_input_mapping为输入数据字段的映射


param_map为算法的参数字典


在对数据进行业务算法处理完成后,需要将拆解的destruction中的data_result属性赋值为业务算法的最终数据结果

3.模型

DataFushion_Plugins_Python基础包中加入对PMML格式模型的依赖,以便后续需要在算法中读取已有的模型做准备

from pypmml import Model


if __name__ == '__main__':
    model = Model.fromFile('model_file')
    for item in model.inputFields:
        print(item.name)

    predict = model.predict({
        'sepalWidth':   1.33,
        'sepalLength':  2.44,
        'petalsWidth':  5.87,
        'petalsLength': 7.11,
    })
    print(predict)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datafushion_plugins_python-1.0.7.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datafushion_plugins_python-1.0.7-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file datafushion_plugins_python-1.0.7.tar.gz.

File metadata

  • Download URL: datafushion_plugins_python-1.0.7.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.1

File hashes

Hashes for datafushion_plugins_python-1.0.7.tar.gz
Algorithm Hash digest
SHA256 68d840313284e3aa7592eba8788785ea7587f4af0cb1fb55b06ce36ab09209d6
MD5 8d52ecb60712722200be4472499b6f33
BLAKE2b-256 6c6cc3ebdfcd2fcfa027032acd94a0ecdb3087a2e3ce1f8a21fdb51241d68240

See more details on using hashes here.

File details

Details for the file datafushion_plugins_python-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: datafushion_plugins_python-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.1

File hashes

Hashes for datafushion_plugins_python-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 5e4d65b0dc7147d35d31aef9e1b2702371c1530a6f18f966fd5a2c8ae917b14e
MD5 2694227acc7dea6cd73282ae0d8b7623
BLAKE2b-256 54c1022e0f23a1723373bb31483b8e4f965826ae8de4c4b17bc578823b49cc45

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page