Rebuild the full Predicted-only Ledger Z=1–118 and export as Markdown and CSV


# Rebuild the full Predicted-only Ledger Z=1–118 and export as Markdown and CSV

import pandas as pd

# Known isotopes per element from earlier strict ledger approximation
# We'll use the same list of rows we used to generate the strict ledger (Z=1-118 with Known values)
rows_known = [
    ("H (1)", 7), ("He (2)", 9), ("Li (3)", 11), ("Be (4)", 12), ("B (5)", 13), ("C (6)", 15),
    ("N (7)", 16), ("O (8)", 17), ("F (9)", 18), ("Ne (10)", 19), ("Na (11)", 20), ("Mg (12)", 22),
    ("Al (13)", 22), ("Si (14)", 23), ("P (15)", 23), ("S (16)", 24), ("Cl (17)", 24), ("Ar (18)", 24),
    ("K (19)", 24), ("Ca (20)", 24), ("Sc (21)", 25), ("Ti (22)", 26), ("V (23)", 26), ("Cr (24)", 26),
    ("Mn (25)", 26), ("Fe (26)", 28), ("Co (27)", 29), ("Ni (28)", 31), ("Cu (29)", 29), ("Zn (30)", 30),
    ("Ga (31)", 31), ("Ge (32)", 32), ("As (33)", 33), ("Se (34)", 30), ("Br (35)", 31), ("Kr (36)", 32),
    ("Rb (37)", 32), ("Sr (38)", 34), ("Y (39)", 32), ("Zr (40)", 34), ("Nb (41)", 34), ("Mo (42)", 35),
    ("Tc (43)", 36), ("Ru (44)", 37), ("Rh (45)", 35), ("Pd (46)", 36), ("Ag (47)", 38), ("Cd (48)", 39),
    ("In (49)", 39), ("Sn (50)", 40), ("Sb (51)", 36), ("Te (52)", 38), ("I (53)", 37), ("Xe (54)", 40),
    ("Cs (55)", 39), ("Ba (56)", 40), ("La (57)", 39), ("Ce (58)", 40), ("Pr (59)", 39), ("Nd (60)", 41),
    ("Pm (61)", 39), ("Sm (62)", 41), ("Eu (63)", 40), ("Gd (64)", 41), ("Tb (65)", 39), ("Dy (66)", 40),
    ("Ho (67)", 39), ("Er (68)", 40), ("Tm (69)", 39), ("Yb (70)", 41), ("Lu (71)", 40), ("Hf (72)", 36),
    ("Ta (73)", 37), ("W (74)", 35), ("Re (75)", 39), ("Os (76)", 35), ("Ir (77)", 34), ("Pt (78)", 35),
    ("Au (79)", 36), ("Hg (80)", 38), ("Tl (81)", 39), ("Pb (82)", 43), ("Bi (83)", 41), ("Po (84)", 42),
    ("At (85)", 39), ("Rn (86)", 39), ("Fr (87)", 34), ("Ra (88)", 34), ("Ac (89)", 33), ("Th (90)", 31),
    ("Pa (91)", 29), ("U (92)", 28), ("Np (93)", 20), ("Pu (94)", 20), ("Am (95)", 17), ("Cm (96)", 19),
    ("Bk (97)", 21), ("Cf (98)", 20), ("Es (99)", 18), ("Fm (100)", 19), ("Md (101)", 16), ("No (102)", 13),
    ("Lr (103)", 16), ("Rf (104)", 18), ("Db (105)", 16), ("Sg (106)", 14), ("Bh (107)", 15), ("Hs (108)", 15),
    ("Mt (109)", 13), ("Ds (110)", 15), ("Rg (111)", 11), ("Cn (112)", 9), ("Nh (113)", 9), ("Fl (114)", 6),
    ("Mc (115)", 4), ("Lv (116)", 4), ("Ts (117)", 2), ("Og (118)", 1)
]

df_known = pd.DataFrame(rows_known, columns=["Element (Z)", "Isotopes Known"])
KNOWN_TOTAL = df_known["Isotopes Known"].sum()
TARGET_TOTAL = 7759
scale = TARGET_TOTAL / KNOWN_TOTAL

df_known["Predicted Isotopes (est.)"] = (df_known["Isotopes Known"] * scale).round().astype(int)

# Adjust drift
drift = TARGET_TOTAL - df_known["Predicted Isotopes (est.)"].sum()
if drift != 0:
    frac = (df_known["Isotopes Known"] * scale) - (df_known["Predicted Isotopes (est.)"])
    idx = frac.idxmax() if drift > 0 else frac.idxmin()
    df_known.loc[idx, "Predicted Isotopes (est.)"] += drift

pred_total = df_known["Predicted Isotopes (est.)"].sum()

# Save outputs
pred_csv = "/mnt/data/isotope_predicted_only_Z1-118.csv"
pred_md = "/mnt/data/isotope_predicted_only_Z1-118.md"
df_known.to_csv(pred_csv, index=False)

md_text = df_known.to_markdown(index=False)
with open(pred_md, "w", encoding="utf-8") as f:
    f.write("# Predicted-only Isotope Ledger (Z = 1 → 118)\n")
    f.write("Method: proportional scaling of known isotope chains so the sum = 7,759 (Neufcourt et al. 2020).\n\n")
    f.write(md_text + "\n\n")
    f.write(f"**Total predicted isotopes:** {pred_total}\n")

from caas_jupyter_tools import display_dataframe_to_user
display_dataframe_to_user("Predicted-only Ledger (Z = 1 → 118)", df_known)

pred_total, pred_csv, pred_md




Key terms in plain language

Open a term for a concise explanation of language used on this page.

Broadband

A general term for always-on, high-speed Internet access. Broadband can be delivered over fiber, cable, DSL, fixed wireless, cellular, or satellite networks.

Cloud Computing

Computing resources—such as applications, servers, storage, or databases—delivered from remote infrastructure and scaled as requirements change.

Cybersecurity

The practices and controls used to protect identities, devices, networks, applications, and data from unauthorized access, disruption, or manipulation.

Identity and Access Management (IAM)

The systems and policies that determine who a user is, what resources they may access, and how that access is authenticated and reviewed.

API

An application programming interface is a defined way for software systems to exchange data or request functions from one another.

Artificial Intelligence (AI)

Software designed to perform tasks involving prediction, classification, generation, reasoning, or decision support. Business use still requires clear data, governance, security, and human accountability.