コード例 #1
0
ファイル: test_basics.py プロジェクト: bmcorser/expr
# coding: utf-8
import json
from expr import expression_from_dict, Expr, NumExpr


pi_100 = Expr(operation_name='*',
                    arguments=[Expr(operation_name='/',
                                          arguments=[NumExpr(number=22),
                                                     NumExpr(number=7)]),
                               NumExpr(100)])

resolved = pi_100.resolve()
expected_resolved = 314.2857142857143
serialised = pi_100.serialise(json.dumps)
expected_serialised = (
    '{"__type__": "Expr", "operation_name": "*", "arguments": '
        '['
            '{'
                '"__type__": "Expr", '
                '"operation_name": "/", '
                '"arguments": '
                    '['
                        '{'
                            '"__type__": "NumExpr", '
                            '"number": 22.0'
                        '}, '
                        '{'
                            '"__type__": "NumExpr", '
                            '"number": 7.0'
                        '}'
                    ']'
コード例 #2
0
ファイル: test_dataframe.py プロジェクト: bmcorser/expr
)
index, data, columns = dataframe_flat()
dataframe0 = pandas.DataFrame.from_records(index=index, data=data, columns=columns)
index, data, columns = dataframe_flat()
dataframe1 = pandas.DataFrame.from_records(index=index, data=data, columns=columns)
expr = Expr('*',
    [
        Expr('-',
            [
                DataFrameExpr(dataframe0),
                Expr('+',
                    [
                        NumExpr(32),
                        DataFrameExpr(dataframe1),
                    ]
                )
            ]
        ),
        Expr(operation_name='/',
                   arguments=[NumExpr(number=22),
                              NumExpr(number=7)])
    ]
)
resolved = expr.resolve()

def test_dataframe_numeric():
    print('')
    print(expr.resolve())
    expr.graph().write_png('expr.png')
    expr.serialise(json.dumps)