Jednotka 6 / 11

Analýza chemických údajov a Python: pandy, stechiometria a kalibrácia

zisky:

  • Schopnosť založiť numerické výsledky skôr na vykonanom kóde Pythonu než na verbálnom hádaní jazykového modelu
  • Schopnosť napísať kód stechiometrie, kalibrácie a čistenia dát do umelej inteligencie a otestovať ho na vzorkách so známymi odpoveďami
  • Schopnosť predchádzať chybám analýzy údajov vždy špecifikovaním jednotiek a kontrolou ich poradia

Chémia je plná čísel: váženia, objemy, hodnoty absorbancie, výťažky, koncentrácie. Ručné spracovanie týchto údajov je pomalé a náchylné na chyby. AI tu poskytuje dve hlavné služby: (1) píše kód Python, ktorý spracováva údaje, (2) spúšťa tento kód (v prostredí, ktoré dokáže spustiť kód) a poskytuje deterministický výsledok. Kritický princíp je tento: ponechať výpočet na výstup spusteného kódu, nie na „verbálnu predikciu“ jazykového modelu. Jazykový model "Čo je 142 × 0,05?" môže niekedy odpovedať na otázku nesprávne; ale riadok Pythonu, ktorý napíše, vždy vypočíta správne. V tejto lekcii sa naučíme chemickú analýzu údajov pomocou AI s touto filozofiou.

Prečo je kód lepší ako verbálne hádanie?

Jazykový model robí aritmetiku „predpovedaním možného výsledku“; takže to môže byť nesprávne s veľkými číslami alebo viackrokovým počtom. Zatiaľ čo v Pythone je výraz 142 * 0,05 deterministický: vždy vráti 7,1. Takže stratégia: nenechajte AI vykonať výpočet, vytlačte KÓD výpočtu a spustite kód. Takže využijete kreativitu AI (tvorba kódu) a zakážete nespoľahlivú stranu (aritmetika hlavy).

Tip: Keď získate číselný výsledok z AI, povedzte „reprezentuj to riadkom Pythonu“. Samotný kód overí účet a umožní vám ho spustiť a potvrdiť. Ak kód nevidíte, neverte číslu.

Typické úlohy analýzy dát v chémii

  • Stechiometria: mól, hmotnosť, limitné činidlo, teoretický výťažok, výpočet percenta výťažku.
  • Koncentrácia: molarita, riedenie (M1V1 = M2V2), konverzie ppm.
  • Kalibrácia: Kreslenie kalibračnej čiary s Beer-Lambertovým zákonom (absorbancia ∝ koncentrácia) a výpočet neznámej.
  • Čistenie údajov: čítanie tabuliek meraní s pandami, označenie odľahlých hodnôt, priemer/štandardná odchýlka.
  • Vizualizácia: kreslenie kalibračnej krivky, graf kinetiky, titračná krivka.

Krok za krokom: Bezpečná analýza údajov pomocou AI

  1. Definujte údaje: Jasne uveďte stĺpce, jednotky, vzorové riadky. Ak neexistuje žiadna jednotka, AI robí predpoklady.
  2. Požiadajte o kód, nie o výsledky: povedzte „Napíšte kód pandas/NumPy, ktorý to vypočíta“.
  3. Spustite kód: Spustite ho sami alebo v prostredí, ktoré dokáže spustiť kód.
  4. Test s jednoduchým prípadom: Testujte kód s malým príkladom, kde poznáte odpoveď.
  5. Kontrola jednotiek a objednávok: Sú jednotka a veľkosť výsledku fyzicky primerané?
  6. Dokument: Pridajte kód a výstup do poznámkového bloku experimentu (jednotka 8).

Štyri kopírovateľné šablóny

1) Stechiometria a percentuálny výťažok:

Reakcia: kyselina salicylová (MA 138.12) + anhydrid kyseliny octovej -> aspirín (MA 180.16).Údaje: Použili sa 2,00 g kyseliny salicylovej, anhydrid kyseliny octovej bol v prebytku. Získaný aspirín: 2,15 g.Úloha: Napíšte kód Pythonu v jednotkách molekulovej hmotnosti, výsledok nevypočítajte v premenlivej molekulovej hmotnosti a percentuálnom výťažku. hlava; stačí dať spustiteľný kód.

2) Kalibrácia Beer-Lambert:

Kalibračné údaje (koncentrácia mol/L -> absorbancia): 0,00->0,02, 0,02->0,21, 0,04->0,40, 0,06->0,62, 0,08->0,79. Absorbancia neznámej vzorky: 0,50. Úloha: Vykonajte lineárnu kalibráciu pomocou numpy.polyfit, slope/intercept a Calculate R^2, nájdite neznámu koncentráciu. Nakreslite údaje + fit čiaru pomocou matplotlib.

3) meracia tabuľka s pandami:

Mám CSV: stĺpce = vzorka, hmotnosť_g, objem_mL, absorbancia. Úloha: odčítajte s pandami, vypočítajte koncentráciu (g/l) pre každú vzorku, označte riadky s absorbanciou < 0 ako nesprávne, zadajte kód na vytlačenie priemeru a štandardnej odchýlky skupín. Zadajte jednotky pomocou riadku s komentárom.

4) Overenie účtu riedenia:

Chcem pripraviť 100 ml 0,05 M roztoku z 0,5 M zásobného roztoku. Úloha: Napíšte riadok Pythonu, ktorý vypočíta požadovaný objem zásob s M1V1=M2V2. Vytlačte výsledok v ml a overte ako poznámku, že pre logickú kontrolu sa očakáva 10-násobné riedenie.

