Ejemplo n.º 1
0
def test_kruskal_stress():
    actual_data = chooseData('scurve')
    fitted_data = chooseEmbedder('isomap', actual_data)
    fitted_data.embed(use_cache=True)

    evaluator = StressEvaluator(actual_data.df, 100)
    assert evaluator.kruskal(fitted_data.em) > 0
Ejemplo n.º 2
0
def test_global_ranking_stress():
    actual_data = chooseData('scurve')
    fitted_data = chooseEmbedder('isomap', actual_data)
    fitted_data.embed(use_cache=True)

    evaluator = StressEvaluator(actual_data.df, 100)
    assert evaluator.middle_ranking(fitted_data.em, 15, is_z_value=False) > 0
Ejemplo n.º 3
0
def getFigure(data_key, embedder_key, reducer_key):
    sc_data = chooseData(data_key)
    embedder = chooseEmbedder(embedder_key, sc_data)
    embedder.embed()
    reducer = chooseReducer(reducer_key, sc_data, embedder)
    reducer.reduce()
    return px.scatter(reducer.rd,
                      x='col0',
                      y='col1',
                      color=sc_data.color,
                      title=f'{data_key} | {reducer.class_key}')
Ejemplo n.º 4
0
def get_embedding(data_key: str, embedder_key: str) -> DataFrame:
    """Get embedding
    Args:
        data_key (str): Name of dataset.
        embedder_key (str): Name of embedder.
    Returns:
        DataFrame: Embedding results.
    """

    sc_data = chooseData(data_key)
    embedder = chooseEmbedder(embedder_key, sc_data)
    embedder.embed()

    return embedder.em
Ejemplo n.º 5
0
        margin=dict(r=20, l=10, b=10, t=10),
    )
    fig3d.show()

    # Create 2d figure After Dinmensionality Reduction
    fig2d = visualize_2d(reducer.rd)
    fig2d.update_layout(title_text="After Diminsionality Reduction")
    fig2d.show()


if __name__ == "__main__":

    # Get 3d animations
    # Run these in Jupyter or something
    which_data = "basic_cluster"
    embedder = chooseEmbedder("t_sne", (chooseData(which_data)))
    embedder.embed(dim=3, use_cache=True)
    reducer = chooseReducer("pca", chooseData(which_data), embedder)
    reducer.reduce(dim=2, save_rd=False)

    # visualize_3d_to_2d_projection(embedder, reducer)

    # Double filter
    query1 = "col1<0 & col2>0 & col2>=0.5"
    query0 = "*"

    # For Dimensionality Reduction to 2D
    reducer.setRds(query0=query0, query1=query1)
    print(reducer.getRdsDf())
    fig2d = px.scatter(
        reducer.getRdsDf(),