{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Multiverse basics\n", "\n", "To conduct a multiverse analysis, the forking paths must be specified in a dictionary. Options can contain:\n", "\n", "* strings\n", "* numerical values\n", "* boolean values\n", "* comet dFC methods\n", "* comet and bct graph measures\n", "* any kind of function" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "from comet.multiverse import Multiverse\n", "\n", "forking_paths = {\n", " \"strings\": [\"Hello\", \"world\"],\n", " \"numbers\": [3.14, 4, 5.2],\n", " \"booleans\": [True, False],\n", " \"dfc_measures\": [\n", " {\"name\": \"LeiDA\", \"func\": \"comet.connectivity.LeiDA(time_series=ts).estimate()\"},\n", " {\"name\": \"JC11\", \"func\": \"comet.connectivity.Jackknife(time_series=ts, windowsize=11).estimate()\"}],\n", " \"graph_measures\": [\n", " {\"name\": \"efficiency\", \"func\": \"comet.graph.efficiency(G, local= False)\"},\n", " {\"name\": \"clustering\", \"func\": \"comet.graph.avg_clustering_onella(G)\"}],\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With the decisions and options defined, an analysis template has to be specified. This is similar to a standard analysis pipeline with three additional requirements:\n", "\n", "* The template is required to be encapsulated in a dedicated function\n", "* Required imports need to be within the template function\n", "* Decision points need to be specified in double brackets: `{{decision}}`\n", "\n", "In this brief example, the corresponding string, number, and boolean decision will be printed in each universe. Then, connectivity will be estimated with the corresponding dFC method, and a graph measure (local efficiency or clustering) is calculated:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def analysis_template():\n", " import comet\n", "\n", " print(\"Decision 1:\", {{strings}})\n", " print(\"Decision 2:\", {{numbers}})\n", " print(\"Decision 3:\", {{booleans}})\n", "\n", " # Load example data and calculate dFC\n", " ts = comet.utils.load_example()\n", " dfc = {{dfc_measures}}\n", "\n", " # Calculate graph measure\n", " graph_measure = []\n", " for i in range(dfc.shape[2]):\n", " G = dfc[:, :, i]\n", " G = comet.graph.handle_negative_weights(G, type=\"absolute\")\n", " G = comet.graph.threshold(G, type=\"density\", density=0.5)\n", " G = comet.graph.binarise(G)\n", " gm = {{graph_measures}}\n", " graph_measure.append(gm)\n", "\n", " # Save the results\n", " result = {\"graph_measure\": graph_measure}\n", " comet.utils.save_universe_results(result)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The forking paths dictionary defines 5 decision points consisting of 2 options each. Thus, the resulting multiverse will contain 2⁵=32 universes. A `Multiverse` object has to be created and can then be used to create, run, summarize, and visualize the multiverse.\n", "\n", "* `mverse.create()` will generate Python scripts for all 32 universes. These scripts will be saved in a newly created `example_multiverse/` folder\n", "* `mverse.summary()` will print the decisions for every universe. This information is also available as a .csv in the `example_multiverse/results/` folder\n", "* `mverse.run()` will either run all or individual universes. If the computational resources allow for it, this can be parallelized by using e.g. `mverse.run(parallel=4)`" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
UniverseDecision 1Value 1Decision 2Value 2Decision 3Value 3Decision 4Value 4Decision 5Value 5
0Universe_1stringsHellonumbers3.14booleansTruedfc_measuresLeiDAgraph_measuresefficiency
1Universe_2stringsHellonumbers3.14booleansTruedfc_measuresLeiDAgraph_measuresclustering
2Universe_3stringsHellonumbers3.14booleansTruedfc_measuresJC11graph_measuresefficiency
3Universe_4stringsHellonumbers3.14booleansTruedfc_measuresJC11graph_measuresclustering
4Universe_5stringsHellonumbers3.14booleansFalsedfc_measuresLeiDAgraph_measuresefficiency
5Universe_6stringsHellonumbers3.14booleansFalsedfc_measuresLeiDAgraph_measuresclustering
6Universe_7stringsHellonumbers3.14booleansFalsedfc_measuresJC11graph_measuresefficiency
7Universe_8stringsHellonumbers3.14booleansFalsedfc_measuresJC11graph_measuresclustering
8Universe_9stringsHellonumbers4.00booleansTruedfc_measuresLeiDAgraph_measuresefficiency
9Universe_10stringsHellonumbers4.00booleansTruedfc_measuresLeiDAgraph_measuresclustering
10Universe_11stringsHellonumbers4.00booleansTruedfc_measuresJC11graph_measuresefficiency
11Universe_12stringsHellonumbers4.00booleansTruedfc_measuresJC11graph_measuresclustering
12Universe_13stringsHellonumbers4.00booleansFalsedfc_measuresLeiDAgraph_measuresefficiency
13Universe_14stringsHellonumbers4.00booleansFalsedfc_measuresLeiDAgraph_measuresclustering
14Universe_15stringsHellonumbers4.00booleansFalsedfc_measuresJC11graph_measuresefficiency
15Universe_16stringsHellonumbers4.00booleansFalsedfc_measuresJC11graph_measuresclustering
16Universe_17stringsHellonumbers5.20booleansTruedfc_measuresLeiDAgraph_measuresefficiency
17Universe_18stringsHellonumbers5.20booleansTruedfc_measuresLeiDAgraph_measuresclustering
18Universe_19stringsHellonumbers5.20booleansTruedfc_measuresJC11graph_measuresefficiency
19Universe_20stringsHellonumbers5.20booleansTruedfc_measuresJC11graph_measuresclustering
20Universe_21stringsHellonumbers5.20booleansFalsedfc_measuresLeiDAgraph_measuresefficiency
21Universe_22stringsHellonumbers5.20booleansFalsedfc_measuresLeiDAgraph_measuresclustering
22Universe_23stringsHellonumbers5.20booleansFalsedfc_measuresJC11graph_measuresefficiency
23Universe_24stringsHellonumbers5.20booleansFalsedfc_measuresJC11graph_measuresclustering
24Universe_25stringsworldnumbers3.14booleansTruedfc_measuresLeiDAgraph_measuresefficiency
25Universe_26stringsworldnumbers3.14booleansTruedfc_measuresLeiDAgraph_measuresclustering
26Universe_27stringsworldnumbers3.14booleansTruedfc_measuresJC11graph_measuresefficiency
27Universe_28stringsworldnumbers3.14booleansTruedfc_measuresJC11graph_measuresclustering
28Universe_29stringsworldnumbers3.14booleansFalsedfc_measuresLeiDAgraph_measuresefficiency
29Universe_30stringsworldnumbers3.14booleansFalsedfc_measuresLeiDAgraph_measuresclustering
30Universe_31stringsworldnumbers3.14booleansFalsedfc_measuresJC11graph_measuresefficiency
31Universe_32stringsworldnumbers3.14booleansFalsedfc_measuresJC11graph_measuresclustering
32Universe_33stringsworldnumbers4.00booleansTruedfc_measuresLeiDAgraph_measuresefficiency
33Universe_34stringsworldnumbers4.00booleansTruedfc_measuresLeiDAgraph_measuresclustering
34Universe_35stringsworldnumbers4.00booleansTruedfc_measuresJC11graph_measuresefficiency
35Universe_36stringsworldnumbers4.00booleansTruedfc_measuresJC11graph_measuresclustering
36Universe_37stringsworldnumbers4.00booleansFalsedfc_measuresLeiDAgraph_measuresefficiency
37Universe_38stringsworldnumbers4.00booleansFalsedfc_measuresLeiDAgraph_measuresclustering
38Universe_39stringsworldnumbers4.00booleansFalsedfc_measuresJC11graph_measuresefficiency
39Universe_40stringsworldnumbers4.00booleansFalsedfc_measuresJC11graph_measuresclustering
40Universe_41stringsworldnumbers5.20booleansTruedfc_measuresLeiDAgraph_measuresefficiency
41Universe_42stringsworldnumbers5.20booleansTruedfc_measuresLeiDAgraph_measuresclustering
42Universe_43stringsworldnumbers5.20booleansTruedfc_measuresJC11graph_measuresefficiency
43Universe_44stringsworldnumbers5.20booleansTruedfc_measuresJC11graph_measuresclustering
44Universe_45stringsworldnumbers5.20booleansFalsedfc_measuresLeiDAgraph_measuresefficiency
45Universe_46stringsworldnumbers5.20booleansFalsedfc_measuresLeiDAgraph_measuresclustering
46Universe_47stringsworldnumbers5.20booleansFalsedfc_measuresJC11graph_measuresefficiency
47Universe_48stringsworldnumbers5.20booleansFalsedfc_measuresJC11graph_measuresclustering
\n", "
" ], "text/plain": [ " Universe Decision 1 Value 1 Decision 2 Value 2 Decision 3 Value 3 \\\n", "0 Universe_1 strings Hello numbers 3.14 booleans True \n", "1 Universe_2 strings Hello numbers 3.14 booleans True \n", "2 Universe_3 strings Hello numbers 3.14 booleans True \n", "3 Universe_4 strings Hello numbers 3.14 booleans True \n", "4 Universe_5 strings Hello numbers 3.14 booleans False \n", "5 Universe_6 strings Hello numbers 3.14 booleans False \n", "6 Universe_7 strings Hello numbers 3.14 booleans False \n", "7 Universe_8 strings Hello numbers 3.14 booleans False \n", "8 Universe_9 strings Hello numbers 4.00 booleans True \n", "9 Universe_10 strings Hello numbers 4.00 booleans True \n", "10 Universe_11 strings Hello numbers 4.00 booleans True \n", "11 Universe_12 strings Hello numbers 4.00 booleans True \n", "12 Universe_13 strings Hello numbers 4.00 booleans False \n", "13 Universe_14 strings Hello numbers 4.00 booleans False \n", "14 Universe_15 strings Hello numbers 4.00 booleans False \n", "15 Universe_16 strings Hello numbers 4.00 booleans False \n", "16 Universe_17 strings Hello numbers 5.20 booleans True \n", "17 Universe_18 strings Hello numbers 5.20 booleans True \n", "18 Universe_19 strings Hello numbers 5.20 booleans True \n", "19 Universe_20 strings Hello numbers 5.20 booleans True \n", "20 Universe_21 strings Hello numbers 5.20 booleans False \n", "21 Universe_22 strings Hello numbers 5.20 booleans False \n", "22 Universe_23 strings Hello numbers 5.20 booleans False \n", "23 Universe_24 strings Hello numbers 5.20 booleans False \n", "24 Universe_25 strings world numbers 3.14 booleans True \n", "25 Universe_26 strings world numbers 3.14 booleans True \n", "26 Universe_27 strings world numbers 3.14 booleans True \n", "27 Universe_28 strings world numbers 3.14 booleans True \n", "28 Universe_29 strings world numbers 3.14 booleans False \n", "29 Universe_30 strings world numbers 3.14 booleans False \n", "30 Universe_31 strings world numbers 3.14 booleans False \n", "31 Universe_32 strings world numbers 3.14 booleans False \n", "32 Universe_33 strings world numbers 4.00 booleans True \n", "33 Universe_34 strings world numbers 4.00 booleans True \n", "34 Universe_35 strings world numbers 4.00 booleans True \n", "35 Universe_36 strings world numbers 4.00 booleans True \n", "36 Universe_37 strings world numbers 4.00 booleans False \n", "37 Universe_38 strings world numbers 4.00 booleans False \n", "38 Universe_39 strings world numbers 4.00 booleans False \n", "39 Universe_40 strings world numbers 4.00 booleans False \n", "40 Universe_41 strings world numbers 5.20 booleans True \n", "41 Universe_42 strings world numbers 5.20 booleans True \n", "42 Universe_43 strings world numbers 5.20 booleans True \n", "43 Universe_44 strings world numbers 5.20 booleans True \n", "44 Universe_45 strings world numbers 5.20 booleans False \n", "45 Universe_46 strings world numbers 5.20 booleans False \n", "46 Universe_47 strings world numbers 5.20 booleans False \n", "47 Universe_48 strings world numbers 5.20 booleans False \n", "\n", " Decision 4 Value 4 Decision 5 Value 5 \n", "0 dfc_measures LeiDA graph_measures efficiency \n", "1 dfc_measures LeiDA graph_measures clustering \n", "2 dfc_measures JC11 graph_measures efficiency \n", "3 dfc_measures JC11 graph_measures clustering \n", "4 dfc_measures LeiDA graph_measures efficiency \n", "5 dfc_measures LeiDA graph_measures clustering \n", "6 dfc_measures JC11 graph_measures efficiency \n", "7 dfc_measures JC11 graph_measures clustering \n", "8 dfc_measures LeiDA graph_measures efficiency \n", "9 dfc_measures LeiDA graph_measures clustering \n", "10 dfc_measures JC11 graph_measures efficiency \n", "11 dfc_measures JC11 graph_measures clustering \n", "12 dfc_measures LeiDA graph_measures efficiency \n", "13 dfc_measures LeiDA graph_measures clustering \n", "14 dfc_measures JC11 graph_measures efficiency \n", "15 dfc_measures JC11 graph_measures clustering \n", "16 dfc_measures LeiDA graph_measures efficiency \n", "17 dfc_measures LeiDA graph_measures clustering \n", "18 dfc_measures JC11 graph_measures efficiency \n", "19 dfc_measures JC11 graph_measures clustering \n", "20 dfc_measures LeiDA graph_measures efficiency \n", "21 dfc_measures LeiDA graph_measures clustering \n", "22 dfc_measures JC11 graph_measures efficiency \n", "23 dfc_measures JC11 graph_measures clustering \n", "24 dfc_measures LeiDA graph_measures efficiency \n", "25 dfc_measures LeiDA graph_measures clustering \n", "26 dfc_measures JC11 graph_measures efficiency \n", "27 dfc_measures JC11 graph_measures clustering \n", "28 dfc_measures LeiDA graph_measures efficiency \n", "29 dfc_measures LeiDA graph_measures clustering \n", "30 dfc_measures JC11 graph_measures efficiency \n", "31 dfc_measures JC11 graph_measures clustering \n", "32 dfc_measures LeiDA graph_measures efficiency \n", "33 dfc_measures LeiDA graph_measures clustering \n", "34 dfc_measures JC11 graph_measures efficiency \n", "35 dfc_measures JC11 graph_measures clustering \n", "36 dfc_measures LeiDA graph_measures efficiency \n", "37 dfc_measures LeiDA graph_measures clustering \n", "38 dfc_measures JC11 graph_measures efficiency \n", "39 dfc_measures JC11 graph_measures clustering \n", "40 dfc_measures LeiDA graph_measures efficiency \n", "41 dfc_measures LeiDA graph_measures clustering \n", "42 dfc_measures JC11 graph_measures efficiency \n", "43 dfc_measures JC11 graph_measures clustering \n", "44 dfc_measures LeiDA graph_measures efficiency \n", "45 dfc_measures LeiDA graph_measures clustering \n", "46 dfc_measures JC11 graph_measures efficiency \n", "47 dfc_measures JC11 graph_measures clustering " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "mverse = Multiverse(name=\"example_mv_basics\")\n", "mverse.create(analysis_template, forking_paths)\n", "mverse.summary()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can now run individual universes by specifying a number, or run all of them (parallelization is also supported). This example will only evaluate the first two universes (`universe=[1,2]`)." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Starting analysis for universe(s): [1, 2]...\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "7a5e9d4f10f6424082b414724b88ef59", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Performing multiverse analysis:: 0%| | 0/2 [00:00" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from matplotlib import pyplot as plt\n", "\n", "results = mverse.get_results()\n", "\n", "# Plot the results\n", "fig, ax = plt.subplots()\n", "for i, universe in enumerate(results.keys()):\n", " ax.plot(results[universe][\"graph_measure\"], label=f\"Universe {i+1}\")\n", "\n", "ax.set(title=\"Multiverse results\", ylabel=\"Graph measure\", xlabel=\"time\")\n", "ax.legend();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Or alternatively also as a DataFrame:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
universegraph_measure__decisions
1universe_1[0.517973602484472, 0.5365295031055901, 0.5318...{'Decision 1': 'strings', 'Value 1': 'Hello', ...
2universe_2[0.7096208416867087, 0.7107480051537015, 0.708...{'Decision 1': 'strings', 'Value 1': 'Hello', ...
\n", "
" ], "text/plain": [ " universe graph_measure \\\n", "1 universe_1 [0.517973602484472, 0.5365295031055901, 0.5318... \n", "2 universe_2 [0.7096208416867087, 0.7107480051537015, 0.708... \n", "\n", " __decisions \n", "1 {'Decision 1': 'strings', 'Value 1': 'Hello', ... \n", "2 {'Decision 1': 'strings', 'Value 1': 'Hello', ... " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results = mverse.get_results(as_df=True)\n", "results" ] } ], "metadata": { "kernelspec": { "display_name": "comet-test", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.0" } }, "nbformat": 4, "nbformat_minor": 2 }