{"id":21962521,"url":"https://github.com/biocpy/tiledbarray","last_synced_at":"2026-03-12T17:04:53.770Z","repository":{"id":221066475,"uuid":"751037488","full_name":"BiocPy/TileDBArray","owner":"BiocPy","description":"TileDB backed delayed arrays for Python","archived":false,"fork":false,"pushed_at":"2026-02-23T16:30:40.000Z","size":201,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-02-24T00:24:56.836Z","etag":null,"topics":["delayedarray","tiledb"],"latest_commit_sha":null,"homepage":"https://biocpy.github.io/TileDBArray/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BiocPy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-01-31T20:09:24.000Z","updated_at":"2025-11-17T22:08:34.000Z","dependencies_parsed_at":"2024-02-06T01:38:45.339Z","dependency_job_id":"c848dbff-2e14-42d0-a40b-dcc12e17eb2a","html_url":"https://github.com/BiocPy/TileDBArray","commit_stats":null,"previous_names":["biocpy/tiledbarray"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/BiocPy/TileDBArray","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BiocPy%2FTileDBArray","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BiocPy%2FTileDBArray/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BiocPy%2FTileDBArray/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BiocPy%2FTileDBArray/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BiocPy","download_url":"https://codeload.github.com/BiocPy/TileDBArray/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BiocPy%2FTileDBArray/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30434110,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T14:34:45.044Z","status":"ssl_error","status_checked_at":"2026-03-12T14:09:33.793Z","response_time":114,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["delayedarray","tiledb"],"created_at":"2024-11-29T10:42:51.168Z","updated_at":"2026-03-12T17:04:53.756Z","avatar_url":"https://github.com/BiocPy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Project generated with PyScaffold](https://img.shields.io/badge/-PyScaffold-005CA0?logo=pyscaffold)](https://pyscaffold.org/)\n[![PyPI-Server](https://img.shields.io/pypi/v/tiledbarray.svg)](https://pypi.org/project/tiledbarray/)\n[![Monthly Downloads](https://pepy.tech/badge/tiledbarray/month)](https://pepy.tech/project/tiledbarray)\n![Unit tests](https://github.com/BiocPy/tiledbarray/actions/workflows/pypi-test.yml/badge.svg)\n\n# tiledbarray\n\n\nThis is the Python equivalent of Bioconductor's [**TileDBArray**](https://bioconductor.org/packages/TileDBArray) package,\nproviding a representation of TileDB-backed arrays within the [**delayedarray**](https://github.com/BiocPy/delayedarray) framework.\nThe idea is to allow users to store, manipulate and operate on large datasets without loading them into memory,\nin a manner that is trivially compatible with other data structures in the [**BiocPy**](https::/github.com/BiocPy) ecosystem.\n\n## Installation\n\nThis package can be installed from [PyPI](https://pypi.org/project/tiledbarray/) with the usual commands:\n\n```shell\npip install tiledbarray\n```\n\n## Quick start\n\nLet's mock up a dense array:\n\n```python\nimport numpy\ndata = numpy.random.rand(40, 50)\n\ntiledb.from_numpy(\"dense.tiledb\", data)\n```\n\nWe can now represent it as a `TileDbArray`:\n\n```python\nimport tiledbarray\narr = tiledbarray.TileDbArray(\"dense.tiledb\", attribute_name=\"\")\n# \u003c40 x 50\u003e TileDbArray object of type 'float64'\n# [[0.96316214, 0.90187013, 0.55767551, ..., 0.81663263, 0.57660051,\n#   0.3986336 ],\n#  [0.72578394, 0.06328588, 0.9473141 , ..., 0.89977069, 0.34617884,\n#   0.09208036],\n#  [0.87291607, 0.01714908, 0.96570953, ..., 0.28404601, 0.20394673,\n#   0.6454273 ],\n#  ...,\n#  [0.21565857, 0.11721607, 0.45146332, ..., 0.18565937, 0.348599  ,\n#   0.16050929],\n#  [0.95061188, 0.71917657, 0.33039149, ..., 0.60267692, 0.28035863,\n#   0.56416845],\n#  [0.40462116, 0.61058508, 0.5067807 , ..., 0.64234988, 0.5881812 ,\n#   0.17138409]]\n```\n\nThis is just a subclass of a `DelayedArray` and can be used anywhere in the BiocPy framework.\nParts of the NumPy API are also supported - for example, we could apply a variety of delayed operations:\n\n```python\nscaling = numpy.random.rand(100)\ntransformed = numpy.log1p(arr / scaling)\n# \u003c40 x 50\u003e DelayedArray object of type 'float64'\n# [[1.29646391, 2.05014167, 0.48661736, ..., 0.90574803, 2.38890685,\n#   1.1277655 ],\n#  [1.09916863, 0.38865342, 0.72500505, ..., 0.96463182, 1.93797807,\n#   0.39371608],\n#  [1.22596458, 0.12107778, 0.73496894, ..., 0.41384292, 1.50457489,\n#   1.47747976],\n#  ...,\n#  [0.46673182, 0.63114795, 0.41040352, ..., 0.28897665, 1.94394461,\n#   0.61032586],\n#  [1.28695229, 1.85595293, 0.31579293, ..., 0.73604123, 1.76033915,\n#   1.37526146],\n#  [0.74949037, 1.71968269, 0.45082104, ..., 0.76976215, 2.40698455,\n#   0.64080734]]\n```\n\nCheck out the [documentation](https://biocpy.github.io/tiledbarray/) for more details.\n\n## Sparse Matrices\n\nWe can perform similar operations on a sparse matrix as well. Lets mock a sparse matrix and store it as a tiledb file.\n\n```python\ndir_path = \"sparse_array.tiledb\"\ndom = tiledb.Domain(\n     tiledb.Dim(name=\"rows\", domain=(0, 4), tile=5, dtype=np.int32),\n     tiledb.Dim(name=\"cols\", domain=(0, 4), tile=5, dtype=np.int32),\n)\nschema = tiledb.ArraySchema(\n     domain=dom, sparse=True, attrs=[tiledb.Attr(name=\"\", dtype=np.int32)]\n)\ntiledb.SparseArray.create(f\"{dir_path}\", schema)\n\ntdb = tiledb.SparseArray(f\"{dir_path}\", mode=\"w\")\ni, j = [1, 2, 2], [1, 4, 3]\ndata = np.array(([1, 2, 3]))\ntdb[i, j] = data\n```\n\nWe can now represent this as a `TileDbArray`:\n\n```python\nimport tiledbarray\narr = tiledbarray.TileDbArray(dir_path, attribute_name=\"\")\n\nslices = (slice(0,3), [2, 4])\n\nimport delayedarray\nsubset = delayedarray.extract_sparse_array(arr, (*slices,))\nprint(subset)\n# \u003c3 x 2\u003e SparseNdarray object of type 'int32'\n# [[2, 0],\n#  [0, 0],\n#  [0, 0]]\n```\n\nCheck out the [delayedarray](https://biocpy.github.io/delayedarray/) for more details.\n\n\u003c!-- pyscaffold-notes --\u003e\n\n## Note\n\nThis project has been set up using PyScaffold 4.5. For details and usage\ninformation on PyScaffold see https://pyscaffold.org/.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbiocpy%2Ftiledbarray","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbiocpy%2Ftiledbarray","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbiocpy%2Ftiledbarray/lists"}