{"id":19093684,"url":"https://github.com/juliaarrays/rangearrays.jl","last_synced_at":"2026-05-25T19:30:19.771Z","repository":{"id":36912930,"uuid":"41219971","full_name":"JuliaArrays/RangeArrays.jl","owner":"JuliaArrays","description":"Efficient and convenient array data structures where the columns of the arrays are generated (on the fly) by Ranges.","archived":false,"fork":false,"pushed_at":"2023-03-13T13:05:26.000Z","size":31,"stargazers_count":4,"open_issues_count":5,"forks_count":6,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-14T09:15:51.820Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JuliaArrays.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-08-22T18:42:23.000Z","updated_at":"2021-10-10T05:31:52.000Z","dependencies_parsed_at":"2024-11-09T03:27:28.219Z","dependency_job_id":"f45d5fad-28c0-48c0-9f9b-21bbed7d3f19","html_url":"https://github.com/JuliaArrays/RangeArrays.jl","commit_stats":{"total_commits":32,"total_committers":7,"mean_commits":4.571428571428571,"dds":0.1875,"last_synced_commit":"0d36eb59e43b254c05b22319a4b7aa39d18c7391"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaArrays%2FRangeArrays.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaArrays%2FRangeArrays.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaArrays%2FRangeArrays.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuliaArrays%2FRangeArrays.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JuliaArrays","download_url":"https://codeload.github.com/JuliaArrays/RangeArrays.jl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240142861,"owners_count":19754639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-09T03:25:42.365Z","updated_at":"2026-05-25T19:30:19.715Z","avatar_url":"https://github.com/JuliaArrays.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RangeArrays\n\n[![Build Status](https://travis-ci.org/JuliaArrays/RangeArrays.jl.svg?branch=master)](https://travis-ci.org/JuliaArrays/RangeArrays.jl) [![Build status](https://ci.appveyor.com/api/projects/status/nhlhndm60n7p77m3?svg=true)](https://ci.appveyor.com/project/mbauman/rangearrays-jl) [![Coverage Status](https://coveralls.io/repos/github/JuliaArrays/RangeArrays.jl/badge.svg?branch=master)](https://coveralls.io/github/JuliaArrays/RangeArrays.jl?branch=master)\n\nThe goal of RangeArrays is to provide efficient and convenient array data\nstructures where the columns of the arrays are generated (on the fly) by Ranges.\n\nTwo different types of range matrices are currently supported:\n* `RangeMatrix`: makes a vector of ranges behave as a matrix; all ranges must be the same length.\n* `RepeatedRangeMatrix`: one range is repeated multiple times at offsets specified in a vector.\n\nIn all cases, indexing is specialized such that it will return an appropriate range or RangeArray if it can.\n\n```jl\njulia\u003e R = RangeMatrix(1:5,11:15,-2:2)\n5x3 RangeArrays.RangeMatrix{Int64,Array{UnitRange{Int64},1}}:\n 1  11  -2\n 2  12  -1\n 3  13   0\n 4  14   1\n 5  15   2\n\njulia\u003e R[2:3,:]\n2x3 RangeArrays.RangeMatrix{Int64,Array{UnitRange{Int64},1}}:\n 2  12  -1\n 3  13   0\n\njulia\u003e RR = RepeatedRangeMatrix(.1:.1:1.0, [0.0,5.0,-20.2,3.3])\n10x4 RangeArrays.RepeatedRangeMatrix{Float64,FloatRange{Float64},Array{Float64,1}}:\n 0.1  5.1  -20.1  3.4\n 0.2  5.2  -20.0  3.5\n 0.3  5.3  -19.9  3.6\n 0.4  5.4  -19.8  3.7\n 0.5  5.5  -19.7  3.8\n 0.6  5.6  -19.6  3.9\n 0.7  5.7  -19.5  4.0\n 0.8  5.8  -19.4  4.1\n 0.9  5.9  -19.3  4.2\n 1.0  6.0  -19.2  4.3\n\njulia\u003e RR[8:-2:2, end]\n4.1:-0.2:3.5\n```\n\nThere is a similar structure available in\n[mbauman/RaggedArrays.jl](http://github.com/mbauman/RaggedArrays.jl), which allows for\nranges of varying lengths.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliaarrays%2Frangearrays.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuliaarrays%2Frangearrays.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliaarrays%2Frangearrays.jl/lists"}