Slabá výzva / Silná výzva

slabé:

Koľko aspirínu pochádza z 2 gramov kyseliny salicylovej?

AI dáva číslo z hlavy; Ak si nesprávne zapamätá molekulové hmotnosti, výsledok bude skreslený a nebude vidieť, ako bol vypočítaný.

Silný:

Predpokladajme, že kyselina salicylová MA=138,12, aspirín MA=180,16, hmotnosť=2,00 g, výťažok 100 %.Úloha: Napíšte Python kód, ktorý vypočíta teoretickú hmotnosť aspirínu; komentujte každý krok (mol -> mol -> hmotnosť), vytlačte výsledok v g.

Rozdiel: uvedené molekulové hmotnosti, požadovaný kód, kroky komentované, jednotka špecifikovaná. Výsledok je presný a overiteľný.

Verbálna predikcia atď. vykonaný kód

Veľkosť

Verbálna predikcia jazykového modelu

Spustenie Pythonu

Aritmetická presnosť

Variabilné, môže sa vyskytnúť chyba

Deterministický, istý

Auditovateľnosť

Potrat (nie je jasné, ako sa to stalo)

Vysoká (viditeľný kód)

opakovateľnosť

nízka

vysoká

Sledovanie jednotiek

slabý

Môže byť otvorený v kóde

Správne používanie

Idea, štruktúra stavby

Konečný číselný výsledok

mini prípady

Prípad 1 – Verbálna aritmetická chyba. Študent sa pýta AI "0,0145 mol × 180,16 g/mol?" spýtal sa; "2,72 g," povedala AI. V skutočnosti je to 2,61 g. Keď študent povedal „ukázať to v Pythone“, YZ napísal 0,0145 * 180,16 a vyšlo to ako 2 612; Prvá verbálna odpoveď bola nesprávna. Ponaučenie: uprednostňujte kód aj pre veľmi jednoduché násobenie.

Prípad 2 – R² kontrola pri kalibrácii. Jeden používateľ mal vykonanú kalibráciu Beer-Lambert; Ukázalo sa, že R² = 0,981. AI ​​povedala „lineárne, spoľahlivé“, ale bod s najvyššou koncentráciou bol pod čiarou (sýtosť). Keď používateľ videl graf, posunul najvyšší bod z lineárneho rozsahu, R² sa zvýšil na 0,999. Poučenie: R² samotné nestačí; pozri zvyšky/zákres.

Prípad 3 – Zámena jednotiek. V jednej analýze nebolo jasné, či koncentrácia bola mg/l alebo g/l; AI ​​predpokladala g/l a výsledky boli 1000-krát nesprávne. Bol opravený, keď používateľ explicitne určil jednotku stĺpca. Ponaučenie: vždy skráťte jednotku za predpokladu, že AI je drahá.

Časté chyby

  • Spoliehanie sa na slovné číslo. Vždy si vyžiadajte a spustite kód namiesto mentálnej aritmetiky.
  • Bez špecifikácie jednotky. Miešanie mg/l s g/l, ml s L spôsobí 1000-násobnú chybu.
  • Netestuje sa kód. Aplikovanie na veľké dáta bez testovania s malým príkladom, kde je známa odpoveď.
  • Berúc do úvahy R² ako jediné kritérium. Dôverovať bodom nelinearity bez toho, aby ste ich videli graficky.
  • Vynechajte testovacie činidlo. Výpočet teoretického výťažku bez stanovenia limitujúceho činidla v stechiometrii.
  • Výrazný krokový výlev. Hlásenie výsledku na 8 číslic, keď má meranie 3 platné číslice.
Upozornenie: Dokonca aj kód, ktorý AI zapíše, môže byť chybný (nesprávny názov stĺpca, nesprávny vzorec). Spustenie kódu robí výsledok deterministickým, ale musíte potvrdiť známym príkladom, že kód vypočíta správnu vec.

V súhrne

  • Číselné výsledky nechajte na vykonaný Python kód, nie na slovné dohadovanie jazykového modelu.
  • AI rýchlo píše kód pre stechiometriu, kalibráciu, čistenie údajov a vizualizáciu pri analýze chemických údajov.
  • Vždy si nasaďte jednotky; Zámena jednotiek je najdrahšia chyba.
  • Okrem R² skontrolujte pri kalibrácii aj rezíduá a zaznamenajte ich do grafu.
  • Otestujte kód na jednoduchom príklade so známou odpoveďou; Človek overuje presnosť kódu.

Aplikačná úloha

Majte súbor kalibračných alebo stechiometrických údajov (ak nie, použite údaje Beer-Lambert vyššie). Požiadajte AI ​​o kód Python, ktorý vykonáva analýzu (kód, nie výsledok). Spustite kód; potom to otestujte na malej vzorke známych odpovedí. Požiadajte AI ​​slovne o rovnaký výpočet a porovnajte dva výsledky: je v tom rozdiel? Interpretujte graf R² a rezidua pri kalibrácii. Vložte kód, výstup a krátky komentár do dokumentu.

kontrolný zoznam

  • [ ] Číselné výsledky získavam z kódu, nie zo slovného odhadu.
  • [ ] Jasne uvádzam jednotku každého stĺpca údajov.
  • [ ] Testujem kód s malou vzorkou, ktorej odpoveď je známa.
  • [ ] Pri kalibrácii vykonávam analýzu zvyškov/grafu vedľa R².
  • [ ] Limitné činidlo určujem v stechiometrii.
  • [ ] Výsledky uvádzam s príslušnou platnou číslicou.