Example #1
0
def test_from_dicts_struct() -> None:
    assert pl.from_dicts([{
        "a": 1,
        "b": {
            "a": 1,
            "b": 2
        }
    }]).to_series(1).to_list() == [{
        "a": 1,
        "b": 2
    }]

    assert pl.from_dicts([{
        "a": 1,
        "b": {
            "a_deep": 1,
            "b_deep": {
                "a_deeper": [1, 2, 4]
            }
        }
    }]).to_series(1).to_list() == [{
        "a_deep": 1,
        "b_deep": {
            "a_deeper": [1, 2, 4]
        }
    }]

    data = [
        {
            "a": [{
                "b": 0,
                "c": 1
            }]
        },
        {
            "a": [{
                "b": 1,
                "c": 2
            }]
        },
    ]

    assert pl.from_dicts(data).to_series().to_list() == [
        [{
            "b": 0,
            "c": 1
        }],
        [{
            "b": 1,
            "c": 2
        }],
    ]
Example #2
0
def test_from_dicts_list_without_dtype() -> None:
    assert pl.from_dicts([{
        "id": 1,
        "hint": ["some_text_here"]
    }, {
        "id": 2,
        "hint": [None]
    }]).to_dict(False) == {
        "id": [1, 2],
        "hint": [["some_text_here"], [None]]
    }
Example #3
0
def test_issue_2529() -> None:
    def stdize_out(value: str, control_for: str) -> pl.Expr:
        return (pl.col(value) - pl.mean(value).over(control_for)
                ) / pl.std(value).over(control_for)

    df = pl.from_dicts([{
        "cat": cat,
        "val1": cat + _,
        "val2": cat + _
    } for cat in range(2) for _ in range(2)])

    out = df.select([
        "*",
        stdize_out("val1", "cat").alias("out1"),
        stdize_out("val2", "cat").alias("out2"),
    ])
    assert out["out1"].to_list() == out["out2"].to_list()
Example #4
0
def test_from_dicts_struct() -> None:
    data = [{"a": {"b": 1, "c": 2}, "d": 5}, {"a": {"b": 3, "c": 4}, "d": 6}]
    df = pl.from_dicts(data)
    assert df.shape == (2, 2)
    assert df["a"][0] == (1, 2)
    assert df["a"][1] == (3, 4)
Example #5
0
def test_from_dicts() -> None:
    data = [{"a": 1, "b": 4}, {"a": 2, "b": 5}, {"a": 3, "b": 6}]
    df = pl.from_dicts(data)
    assert df.shape == (3, 2)