Cheminformatics

Similarity by Compression

며칠 전에 Journal of Chemical Information and Modeling에 재미있는 논문이 실렸다. 바로 Similarity by Compression이라는 제목의 논문이다. 제목이 암시하는 것처럼 일반적으로 사용되는 압축 프로그램인 gzip이나 bzip2를 이용해서 화합물의 canonical SMILES를 압축한 후에 그 유사도를 보는 것을 내용으로 하고 있다. 이게 재미있는게, 압축 알고리즘이 반복되는 정보의 패턴을 이용해서 저장 공간을 줄이는 것이기 때문에, canonical SMILES와 같은 [...]

sdf 다루기

앞의 글에서 이야기한 바와 같이 화합물의 구조와 이와 관련된 정보를 저장하는데 많이 사용되는 포맷이 MDL의 sdf 파일이다. 특히 많은 수의 화합물을 한 파일에 저장해야 할 필요가 있을 때는 sdf 파일이 유리한 점이 많이 있다. 기본적으로 sdf는 mol 파일의 포맷과 동일한 포맷이다. 다만 여러 개의 분자를 담고 있다보니 일반적으로 사용하는 chemical drawing program에서는 다루기가 어렵고 excel과 [...]

Molecular Representation

화학정보학(Cheminformatics)은 말 그대로 화합물(chemical)의 정보(information)를 다루는 학문이다. 화합물에 있어서 가장 중요한 정보는 역시 화합물의 구조이다. 왜냐하면 물질의 구조가 물질의 성질을 결정하기 때문이다. 화합물의 정보를 저장하고 관리하는 가장 중요한 이유는 화합물의 성질을 결정하는 것이 어떤 요소인지를 정확하게 파악하는 지식(knowledge)을 얻는 것이므로, 물질의 구조를 정확하게 표시하고 이해하는 것이 화학정보학의 가장 중요한 첫 걸음이 된다. 그래서 Handbook of [...]

Compound enumeration

다량의 화합물을 일일이 손으로 그림을 그리고 있는 것은 참 따분한 일이다. 수십개 수준이라면 어떻게 해 볼 수 있겠지만, 작용기를 세 개 가지고 있고 각각의 작용기에 20개의 가능한 치환기가 있다면 이것만으로도 8000개의 화합물이 된다. 이 많은 화합물을 손으로 그린다는 것은 당연히 불가능한 일이다. 조합화학이 발전하면서 이런 종류의 일들이 실제로 많이 필요하게 되었고 따라서 이를 위한 방법들도 [...]

DSVisualizer on linux

DSVisualizer on linux Originally uploaded by lordmiss. 내 경우에 리눅스를 주 데스크탑으로 사용하지 못하는 이유 중에서 가장 큰 것이 바로 molecular visualizer 프로그램의 문제이다. 물론 리눅스에서도 PyMol이라는 멋진 프로그램을 쓸 수 있고, 이 프로그램이 윈도우에서도 동일하게 작동하기 때문에 좋기는 하지만, 여전히 사용 방법이 불편하고 직관적이지 않은 것은 분명하다. 그래서 지금까지는 DSViewer Pro를 사용해 왔고, 이걸 [...]

Parse html to make a sdf file

루비를 이용해서 웹페이지의 내용을 긁고, 이걸로 sdf 파일을 만들 수 있다는 생각이 들었다. 예를 들어 PASS같은 경우 로그인을 하고 분자를 제출하면 결과를 웹 페이지로 보여준다. 로그인과 분자 제출 부분을 자동화하고 결과로 생성되는 웹 페이지에 들어있는 정보를 Rubyful Soup같은 라이브러리를 이용해서 추출한 다음, 적절하게 sdf로 묶어줄 수 있을 것 같다. 문제는 역시 구현을 해 봐야 확인을 [...]

molruby

언젠가 ruby-talk에 루비로 진행되는 화학 관련 프로젝트가 있는지 질문을 올린 적이 있었다. 사실 찾을만큼 찾아보고 어느 정도는 없을 것이라는 생각을 하고 올린 것이었고, 실제로 몇 개의 답변이 나오는 동안 bioruby 정도가 언급되었을 뿐 화학 관련 프로젝트는 없었다. 그런데 작년 말에 새로운 포스트가 올라와서 molruby라는 프로젝트가 있다는 사실을 알렸다. 한동안 이 답변을 못 보고 있다가 얼마 [...]

csv – useful format

CSV – more useful than your average file format이라는 제목의 글을 읽었다. 많은 개발자들이 데이터를 어떻게 formatting 해서 보여주어야 하는지 고민을 많이 하지만, 실제로는 데이터를 csv 형식으로 주고, 보는 것은 유저가 알아서 보게 하는 것이 좋다 는 정도의 요지로 쓰여진 글이다. 이 글을 보면서 두 가지 생각을 했다. Graphviz 라는 프로그램을 배워봐야겠다. (꽤 많은 사람들이 [...]