29 กรกฎาคม 2558

Published กรกฎาคม 29, 2558 by with 0 comment

เคมีกับภาษาไพทอน : หาสูตรเคมีและโครงสร้างโมเลกุลของสารประกอบ

สวัสดีผู้อ่านทุกท่านครับ บทความนี้ผมจะพาผู้อ่านไปหาสูตรเคมีและโครงสร้างโมเลกุลของสารประกอบกันครับ

ในการหาสูตรเคมีและโครงสร้างโมเลกุลของสารประกอบจะต้องมีฐานข้อมูลขนาดใหญ่ที่เก็บข้อมูลของสารประกอบทางเคมี เพื่อให้ง่ายต่อการวิจัยและการศึกษาสารประกอบนั้น ๆ ฐานข้อมูลที่เก็บข้อมูลสารประกอบ ที่สามารถนำมาใช้งานได้ หนึ่งในนั้น คือ ฐานข้อมูล PubChem

ฐานข้อมูล PubChem เป็นฐานข้อมูลของโมเลกุลทางเคมี โดยมีข้อมูลทั้ง สารประกอบ, สสาร , รายงานการวิเคราะห์ทางชีวภาพ อยู่ภายใต้การดูแลของสถาบันสุขภาพแห่งชาติ National Institutes of Health (NIH) ของประเทศสหรัฐอเมริกา โดยข้อมูลเป็น Public domain จึงสามารถนำไปใช้งานได้เลย (https://pubchem.ncbi.nlm.nih.gov/)

ในการเขียนโปรแกรมด้วยภาษาไพทอน สามารถเข้าถึงฐานข้อมูล PubChem ได้โดยใช้โมดูลที่ชื่อว่า pubchempy

pubchempy เป็นโมดูลสำหรับเรียกใช้งานฐานข้อมูล PubChem ผ่าน PubChem PUG REST API ครับ (https://pubchem.ncbi.nlm.nih.gov/)

  • รองรับทั้ง Python 2 และ Python 3

  • ใช้ License: MIT
    ในการใช้งานโมดูลนี้ ต้องต่ออินเทอร์เน็ตตลอดเวลาที่มีการเรียกใช้งานโมดูลนี้ครับ


สามารถติดตั้งได้โดยใช้คำสั่ง pip :
pip install pubchempy

การใช้งาน
ในการใช้งานต้อง

[python]import pubchempy as pcp[/python]

เข้ามาทุกครั้งครับ
สามารถอ่านเอกสารหลักได้ที่ https://pubchempy.readthedocs.org/en/latest/

ตัวงอย่างการใช้งาน
ผมต้องการโหลดสูตรโมเลกุลของซูโครส น้ำหนักโมเลกุลซูโครส และ รูปโครงสร้างโมเลกุลของซูโครส โดยผมค้นข้อมูลจากชื่อ "Sucrose" ซึ่งเป็นชื่อของซูโครสในภาษาอังกฤษ

[python]
>>> from pubchempy import *
>>> cid = get_compounds('Sucrose', 'name')
>>> cid
[Compound(5988)]
[/python]

ได้ cid คือ 5988 นำ cid ที่ได้ไปค้นต่อ

[python]
>>> c = Compound.from_cid(5988)
>>> print(c.molecular_formula) # สูตรเคมี
C12H22O11
>>> print(c.molecular_weight) # น้ำหนักโมเลกุล
342.29648
>>> print(c.isomeric_smiles) # สูตรโมเลกุล
C([C@@H]1[C@H]([C@@H]([C@H]([C@H](O1)O[C@]2([C@H]([C@@H]([C@H](O2)CO)O)O)CO)O)O)
O)O
>>> download('PNG', 'a.png',5988, 'cid') # โหลดรูปโครงสร้างโมเลกุลของซูโครส เป็นไฟล์ a.png
[/python]

รูปภาพ a.png

เคมีกับภาษาไพทอน : หาสูตรเคมีและโครงสร้างโมเลกุลของสารประกอบ

ขอให้สนุกกับโลกของวิทยาศาสตร์นะครับ
ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)