|
5 | 5 | "id": "e70c802c-9a54-41e2-a928-7ea685017195", |
6 | 6 | "metadata": {}, |
7 | 7 | "source": [ |
| 8 | + "We don't necessarily intend to keep this up to date; this notebook can be reproduced as of the commit that it's associated with.\n", |
| 9 | + "\n", |
8 | 10 | "Don't forget to run `maturin develop --release`!" |
9 | 11 | ] |
10 | 12 | }, |
11 | 13 | { |
12 | 14 | "cell_type": "code", |
13 | | - "execution_count": 1, |
| 15 | + "execution_count": 8, |
14 | 16 | "id": "856fbc60-6896-4824-8956-b466e29ddc69", |
15 | 17 | "metadata": {}, |
16 | 18 | "outputs": [], |
17 | 19 | "source": [ |
18 | 20 | "from pyliftover import LiftOver\n", |
19 | 21 | "\n", |
20 | | - "from agct import Converter" |
| 22 | + "from agct import Converter\n", |
| 23 | + "from agct.seqref_registry import Assembly" |
21 | 24 | ] |
22 | 25 | }, |
23 | 26 | { |
|
46 | 49 | "name": "stdout", |
47 | 50 | "output_type": "stream", |
48 | 51 | "text": [ |
49 | | - "1.11 s ± 26.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 52 | + "498 ms ± 6.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
50 | 53 | ] |
51 | 54 | } |
52 | 55 | ], |
|
57 | 60 | }, |
58 | 61 | { |
59 | 62 | "cell_type": "code", |
60 | | - "execution_count": 3, |
| 63 | + "execution_count": 10, |
61 | 64 | "id": "2332acf9-c6eb-42ac-8426-fe46eba132a0", |
62 | 65 | "metadata": {}, |
63 | 66 | "outputs": [ |
64 | 67 | { |
65 | 68 | "name": "stdout", |
66 | 69 | "output_type": "stream", |
67 | 70 | "text": [ |
68 | | - "217 ms ± 9.13 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 71 | + "50.9 ms ± 807 μs per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" |
69 | 72 | ] |
70 | 73 | } |
71 | 74 | ], |
72 | 75 | "source": [ |
73 | 76 | "%%timeit\n", |
74 | | - "converter = Converter(\"hg38\", \"hg19\")" |
| 77 | + "converter = Converter(Assembly.HG38, Assembly.HG19)" |
75 | 78 | ] |
76 | 79 | }, |
77 | 80 | { |
|
84 | 87 | }, |
85 | 88 | { |
86 | 89 | "cell_type": "code", |
87 | | - "execution_count": 4, |
| 90 | + "execution_count": 11, |
88 | 91 | "id": "ae47dbbb-c9ad-46b4-9f4d-14823bbf26f2", |
89 | 92 | "metadata": {}, |
90 | 93 | "outputs": [ |
91 | 94 | { |
92 | 95 | "name": "stdout", |
93 | 96 | "output_type": "stream", |
94 | 97 | "text": [ |
95 | | - "1.09 s ± 14.8 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 98 | + "512 ms ± 16.8 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
96 | 99 | ] |
97 | 100 | } |
98 | 101 | ], |
|
104 | 107 | }, |
105 | 108 | { |
106 | 109 | "cell_type": "code", |
107 | | - "execution_count": 5, |
| 110 | + "execution_count": 13, |
108 | 111 | "id": "729abc9a-6429-4cb6-aaca-4bac4cd762f8", |
109 | 112 | "metadata": {}, |
110 | 113 | "outputs": [ |
111 | 114 | { |
112 | 115 | "name": "stdout", |
113 | 116 | "output_type": "stream", |
114 | 117 | "text": [ |
115 | | - "215 ms ± 6.9 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 118 | + "50.6 ms ± 1.17 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" |
116 | 119 | ] |
117 | 120 | } |
118 | 121 | ], |
119 | 122 | "source": [ |
120 | 123 | "%%timeit\n", |
121 | | - "converter = Converter(\"hg38\", \"hg19\")\n", |
122 | | - "converter.convert_coordinate(\"chr5\", 1404391, \"+\")" |
| 124 | + "converter = Converter(Assembly.HG38, Assembly.HG19)\n", |
| 125 | + "converter.convert_coordinate(\"chr5\", 1404391, 1404391, \"+\")" |
123 | 126 | ] |
124 | 127 | }, |
125 | 128 | { |
|
132 | 135 | }, |
133 | 136 | { |
134 | 137 | "cell_type": "code", |
135 | | - "execution_count": 6, |
| 138 | + "execution_count": 14, |
136 | 139 | "id": "7c51c0cb-e997-4ece-8a68-8e946b9dde3d", |
137 | 140 | "metadata": {}, |
138 | 141 | "outputs": [], |
139 | 142 | "source": [ |
140 | 143 | "# load beforehand\n", |
141 | 144 | "pyl = LiftOver(\"hg38\", \"hg19\")\n", |
142 | | - "converter = Converter(\"hg38\", \"hg19\")" |
| 145 | + "converter = Converter(Assembly.HG38, Assembly.HG19)" |
143 | 146 | ] |
144 | 147 | }, |
145 | 148 | { |
146 | 149 | "cell_type": "code", |
147 | | - "execution_count": 7, |
| 150 | + "execution_count": 15, |
148 | 151 | "id": "b68a6af6-1a89-414f-b4f1-2378f3c4f50d", |
149 | 152 | "metadata": {}, |
150 | 153 | "outputs": [ |
151 | 154 | { |
152 | 155 | "name": "stdout", |
153 | 156 | "output_type": "stream", |
154 | 157 | "text": [ |
155 | | - "1.97 µs ± 72.9 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)\n" |
| 158 | + "1.04 μs ± 27.1 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)\n" |
156 | 159 | ] |
157 | 160 | } |
158 | 161 | ], |
|
163 | 166 | }, |
164 | 167 | { |
165 | 168 | "cell_type": "code", |
166 | | - "execution_count": 8, |
| 169 | + "execution_count": 16, |
167 | 170 | "id": "e6643c38-f9f5-4ed6-a277-9642e731e6bc", |
168 | 171 | "metadata": {}, |
169 | 172 | "outputs": [ |
170 | 173 | { |
171 | 174 | "name": "stdout", |
172 | 175 | "output_type": "stream", |
173 | 176 | "text": [ |
174 | | - "2.77 µs ± 103 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)\n" |
| 177 | + "713 ns ± 9.94 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)\n" |
175 | 178 | ] |
176 | 179 | } |
177 | 180 | ], |
178 | 181 | "source": [ |
179 | 182 | "%%timeit\n", |
180 | | - "converter.convert_coordinate(\"chr5\", 1404391, \"+\")" |
| 183 | + "converter.convert_coordinate(\"chr5\", 1404391, 1404391, \"+\")" |
181 | 184 | ] |
182 | 185 | }, |
183 | 186 | { |
|
198 | 201 | }, |
199 | 202 | { |
200 | 203 | "cell_type": "code", |
201 | | - "execution_count": 9, |
| 204 | + "execution_count": 17, |
202 | 205 | "id": "181231d8-3f00-407b-86a3-1ae268d4d931", |
203 | 206 | "metadata": {}, |
204 | 207 | "outputs": [ |
205 | 208 | { |
206 | 209 | "name": "stdout", |
207 | 210 | "output_type": "stream", |
208 | 211 | "text": [ |
209 | | - "303 ms ± 13.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 212 | + "149 ms ± 2.79 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" |
210 | 213 | ] |
211 | 214 | } |
212 | 215 | ], |
|
217 | 220 | }, |
218 | 221 | { |
219 | 222 | "cell_type": "code", |
220 | | - "execution_count": 10, |
| 223 | + "execution_count": 18, |
221 | 224 | "id": "7822b8e7-939d-4b6d-85f6-514999c55602", |
222 | 225 | "metadata": {}, |
223 | 226 | "outputs": [ |
224 | 227 | { |
225 | 228 | "name": "stdout", |
226 | 229 | "output_type": "stream", |
227 | 230 | "text": [ |
228 | | - "62.6 ms ± 2.99 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" |
| 231 | + "8.95 ms ± 73.5 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n" |
229 | 232 | ] |
230 | 233 | } |
231 | 234 | ], |
232 | 235 | "source": [ |
233 | 236 | "%%timeit\n", |
234 | | - "converter = Converter(\"hg19\", \"hg38\")" |
| 237 | + "converter = Converter(Assembly.HG19, Assembly.HG38)" |
235 | 238 | ] |
236 | 239 | }, |
237 | 240 | { |
|
244 | 247 | }, |
245 | 248 | { |
246 | 249 | "cell_type": "code", |
247 | | - "execution_count": 11, |
| 250 | + "execution_count": 19, |
248 | 251 | "id": "0ab6aeb8-88da-45e8-9efe-8b4a7825bcff", |
249 | 252 | "metadata": {}, |
250 | 253 | "outputs": [ |
251 | 254 | { |
252 | 255 | "name": "stdout", |
253 | 256 | "output_type": "stream", |
254 | 257 | "text": [ |
255 | | - "318 ms ± 15.5 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" |
| 258 | + "151 ms ± 1.51 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" |
256 | 259 | ] |
257 | 260 | } |
258 | 261 | ], |
|
264 | 267 | }, |
265 | 268 | { |
266 | 269 | "cell_type": "code", |
267 | | - "execution_count": 12, |
| 270 | + "execution_count": 21, |
268 | 271 | "id": "a014955a-5451-4b10-83bd-4d4843ddc227", |
269 | 272 | "metadata": {}, |
270 | 273 | "outputs": [ |
271 | 274 | { |
272 | 275 | "name": "stdout", |
273 | 276 | "output_type": "stream", |
274 | 277 | "text": [ |
275 | | - "57.8 ms ± 742 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" |
| 278 | + "8.68 ms ± 59.2 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n" |
276 | 279 | ] |
277 | 280 | } |
278 | 281 | ], |
279 | 282 | "source": [ |
280 | 283 | "%%timeit\n", |
281 | | - "converter = Converter(\"hg19\", \"hg38\")\n", |
282 | | - "converter.convert_coordinate(\"chr5\", 1404391, \"+\")" |
| 284 | + "converter = Converter(Assembly.HG19, Assembly.HG38)\n", |
| 285 | + "converter.convert_coordinate(\"chr5\", 1404391, 1404391, \"+\")" |
283 | 286 | ] |
284 | 287 | }, |
285 | 288 | { |
|
292 | 295 | }, |
293 | 296 | { |
294 | 297 | "cell_type": "code", |
295 | | - "execution_count": 13, |
| 298 | + "execution_count": 22, |
296 | 299 | "id": "a516e0a8-02b1-4ce5-8e69-3d0badcaffa4", |
297 | 300 | "metadata": {}, |
298 | 301 | "outputs": [], |
299 | 302 | "source": [ |
300 | 303 | "# load beforehand\n", |
301 | 304 | "pyl = LiftOver(\"hg19\", \"hg38\")\n", |
302 | | - "converter = Converter(\"hg19\", \"hg38\")" |
| 305 | + "converter = Converter(Assembly.HG19, Assembly.HG38)" |
303 | 306 | ] |
304 | 307 | }, |
305 | 308 | { |
306 | 309 | "cell_type": "code", |
307 | | - "execution_count": 14, |
| 310 | + "execution_count": 23, |
308 | 311 | "id": "d433fee3-9c40-4633-be5e-2649b723968e", |
309 | 312 | "metadata": {}, |
310 | 313 | "outputs": [ |
311 | 314 | { |
312 | 315 | "name": "stdout", |
313 | 316 | "output_type": "stream", |
314 | 317 | "text": [ |
315 | | - "2.16 µs ± 232 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)\n" |
| 318 | + "1.06 μs ± 7.62 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)\n" |
316 | 319 | ] |
317 | 320 | } |
318 | 321 | ], |
|
323 | 326 | }, |
324 | 327 | { |
325 | 328 | "cell_type": "code", |
326 | | - "execution_count": 15, |
| 329 | + "execution_count": 24, |
327 | 330 | "id": "5bb82164-e123-47ae-a748-7d4c4898fcb2", |
328 | 331 | "metadata": {}, |
329 | 332 | "outputs": [ |
330 | 333 | { |
331 | 334 | "name": "stdout", |
332 | 335 | "output_type": "stream", |
333 | 336 | "text": [ |
334 | | - "2.87 µs ± 65 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)\n" |
| 337 | + "718 ns ± 1.6 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)\n" |
335 | 338 | ] |
336 | 339 | } |
337 | 340 | ], |
338 | 341 | "source": [ |
339 | 342 | "%%timeit\n", |
340 | | - "converter.convert_coordinate(\"chr5\", 1404391, \"+\")" |
| 343 | + "converter.convert_coordinate(\"chr5\", 1404391, 1404391, \"+\")" |
341 | 344 | ] |
342 | 345 | } |
343 | 346 | ], |
344 | 347 | "metadata": { |
345 | 348 | "kernelspec": { |
346 | | - "display_name": "liftovertest", |
| 349 | + "display_name": "agct", |
347 | 350 | "language": "python", |
348 | | - "name": "liftovertest" |
| 351 | + "name": "agct" |
349 | 352 | }, |
350 | 353 | "language_info": { |
351 | 354 | "codemirror_mode": { |
|
357 | 360 | "name": "python", |
358 | 361 | "nbconvert_exporter": "python", |
359 | 362 | "pygments_lexer": "ipython3", |
360 | | - "version": "3.11.0" |
| 363 | + "version": "3.13.2" |
361 | 364 | } |
362 | 365 | }, |
363 | 366 | "nbformat": 4, |
|
0 commit comments