{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# de_train RDKit molecule image","metadata":{}},{"cell_type":"code","source":"!pip install rdkit","metadata":{"execution":{"iopub.status.busy":"2023-09-19T04:35:39.007791Z","iopub.execute_input":"2023-09-19T04:35:39.008302Z","iopub.status.idle":"2023-09-19T04:35:58.570435Z","shell.execute_reply.started":"2023-09-19T04:35:39.008262Z","shell.execute_reply":"2023-09-19T04:35:58.569143Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"from rdkit import Chem\nfrom rdkit.Chem import Draw\nimport pandas as pd\nimport dask\nimport dask.dataframe as dd","metadata":{"execution":{"iopub.status.busy":"2023-09-19T04:35:58.575147Z","iopub.execute_input":"2023-09-19T04:35:58.576071Z","iopub.status.idle":"2023-09-19T04:35:59.136094Z","shell.execute_reply.started":"2023-09-19T04:35:58.57598Z","shell.execute_reply":"2023-09-19T04:35:59.135057Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"pqs=dd.read_parquet('/kaggle/input/open-problems-single-cell-perturbations/de_train.parquet')\ndisplay(pqs.iloc[:,:])\npqs_df=pqs.compute()\ndisplay(pqs_df)","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!mkdir de_train","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"## Convert SMILES string to RDKit molecule object","metadata":{}},{"cell_type":"code","source":"for i in range(len(pqs_df)):\n    smiles = pqs_df['SMILES'][i]\n    sm_lincs_id = pqs_df['sm_lincs_id'][i]\n    mol = Chem.MolFromSmiles(smiles)\n    if mol is not None:\n        img = Draw.MolToImage(mol)    \n        img.save('de_train/'+str(i).zfill(3)+'_'+sm_lincs_id+'.png')\n    else:\n        print(\"Invalid\")","metadata":{"execution":{"iopub.status.busy":"2023-09-19T04:39:52.47044Z","iopub.execute_input":"2023-09-19T04:39:52.470881Z","iopub.status.idle":"2023-09-19T04:39:52.54297Z","shell.execute_reply.started":"2023-09-19T04:39:52.470839Z","shell.execute_reply":"2023-09-19T04:39:52.542173Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]}]}