Skip to content
Search/
CyberMax › Answers

How to get 10-K and 10-Q section text (risk factors, MD&A) into pandas

Updated 2026-11-05 · Data and API builders · by CyberMax

Short answer

Annual (10-K) and quarterly (10-Q) reports have standard sections; Item 1A is risk factors and Item 7 is MD&A. The Riskroll dataset stores section text per filing in monthly files; load "sections", filter to Item 1A and search the text.

  1. pip install datasets
  2. Load the "sections" config.
  3. Filter to the section you need (Item 1A risk factors).
  4. Join "filings" for company and date; compare a company's text year over year.

Copy-paste code

Data: CyberMax dataset on Hugging Face; load it with the datasets library (pip install datasets)

from datasets import load_dataset

ds = load_dataset("CyberMax-tools/riskroll-sec-10k-10q-sections", "sections", split="train")
df = ds.to_pandas()
print(len(df), "rows")
print(df.head())
Deltawren API icon

Deltawren API: Your dataset, fresh every day, with what changed

from $19/month

Want the dataset fresh every day with what changed? Deltawren daily data feeds deliver it with a change log.

Secure checkout · 14-day fix-or-refund if it doesn't work as described (terms)

Free: the Free API Starter Kit

Copy-paste calls for 4 APIs with free daily tiers (CVE priority, VIN recalls, US duty rates, email checks), then 5 short emails on KEV/EPSS, MCP and free data.

You get one email to confirm first. Then the kit, and 5 short emails over two weeks. One-click unsubscribe in every email; we never share your address.