diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000..b60c33f --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,2 @@ +# ruff format, line length 100 +65ca0f267e1804971ddb71ea2f85a02cad9f8294 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5961063..85d169c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,10 +6,14 @@ on: jobs: label-gate: uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/label-gate.yml@main + ruff: + uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/ruff.yml@ruff-ty-workflows + ty: + uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/ty.yml@ruff-ty-workflows build-test-sqlite: - uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/build-test.yml@main + uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/build-test-sqlite.yml@ruff-ty-workflows build-test-postgres: - uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/build-test-postgres-v2.yml@main + uses: AustralianCancerDataNetwork/cava-devops/.github/workflows/build-test-postgres-v3.yml@ruff-ty-workflows with: postgres-db: omop_graph_test setup-commands: | diff --git a/README.md b/README.md index d191d25..57559fd 100644 --- a/README.md +++ b/README.md @@ -80,8 +80,8 @@ This classification drives traversal filtering and scoring. from omop_graph.graph.paths import find_shortest_paths from omop_graph.extensions.omop_alchemy import PredicateKind -ingredient = kg.concept_id_by_code("RxNorm", "6809") # Metformin -drug = kg.concept_id_by_code("RxNorm", "860975") # Metformin 500 MG Oral Tablet +ingredient = kg.concept_id_by_code("RxNorm", "6809") # Metformin +drug = kg.concept_id_by_code("RxNorm", "860975") # Metformin 500 MG Oral Tablet paths, trace = find_shortest_paths( kg, diff --git a/docs/graph/kg.md b/docs/graph/kg.md index dfd0d82..f6f5cb3 100644 --- a/docs/graph/kg.md +++ b/docs/graph/kg.md @@ -66,8 +66,10 @@ from omop_graph.graph.kg import KnowledgeGraph, KnowledgeGraphEmbeddingConfigura from omop_emb.config import MetricType resolver = Resolver.from_active_config() -resolved_vector_store = resolver.resolve_vector_store("vector_store") # a [vector_stores.*] entry name -resolved_model = resolver.resolve_model("embedding-model") # a [models.*] entry name +resolved_vector_store = resolver.resolve_vector_store( + "vector_store" +) # a [vector_stores.*] entry name +resolved_model = resolver.resolve_model("embedding-model") # a [models.*] entry name backend = open_vector_store_writer(resolved_vector_store) emb_config = KnowledgeGraphEmbeddingConfiguration( diff --git a/docs/mkdocs_macros.py b/docs/mkdocs_macros.py index 5b09a58..6ff0eaa 100644 --- a/docs/mkdocs_macros.py +++ b/docs/mkdocs_macros.py @@ -1,28 +1,27 @@ -import pandas as pd import pathlib as pl -from typing import Optional, List, Mapping +from collections.abc import Mapping + +import pandas as pd + def define_env(env): @env.macro def to_grouped_table( - file_path: str, - group_cols: List[int] = [0], - displayed_cols: Optional[List[int]] = None, - sort_cols: Optional[List[int]] = None, - col_mappings: Optional[Mapping[str, str]] = None + file_path: str, + group_cols: list[int] | None = None, + displayed_cols: list[int] | None = None, + sort_cols: list[int] | None = None, + col_mappings: Mapping[str, str] | None = None, ): if group_cols is None: group_cols = [0] absolute_path = (pl.Path(env.project_dir) / file_path).resolve() - + if not absolute_path.exists(): return f"**Error:** Could not find file at `{absolute_path}`" - - suffix_loader_map = { - ".csv": pd.read_csv, - ".xlsx": pd.read_excel - } + + suffix_loader_map = {".csv": pd.read_csv, ".xlsx": pd.read_excel} loader_fn = suffix_loader_map[absolute_path.suffix] df = loader_fn(absolute_path, usecols=displayed_cols) @@ -35,36 +34,41 @@ def to_grouped_table( df = df.rename(columns=col_mappings) df = df.dropna(subset=df.columns[group_cols]) - + span_counts_map = {} for i, col_idx in enumerate(group_cols): - relevant_cols = group_cols[:i+1] - group_changes = (df.iloc[:, relevant_cols] != df.iloc[:, relevant_cols].shift()).any(axis=1) + relevant_cols = group_cols[: i + 1] + group_changes = (df.iloc[:, relevant_cols] != df.iloc[:, relevant_cols].shift()).any( + axis=1 + ) span_counts_map[col_idx] = group_changes.cumsum().value_counts(sort=False).tolist() table_style = "width: 100%; border-collapse: collapse; margin-bottom: 1rem;" cell_style = "border: 1px solid var(--md-typeset-table-color, #e0e0e0); padding: 12px; text-align: left;" - header_style = cell_style + " background-color: var(--md-default-bg-color, #f5f5f5); font-weight: bold;" - + header_style = ( + cell_style + + " background-color: var(--md-default-bg-color, #f5f5f5); font-weight: bold;" + ) + html = f'
| {col} | ' html += "|
|---|---|
| {display_val} | ' rows_to_skip_map[j] = span - 1 span_idx_map[j] += 1 else: rows_to_skip_map[j] -= 1 - continue + continue else: html += f'{display_val} | ' html += "
RxNorm:860975\n",
- " \u00b7 Drug\n",
- " \u00b7 Quant Clinical Drug\n",
- " RxNorm:6809\n",
- " \u00b7 Drug\n",
- " \u00b7 Ingredient\n",
- " | \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 0 | \n", - "4308794 | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "0 | \n", - "1.0 | \n", - "1.000000 | \n", - "1 | \n", - "
| 1 | \n", - "432453 | \n", - "{3655685, 4294662, 4032527, 4032528, 4032529, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "986 | \n", - "1.0 | \n", - "0.006048 | \n", - "2 | \n", - "
| 2 | \n", - "4089214 | \n", - "{46284803, 4153350, 4120591, 3661842, 3661843,... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "4195 | \n", - "1.0 | \n", - "0.001428 | \n", - "5 | \n", - "
| 3 | \n", - "4041284 | \n", - "{4259853, 4161577, 4161578, 4161579, 4128815, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "7135 | \n", - "1.0 | \n", - "0.000840 | \n", - "5 | \n", - "
| 4 | \n", - "4094294 | \n", - "{4259853, 4161577, 4161578, 4161579, 4227116, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "14450 | \n", - "1.0 | \n", - "0.000415 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 0 | \n", - "432453 | \n", - "{3655685, 4294662, 46270485, 35610650, 4202524... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "9 | \n", - "538 | \n", - "1.000000 | \n", - "0.016453 | \n", - "2 | \n", - "
| 1 | \n", - "4308794 | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "0 | \n", - "0.666667 | \n", - "1.000000 | \n", - "1 | \n", - "
| 2 | \n", - "4089214 | \n", - "{46284803, 4153350, 4120591, 3661842, 3661843,... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "4195 | \n", - "0.666667 | \n", - "0.001428 | \n", - "5 | \n", - "
| 3 | \n", - "4041284 | \n", - "{4259853, 4161577, 4161578, 4161579, 4128815, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "7135 | \n", - "0.666667 | \n", - "0.000840 | \n", - "5 | \n", - "
| 4 | \n", - "4094294 | \n", - "{4259853, 4161577, 4161578, 4161579, 4227116, ... | \n", - "{4174241, 4172043, 4174251, 4173614, 4173456, ... | \n", - "6 | \n", - "14450 | \n", - "0.666667 | \n", - "0.000415 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 159 | \n", - "135858 | \n", - "{36528135, 36519943, 36536330, 4145173, 365609... | \n", - "{36562945, 36532227, 36546565, 36517893, 36519... | \n", - "718 | \n", - "775 | \n", - "0.978202 | \n", - "0.480911 | \n", - "7 | \n", - "
| 136 | \n", - "4116808 | \n", - "{36528135, 36519943, 36536330, 36560921, 41779... | \n", - "{36562945, 36532227, 36546565, 36517893, 36519... | \n", - "718 | \n", - "694 | \n", - "0.978202 | \n", - "0.508499 | \n", - "6 | \n", - "
| 135 | \n", - "37161350 | \n", - "{36519943, 36528135, 36536330, 36560921, 36544... | \n", - "{36562945, 36532227, 36546565, 36517893, 36519... | \n", - "718 | \n", - "520 | \n", - "0.978202 | \n", - "0.579968 | \n", - "6 | \n", - "
| 101 | \n", - "4054605 | \n", - "{602113, 4313090, 602115, 36532227, 602114, 36... | \n", - "{36562945, 36532227, 36546565, 36517893, 36519... | \n", - "718 | \n", - "509 | \n", - "0.978202 | \n", - "0.585167 | \n", - "5 | \n", - "
| 54 | \n", - "4180779 | \n", - "{602113, 4313090, 602115, 36532227, 602114, 36... | \n", - "{36562945, 36532227, 36546565, 36517893, 36519... | \n", - "718 | \n", - "240 | \n", - "0.978202 | \n", - "0.749478 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 69 | \n", - "4178962 | \n", - "{36560896, 36528130, 36552707, 36524036, 36536... | \n", - "{36566017, 36562435, 36561419, 36555283, 36536... | \n", - "142 | \n", - "1033 | \n", - "0.986111 | \n", - "0.120851 | \n", - "4 | \n", - "
| 33 | \n", - "437498 | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "{36566017, 36562435, 36561419, 36555283, 36536... | \n", - "142 | \n", - "985 | \n", - "0.986111 | \n", - "0.125998 | \n", - "3 | \n", - "
| 87 | \n", - "4054607 | \n", - "{36566017, 4248065, 36562435, 4158473, 3656141... | \n", - "{36566017, 36562435, 36561419, 36555283, 36536... | \n", - "142 | \n", - "40 | \n", - "0.986111 | \n", - "0.780220 | \n", - "4 | \n", - "
| 34 | \n", - "4181332 | \n", - "{36566017, 4248065, 36562435, 4158473, 3656141... | \n", - "{36566017, 36562435, 36561419, 36555283, 36536... | \n", - "142 | \n", - "13 | \n", - "0.986111 | \n", - "0.916129 | \n", - "3 | \n", - "
| 0 | \n", - "256633 | \n", - "{36566017, 36562435, 36561419, 36555283, 36536... | \n", - "{36566017, 36562435, 36561419, 36555283, 36536... | \n", - "142 | \n", - "4 | \n", - "0.986111 | \n", - "0.972603 | \n", - "2 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 204 | \n", - "432941 | \n", - "{36560896, 36528130, 36552707, 36536324, 36519... | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "962 | \n", - "555 | \n", - "0.989712 | \n", - "0.634146 | \n", - "8 | \n", - "
| 176 | \n", - "4103982 | \n", - "{36560896, 36528130, 36552707, 36536324, 36519... | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "962 | \n", - "468 | \n", - "0.989712 | \n", - "0.672727 | \n", - "7 | \n", - "
| 177 | \n", - "40481371 | \n", - "{36560896, 36528130, 36552707, 36536324, 36519... | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "962 | \n", - "414 | \n", - "0.989712 | \n", - "0.699128 | \n", - "7 | \n", - "
| 139 | \n", - "4130375 | \n", - "{36560896, 36528130, 36552707, 36536324, 36519... | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "962 | \n", - "405 | \n", - "0.989712 | \n", - "0.703731 | \n", - "6 | \n", - "
| 85 | \n", - "4178962 | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "{36560896, 36528130, 36552707, 36536324, 36524... | \n", - "962 | \n", - "213 | \n", - "0.989712 | \n", - "0.818723 | \n", - "5 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 84 | \n", - "4246124 | \n", - "{36546563, 36540420, 36548612, 602118, 602126,... | \n", - "{36540420, 36548612, 36558862, 36544539, 44503... | \n", - "450 | \n", - "165 | \n", - "0.986842 | \n", - "0.731707 | \n", - "3 | \n", - "
| 154 | \n", - "37163090 | \n", - "{36548612, 36540420, 36548614, 602118, 602126,... | \n", - "{36548612, 36540420, 36558862, 36544539, 44503... | \n", - "450 | \n", - "130 | \n", - "0.986842 | \n", - "0.775862 | \n", - "5 | \n", - "
| 129 | \n", - "4054612 | \n", - "{36548612, 36540420, 36548614, 602118, 3655886... | \n", - "{36548612, 36540420, 36558862, 36544539, 44503... | \n", - "450 | \n", - "112 | \n", - "0.986842 | \n", - "0.800712 | \n", - "4 | \n", - "
| 82 | \n", - "4178963 | \n", - "{36548612, 36540420, 602118, 602126, 36558862,... | \n", - "{36548612, 36540420, 36558862, 36544539, 44503... | \n", - "450 | \n", - "26 | \n", - "0.986842 | \n", - "0.945378 | \n", - "3 | \n", - "
| 6 | \n", - "140950 | \n", - "{36540420, 36548612, 602118, 36558862, 440335,... | \n", - "{36540420, 36548612, 36558862, 36544539, 44503... | \n", - "450 | \n", - "10 | \n", - "0.986842 | \n", - "0.978261 | \n", - "2 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 74 | \n", - "4247357 | \n", - "{36552704, 36560896, 36528130, 36552707, 36536... | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "601 | \n", - "3795 | \n", - "0.988487 | \n", - "0.136715 | \n", - "3 | \n", - "
| 75 | \n", - "439404 | \n", - "{36552704, 36560896, 36528130, 36552707, 36536... | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "601 | \n", - "3626 | \n", - "0.988487 | \n", - "0.142181 | \n", - "3 | \n", - "
| 121 | \n", - "4130381 | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "601 | \n", - "321 | \n", - "0.988487 | \n", - "0.651844 | \n", - "4 | \n", - "
| 76 | \n", - "4177101 | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "601 | \n", - "201 | \n", - "0.988487 | \n", - "0.749377 | \n", - "3 | \n", - "
| 0 | \n", - "135750 | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "{36556800, 36521986, 44498948, 36536325, 36556... | \n", - "601 | \n", - "179 | \n", - "0.988487 | \n", - "0.770513 | \n", - "2 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 166 | \n", - "4091365 | \n", - "{602112, 36562944, 42512387, 45768712, 3653018... | \n", - "{42512387, 36530184, 44501004, 36550670, 36524... | \n", - "751 | \n", - "448 | \n", - "0.985564 | \n", - "0.626355 | \n", - "7 | \n", - "
| 150 | \n", - "4028251 | \n", - "{602112, 36562944, 42512387, 45768712, 3653018... | \n", - "{42512387, 36530184, 44501004, 36550670, 36524... | \n", - "751 | \n", - "424 | \n", - "0.985564 | \n", - "0.639149 | \n", - "6 | \n", - "
| 151 | \n", - "37162644 | \n", - "{602112, 36562944, 42512387, 36530184, 602123,... | \n", - "{42512387, 36530184, 44501004, 36550670, 36524... | \n", - "751 | \n", - "180 | \n", - "0.985564 | \n", - "0.806660 | \n", - "6 | \n", - "
| 126 | \n", - "4131604 | \n", - "{602112, 36562944, 42512387, 36530184, 602123,... | \n", - "{42512387, 36530184, 44501004, 36550670, 36524... | \n", - "751 | \n", - "166 | \n", - "0.985564 | \n", - "0.818975 | \n", - "5 | \n", - "
| 85 | \n", - "4178964 | \n", - "{602112, 42512387, 36530184, 602123, 44501004,... | \n", - "{42512387, 36530184, 44501004, 36550670, 36524... | \n", - "751 | \n", - "40 | \n", - "0.985564 | \n", - "0.949431 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 177 | \n", - "4307122 | \n", - "{36536324, 44498948, 36536325, 44498950, 36536... | \n", - "{36552704, 36538370, 44500996, 36540422, 36560... | \n", - "754 | \n", - "8475 | \n", - "0.990802 | \n", - "0.081699 | \n", - "8 | \n", - "
| 150 | \n", - "4042502 | \n", - "{36536324, 44498948, 36536325, 44498950, 36536... | \n", - "{36552704, 36538370, 44500996, 36540422, 36560... | \n", - "754 | \n", - "7978 | \n", - "0.990802 | \n", - "0.086349 | \n", - "7 | \n", - "
| 93 | \n", - "43530620 | \n", - "{36536324, 44498948, 36536325, 44498950, 36536... | \n", - "{36552704, 36538370, 44500996, 36540422, 36560... | \n", - "754 | \n", - "6399 | \n", - "0.990802 | \n", - "0.105410 | \n", - "6 | \n", - "
| 192 | \n", - "4184252 | \n", - "{44498945, 4096016, 4194323, 36536341, 4449896... | \n", - "{36552704, 36538370, 44500996, 36540422, 36560... | \n", - "754 | \n", - "6023 | \n", - "0.990802 | \n", - "0.111259 | \n", - "7 | \n", - "
| 6 | \n", - "4130986 | \n", - "{36536324, 44498948, 36536325, 44498950, 36536... | \n", - "{36552704, 36538370, 44500996, 36540422, 36560... | \n", - "754 | \n", - "5376 | \n", - "0.990802 | \n", - "0.123002 | \n", - "5 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 108 | \n", - "4322566 | \n", - "{44498950, 42512393, 36521996, 4096013, 365445... | \n", - "{42512896, 42511876, 44498950, 36544007, 44500... | \n", - "185 | \n", - "928 | \n", - "0.968586 | \n", - "0.166217 | \n", - "7 | \n", - "
| 90 | \n", - "4122227 | \n", - "{44498950, 42512393, 36521996, 36544530, 44498... | \n", - "{42512896, 42511876, 44498950, 36544007, 44500... | \n", - "185 | \n", - "902 | \n", - "0.968586 | \n", - "0.170193 | \n", - "6 | \n", - "
| 91 | \n", - "4054610 | \n", - "{44498950, 42512393, 36521996, 36544530, 44498... | \n", - "{42512896, 42511876, 44498950, 36544007, 44500... | \n", - "185 | \n", - "862 | \n", - "0.968586 | \n", - "0.176695 | \n", - "5 | \n", - "
| 92 | \n", - "4202556 | \n", - "{42512896, 4025347, 42511876, 44498950, 365440... | \n", - "{42512896, 42511876, 44498950, 36544007, 44500... | \n", - "185 | \n", - "58 | \n", - "0.968586 | \n", - "0.761317 | \n", - "5 | \n", - "
| 68 | \n", - "4130984 | \n", - "{42512896, 42511876, 44498950, 36544007, 44500... | \n", - "{42512896, 42511876, 44498950, 36544007, 44500... | \n", - "185 | \n", - "48 | \n", - "0.968586 | \n", - "0.793991 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 196 | \n", - "25572 | \n", - "{44498950, 42512393, 36521996, 4096013, 409601... | \n", - "{36544530, 36562967, 36562968, 36528152, 36567... | \n", - "688 | \n", - "526 | \n", - "0.984263 | \n", - "0.566722 | \n", - "7 | \n", - "
| 177 | \n", - "4114483 | \n", - "{44498950, 42512393, 36521996, 4096013, 409601... | \n", - "{36544530, 36562967, 36562968, 36528152, 36567... | \n", - "688 | \n", - "441 | \n", - "0.984263 | \n", - "0.609389 | \n", - "6 | \n", - "
| 178 | \n", - "4322566 | \n", - "{44498950, 42512393, 36521996, 4096013, 365445... | \n", - "{36544530, 36562967, 36562968, 36528152, 36567... | \n", - "688 | \n", - "425 | \n", - "0.984263 | \n", - "0.618149 | \n", - "6 | \n", - "
| 155 | \n", - "4122227 | \n", - "{44498950, 42512393, 36521996, 36544530, 44498... | \n", - "{36544530, 36562967, 36562968, 36528152, 36567... | \n", - "688 | \n", - "399 | \n", - "0.984263 | \n", - "0.632935 | \n", - "5 | \n", - "
| 130 | \n", - "4054610 | \n", - "{44498950, 42512393, 36521996, 36544530, 44498... | \n", - "{36544530, 36562967, 36562968, 36528152, 36567... | \n", - "688 | \n", - "359 | \n", - "0.984263 | \n", - "0.657116 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 204 | \n", - "4177243 | \n", - "{44498945, 36560900, 36519941, 36528141, 36560... | \n", - "{36519941, 36562956, 36524045, 36530193, 36532... | \n", - "666 | \n", - "3389 | \n", - "0.989599 | \n", - "0.164242 | \n", - "7 | \n", - "
| 273 | \n", - "4054510 | \n", - "{36519941, 36560915, 36536342, 36560929, 41779... | \n", - "{36519941, 36562956, 36524045, 36530193, 36532... | \n", - "666 | \n", - "1463 | \n", - "0.989599 | \n", - "0.312823 | \n", - "7 | \n", - "
| 241 | \n", - "46270500 | \n", - "{36519941, 36560915, 36536342, 36560929, 36519... | \n", - "{36519941, 36562956, 36524045, 36530193, 36532... | \n", - "666 | \n", - "1406 | \n", - "0.989599 | \n", - "0.321429 | \n", - "7 | \n", - "
| 205 | \n", - "4054617 | \n", - "{36519941, 36560915, 36536342, 36560929, 36519... | \n", - "{36519941, 36562956, 36524045, 36530193, 36532... | \n", - "666 | \n", - "1351 | \n", - "0.989599 | \n", - "0.330193 | \n", - "6 | \n", - "
| 117 | \n", - "4181338 | \n", - "{36519941, 36560915, 36536342, 36560929, 36519... | \n", - "{36519941, 36562956, 36524045, 36530193, 36532... | \n", - "666 | \n", - "1103 | \n", - "0.989599 | \n", - "0.376484 | \n", - "6 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 123 | \n", - "4274025 | \n", - "{4194320, 4194323, 4194328, 4194355, 4194365, ... | \n", - "{36556803, 36554756, 36562951, 36558856, 36540... | \n", - "1145 | \n", - "165228 | \n", - "0.975298 | \n", - "0.006882 | \n", - "12 | \n", - "
| 124 | \n", - "4102111 | \n", - "{36522894, 36403062, 36403063, 42598455, 42598... | \n", - "{36556803, 36554756, 36562951, 36558856, 36540... | \n", - "1145 | \n", - "68764 | \n", - "0.975298 | \n", - "0.016378 | \n", - "11 | \n", - "
| 223 | \n", - "4266186 | \n", - "{36403062, 36403063, 42598455, 42598456, 42598... | \n", - "{36556803, 36554756, 36562951, 36558856, 36540... | \n", - "1145 | \n", - "68495 | \n", - "0.975298 | \n", - "0.016442 | \n", - "9 | \n", - "
| 1 | \n", - "438112 | \n", - "{36403062, 36403063, 42598456, 42598461, 36403... | \n", - "{36556803, 36554756, 36562951, 36558856, 36540... | \n", - "1145 | \n", - "68127 | \n", - "0.975298 | \n", - "0.016529 | \n", - "10 | \n", - "
| 122 | \n", - "443392 | \n", - "{36524322, 42598456, 36559370, 36403071, 42598... | \n", - "{36556803, 36554756, 36562951, 36558856, 36540... | \n", - "1145 | \n", - "55071 | \n", - "0.975298 | \n", - "0.020368 | \n", - "9 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 187 | \n", - "435836 | \n", - "{44503040, 36526083, 36560900, 36524041, 60212... | \n", - "{44503040, 36526083, 36560900, 36524041, 36542... | \n", - "961 | \n", - "245 | \n", - "0.984631 | \n", - "0.796849 | \n", - "8 | \n", - "
| 165 | \n", - "44783160 | \n", - "{44503040, 36526083, 36560900, 36524041, 60212... | \n", - "{44503040, 36526083, 36560900, 36524041, 36542... | \n", - "961 | \n", - "211 | \n", - "0.984631 | \n", - "0.819966 | \n", - "7 | \n", - "
| 164 | \n", - "4181960 | \n", - "{44503040, 36526083, 36560900, 36524041, 60212... | \n", - "{44503040, 36526083, 36560900, 36524041, 36542... | \n", - "961 | \n", - "195 | \n", - "0.984631 | \n", - "0.831315 | \n", - "7 | \n", - "
| 136 | \n", - "4054514 | \n", - "{44503040, 36526083, 36560900, 36524041, 60212... | \n", - "{44503040, 36526083, 36560900, 36524041, 36542... | \n", - "961 | \n", - "185 | \n", - "0.984631 | \n", - "0.838569 | \n", - "6 | \n", - "
| 96 | \n", - "4095312 | \n", - "{44503040, 36526083, 36560900, 36524041, 60212... | \n", - "{44503040, 36526083, 36560900, 36524041, 36542... | \n", - "961 | \n", - "70 | \n", - "0.984631 | \n", - "0.932105 | \n", - "5 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 46 | \n", - "4181342 | \n", - "{44498945, 36534274, 36558851, 36517896, 36556... | \n", - "{44498945, 36567557, 36567567, 36539926, 36534... | \n", - "133 | \n", - "710 | \n", - "0.992537 | \n", - "0.157770 | \n", - "5 | \n", - "
| 31 | \n", - "439746 | \n", - "{44498945, 36534274, 36558851, 36517896, 36556... | \n", - "{44498945, 36567557, 36567567, 36539926, 36534... | \n", - "133 | \n", - "676 | \n", - "0.992537 | \n", - "0.164400 | \n", - "4 | \n", - "
| 38 | \n", - "4129252 | \n", - "{44498945, 36560901, 36567557, 36567567, 43156... | \n", - "{44498945, 36567557, 36567567, 36539926, 36534... | \n", - "133 | \n", - "31 | \n", - "0.992537 | \n", - "0.810976 | \n", - "4 | \n", - "
| 32 | \n", - "4180789 | \n", - "{44498945, 36567557, 36567567, 4315668, 365399... | \n", - "{44498945, 36567557, 36567567, 36539926, 36534... | \n", - "133 | \n", - "5 | \n", - "0.992537 | \n", - "0.963768 | \n", - "4 | \n", - "
| 1 | \n", - "435190 | \n", - "{44498945, 36567557, 36567567, 36539926, 36534... | \n", - "{44498945, 36567557, 36567567, 36539926, 36534... | \n", - "133 | \n", - "1 | \n", - "0.992537 | \n", - "0.992537 | \n", - "2 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 249 | \n", - "4129247 | \n", - "{44498945, 36534274, 36558851, 36560901, 36517... | \n", - "{36534274, 36558851, 36517896, 36556809, 36548... | \n", - "651 | \n", - "378 | \n", - "0.973094 | \n", - "0.632653 | \n", - "8 | \n", - "
| 212 | \n", - "44783159 | \n", - "{44498945, 36534274, 36558851, 36560901, 36517... | \n", - "{36534274, 36558851, 36517896, 36556809, 36548... | \n", - "651 | \n", - "366 | \n", - "0.973094 | \n", - "0.640118 | \n", - "8 | \n", - "
| 154 | \n", - "4129250 | \n", - "{44498945, 36534274, 36558851, 36560901, 36517... | \n", - "{36534274, 36558851, 36517896, 36556809, 36548... | \n", - "651 | \n", - "359 | \n", - "0.973094 | \n", - "0.644554 | \n", - "6 | \n", - "
| 99 | \n", - "4181342 | \n", - "{44498945, 36534274, 36558851, 36517896, 36556... | \n", - "{36534274, 36558851, 36517896, 36556809, 36548... | \n", - "651 | \n", - "192 | \n", - "0.973094 | \n", - "0.772242 | \n", - "5 | \n", - "
| 4 | \n", - "439746 | \n", - "{44498945, 36534274, 36558851, 36517896, 36556... | \n", - "{36534274, 36558851, 36517896, 36556809, 36548... | \n", - "651 | \n", - "158 | \n", - "0.973094 | \n", - "0.804697 | \n", - "4 | \n", - "
| \n", - " | concept_id | \n", - "descendants | \n", - "found | \n", - "coverage | \n", - "pollution | \n", - "completeness | \n", - "purity | \n", - "max_depth | \n", - "
|---|---|---|---|---|---|---|---|---|
| 132 | \n", - "4115106 | \n", - "{42598582, 42598955, 42599092, 42599192, 43266... | \n", - "{36564997, 36526091, 36528139, 36556815, 36522... | \n", - "379 | \n", - "22528 | \n", - "0.986979 | \n", - "0.016545 | \n", - "7 | \n", - "
| 17 | \n", - "4111017 | \n", - "{4194462, 42598582, 4194827, 132258, 42599689,... | \n", - "{36564997, 36526091, 36528139, 36556815, 36522... | \n", - "379 | \n", - "22419 | \n", - "0.986979 | \n", - "0.016624 | \n", - "7 | \n", - "
| 92 | \n", - "4028253 | \n", - "{42598582, 42599844, 132565, 132573, 42599972,... | \n", - "{36564997, 36526091, 36528139, 36556815, 36522... | \n", - "379 | \n", - "22101 | \n", - "0.986979 | \n", - "0.016859 | \n", - "6 | \n", - "
| 18 | \n", - "196931 | \n", - "{44498945, 36536321, 44498948, 36536324, 44498... | \n", - "{36564997, 36526091, 36528139, 36556815, 36522... | \n", - "379 | \n", - "18788 | \n", - "0.986979 | \n", - "0.019774 | \n", - "5 | \n", - "
| 128 | \n", - "4184252 | \n", - "{44498945, 4096016, 4194323, 36536341, 4449896... | \n", - "{36564997, 36526091, 36528139, 36556815, 36522... | \n", - "379 | \n", - "6049 | \n", - "0.986979 | \n", - "0.058961 | \n", - "9 | \n", - "