{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.12.12","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"nvidiaTeslaT4","dataSources":[{"sourceId":118765,"databundleVersionId":15231210,"sourceType":"competition"}],"dockerImageVersionId":31260,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":true}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import pandas as pd\nimport numpy as np\nimport os","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"iopub.status.busy":"2026-01-20T10:49:30.452202Z","iopub.execute_input":"2026-01-20T10:49:30.452731Z","iopub.status.idle":"2026-01-20T10:49:30.729215Z","shell.execute_reply.started":"2026-01-20T10:49:30.452699Z","shell.execute_reply":"2026-01-20T10:49:30.728598Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"DATA_PATH = \"/kaggle/input/stanford-rna-3d-folding-2\"\n\ntest_seq = pd.read_csv(f\"{DATA_PATH}/test_sequences.csv\")\n\nprint(len(test_seq))","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-20T10:49:39.797996Z","iopub.execute_input":"2026-01-20T10:49:39.798769Z","iopub.status.idle":"2026-01-20T10:49:39.840509Z","shell.execute_reply.started":"2026-01-20T10:49:39.798742Z","shell.execute_reply":"2026-01-20T10:49:39.839823Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"rows = []\n\nfor _, row in test_seq.iterrows():\n    seq = row[\"sequence\"]\n    tid = row[\"target_id\"]\n\n    for i, base in enumerate(seq):\n        out = {\n            \"ID\": tid,\n            \"resname\": base,\n            \"resid\": i + 1,\n        }\n        for k in range(1, 6):\n            out[f\"x_{k}\"] = 0.0\n            out[f\"y_{k}\"] = 0.0\n            out[f\"z_{k}\"] = 0.0\n\n        rows.append(out)\n\nprint(\"Rows:\", len(rows))","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-20T10:49:50.624057Z","iopub.execute_input":"2026-01-20T10:49:50.62436Z","iopub.status.idle":"2026-01-20T10:49:50.678631Z","shell.execute_reply.started":"2026-01-20T10:49:50.624333Z","shell.execute_reply":"2026-01-20T10:49:50.678074Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"submission = pd.DataFrame(rows)\nsubmission.to_csv(\"submission.csv\", index=False)\n\nprint(\"CSV exists:\", os.path.exists(\"submission.csv\"))\nsubmission.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-20T10:50:04.915445Z","iopub.execute_input":"2026-01-20T10:50:04.916162Z","iopub.status.idle":"2026-01-20T10:50:05.059173Z","shell.execute_reply.started":"2026-01-20T10:50:04.916132Z","shell.execute_reply":"2026-01-20T10:50:05.058557Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"","metadata":{"trusted":true},"outputs":[],"execution_count":null}]}