Two questions about a library collection
A municipal library’s collection serves readers over many years, while lending and acquisitions describe activity during a particular year. Looking at these measures together offers a useful way to ask how an existing collection is being used and how much material is being added. A service can record relatively frequent borrowing from its holdings without recording a similarly high additions ratio. Whether that combination signals a practical problem depends on information about the collection and the service that an administrative spreadsheet cannot supply.
This study examines that combination in Portugal’s Rede Nacional de Bibliotecas Públicas, or RNBP, using the official municipal returns for 2024. It compares home loans of monographs with monograph copies held at the end of the year, and compares acquisitions of monographs with that same stock. The shared category makes the two calculations interpretable together. The analysis keeps the original municipal counts available, shows which records have missing values, and tests how the comparison changes when municipalities are grouped by population.
Among the 234 municipalities with all three required measures, 46 have a lending ratio above the complete-case median and an additions ratio below it. Using separate medians within three population bands identifies 47 municipalities, but only 35 appear under both rules. The close headline counts therefore conceal a change in which municipalities are selected. This sensitivity is part of the finding. Neither rule supplies a list of inadequate collections or establishes how many libraries need additional funding.
The observation is a municipal service, not a building
DGLAB, Portugal’s Direção-Geral do Livro, dos Arquivos e das Bibliotecas, collected responses from 257 municipalities for the 2024 RNBP report. The official introduction describes 485 libraries in the network and explains that the inquiry covers central municipal libraries, their branches and mobile libraries. The data file has 257 distinct municipal records and 257 distinct source codes. A row should therefore be read as a municipal reporting unit rather than as an individual building with its own independent collection and lending count.
That distinction matters when comparing places. A municipality with branches can distribute its stock and services across several locations. Another municipality may organize its provision differently. The paired ratios summarize the reported municipal activity; they cannot reveal whether a particular neighborhood, branch, mobile stop or opening period is well served. Counting every row as a single physical library would misstate the underlying unit and could make an apparently simple comparison misleading.
The network also has a defined boundary. Its 257 respondents are the municipalities surveyed by DGLAB for this RNBP collection. They do not constitute a random sample drawn for this article, and their results are not expanded to all Portuguese libraries. The report notes that some services undergoing works or relocation remain in the inquiry when they reported activity in other areas. Differences in operating circumstances can therefore affect lending without making a record invalid. The analysis preserves those records rather than removing them on an assumption about normal operations.
Why the comparison uses monographs
The source organizes collections by document type. Monographs have corresponding fields for copies held, copies acquired and home lending: questionnaire items 3.1.1, 4.1.1 and 8.1.1. Selecting those matched categories avoids joining a broad stock measure to a narrower flow. It also prevents the study from drifting into a claim about fiction, romance, newly released books or all reading formats. The administrative category does not identify those audiences or genres.
Using the totals across every document type would introduce additional complications. The spreadsheet labels periodical holdings as titles, while periodical home lending is recorded in copies. Ebook holdings and acquisitions also have their own categories. A total assembled from differently described components is not the cleanest denominator for the present question. The monograph-only scope is a deliberate measurement decision, rather than an attempt to select the category with the strongest result.
The original opportunity was framed around collection renewal and heavily used books. Those phrases need care. These returns do not match an individual title’s borrowing history to whether another copy or a newer edition was acquired. They also do not establish which books readers requested but could not obtain. The analysis can describe the relationship between two municipal ratios within a common document category. It cannot show that the most-used titles were neglected, that the collection was outdated, or that readers were unable to find books they wanted.
Annual activity is divided by stock at year end
The questionnaire reproduced in the official report identifies collection holdings at 31 December 2024 and acquisitions during 2024. For each complete municipal record, this analysis divides reported home-loaned monographs by year-end monograph stock. It separately divides monograph acquisitions by the same year-end stock. Multiplying either ratio by 100 expresses the result per 100 monographs held. Both calculations use observed administrative counts from the same municipal row.
Year-end stock is a snapshot, whereas loans and acquisitions accumulate over the year. The denominator is not average inventory during 2024. If a substantial addition arrived late in the year, the closing stock could include material that had little opportunity to circulate. Withdrawals and other collection changes can also affect the relationship between the annual flow and the closing balance. The dataset does not provide a monthly stock series with which to replace that denominator. The article therefore calls the measure loans per year-end monograph, rather than implying an exact inventory-turnover rate.
Acquisitions require a further distinction. DGLAB’s report explains that they may arrive through purchases, offers, donations or exchanges. The additions ratio does not measure only purchased books, recent publication dates, expenditure or the share of old items replaced. Nor does it measure net collection growth: withdrawals are a separate process. A relatively low additions ratio can be described accurately without assigning a reason to it. An interpretation about budget constraints or collection freshness would require additional evidence about acquisition sources, selection decisions and the collection itself.
Full survey response still leaves missing measurements
All 257 municipalities returned the survey, but that does not mean every question has a value for every municipality. DGLAB explicitly distinguishes overall response from item response. In the published file, monograph stock is missing for six municipalities, acquisitions for four and home-loaned monographs for sixteen. Some of these missing fields occur in the same records. Requiring all three measures leaves 234 complete cases and excludes 23 municipalities from the paired analysis.
The missing values are not converted to zero. A recorded zero describes an observed administrative answer and remains in the calculations; an empty field does not establish an absence of stock, acquisitions or loans. The full table retains the excluded municipalities and identifies which inputs are unavailable. Lisboa is among the exclusions because its monograph lending field is empty in this file. Its exclusion concerns that field in this analysis, not whether the municipal library service operated or lent documents.
On the same set of 234 complete records, the supplied counts sum to 14,117,251 monographs held, 2,141,441 monographs home-loaned and 283,965 acquired. These are matched-case totals, not totals for all 257 respondents. The raw source’s wider item totals use different numbers of answering municipalities and are retained in the audit. Joining those different denominators would undermine the paired comparison. The complete-case selection avoids that mismatch but does not remove potential bias if the missing municipalities differ systematically from those retained.
What the median comparison describes
Across the 234 complete municipalities, the median is approximately 9.95 annual monograph loans per 100 monographs held at year end. The median additions ratio is approximately 1.51 acquisitions per 100 held. These are medians of municipal ratios: each complete municipality contributes one observation to each distribution. The figures describe the middle of those municipal distributions, not the ratio obtained by adding every numerator and denominator first.
The distinction is visible in the combined counts. Dividing the complete-case total loans by complete-case total stock gives approximately 15.17 loans per 100 held. Dividing total acquisitions by that stock gives approximately 2.01 acquisitions per 100 held. These pooled ratios give more influence to municipalities with larger stocks. The municipal medians and the pooled ratios answer different questions; neither should be substituted for the other without changing the description of what is being summarized.
For the primary comparison, a municipality is selected only when its lending ratio is strictly above the complete-case lending median and its additions ratio is strictly below the additions median. Forty-six of the 234 records satisfy both conditions, or approximately 19.66%. The thresholds are descriptive reference points calculated from this dataset. They are not minimum service standards, recommended acquisition rates or a professionally assessed boundary between adequate and inadequate provision. A point on either side of a median can be close to that median, so the classification should always be read alongside the underlying numbers.
Population groups change the comparison set
A reader may reasonably ask whether municipalities of very different sizes should be compared with one overall median. To explore that sensitivity, the analysis uses the population value supplied in each municipal row and forms three declared groups: fewer than 25,000 residents, 25,000 to 50,000 inclusive, and more than 50,000. These are analytic comparison bands, not a claim that all municipalities within a band have equivalent services or needs. No additional population data are joined to the returns.
The smallest band contains 142 complete municipalities. Its medians are about 7.09 loans and 1.39 acquisitions per 100 held, and 29 municipalities meet the within-band rule. The middle band has 41 complete cases, medians of about 15.28 loans and 1.80 acquisitions, and nine selected municipalities. The largest band has 51 complete cases, medians of about 17.13 loans and 2.05 acquisitions, and nine selected municipalities. The same three measures are required in every band.
Together, the band-specific comparisons identify 47 municipalities. Thirty-five also appear among the 46 selected by the overall rule; eleven appear only under the overall rule and twelve only under the band-specific rule. Reporting only 46 versus 47 would miss this change in membership. The grouping is a descriptive sensitivity check, not statistical adjustment for staffing, accessibility, income, branch structure or reader demand. The supplied population field is used as a size proxy, with the source’s population-description inconsistency disclosed in the methods rather than silently resolved.
A stricter threshold gives a much smaller group
The median split is useful for describing relative position, but it is only one possible threshold. The analysis also tests a stricter version: lending must be above the seventy-fifth percentile and acquisitions below the twenty-fifth percentile of the complete-case distributions. Quantiles use the explicitly documented inclusive interpolation method. Under that rule, four municipalities are selected in the overall comparison. Applying the same percentile rule separately within the population bands selects six.
The large difference between the median and quartile counts is a warning against turning a convenient analytic rule into a diagnostic label. The number of municipalities described as relatively high lending and relatively low additions depends on how those words are defined. None of these thresholds was established as a validated test of service pressure. The full numeric table allows readers to inspect continuous values rather than relying solely on a yes-or-no category.
The extent of the data also needs to remain visible. Machico has an additions-to-stock ratio of approximately 56.69%, and Santa Maria da Feira has a lending-to-stock ratio of approximately 89.74%. These observations are retained. They are not removed merely because most records occupy a smaller range. A figure may use an explicitly labelled inset to show the denser area, but its full-range view must preserve the observed extent. An unusual ratio is a reason to examine the source and context, not automatic evidence of an error or exceptional service quality.
How these measures connect to reading research
Administrative library measures and household reading surveys illuminate different parts of the reading environment. Library lending records transactions reported by a service. A survey may ask individuals whether they completed books, how often they read or how they obtained a recent book. Those units cannot be exchanged. One person can borrow repeatedly, several people can read a borrowed item, and reading can take place without any public-library transaction. This study does not estimate the proportion of Portuguese residents who read books.
The same caution applies to acquisition data. A copy added to a library can support access for many future readers, but the number of additions does not tell us how many people will use it or whether it fills a particular gap. Some reading needs concern availability of a specific title, language, accessible format, location or opening time. The monograph totals do not resolve those dimensions. They provide a bounded administrative comparison that can help formulate more precise questions for local service review.
For journalists and library professionals, the useful contribution is the paired municipal evidence and its sensitivity to comparison choices. DGLAB already publishes national totals, item response counts and geographic summaries. This article credits that work rather than presenting the underlying totals as a newly discovered fact. The added analysis links compatible municipal fields, preserves exclusions and shows how a simple characterization changes under alternative rules. A locally informed investigation could build on those records, but the national spreadsheet alone does not supply interviews, operational explanations or a judgement about any named municipality.
Reproduce the comparison before reusing the headline
The downloads provide all 257 municipal rows with the selected source counts, population band, complete-case status and calculated ratios where available. Missing measurements remain identifiable. A standalone Python script recalculates the complete-case selection, medians, pooled totals, population-band comparisons and threshold sensitivity from that public table. It uses standard-library functions, preserves the documented rules and produces a machine-readable result for comparison. The methods file identifies the source columns and their questionnaire codes.
Source provenance is kept separate from interpretation. The official CSV and XLSX were retrieved from the DGLAB dataset on dados.gov.pt, and their checksums matched the publisher’s recorded values. The selected fields were checked between the two formats, and their observed counts and sums reconciled with the official spreadsheet summaries. The public package supplies source URLs and hashes rather than copying the original workbook with its unrelated metadata. Readers can obtain the official source directly and compare the selected values against it.
When citing a result, retain the observation year, the municipal network scope, the complete-case denominator and the chosen threshold. For example, the median-based count concerns 46 of 234 complete municipal records in the 2024 RNBP returns. It does not establish that 46 libraries were underfunded or that Portuguese reading declined. The data are distributed under the source’s CC BY 4.0 terms with DGLAB attribution and the transformations identified. New translations or visualizations should preserve these qualifications as carefully as they preserve the numerical values.
Lending and collection additions
Annual monograph loans and additions relative to year-end holdings; each dot is one municipal service network.
Full chart and source
Scroll horizontally to inspect the chart. ↔
Chart and values
Scroll horizontally to see all columns.
| Source code | Municipality | Source population | Population band | Monographs held at year end | Monographs acquired during year | Home-loaned monographs | Loans per 100 held | Acquisitions per 100 held | Analysis status | Missing-field reason |
|---|---|---|---|---|---|---|---|---|---|---|
| 30401 | Abrantes | 33770 | 25000-50000 | 114282 | 810 | 10437 | 9.13267181 | 0.70877304 | Complete | No missing required fields |
| 20101 | Águeda | 47727 | 25000-50000 | 92368 | 2176 | 21687 | 23.47891045 | 2.35579421 | Complete | No missing required fields |
| 20601 | Aguiar da Beira | 5326 | <25000 | 16787 | 176 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40301 | Alandroal | 4973 | <25000 | 18179 | 39 | 1040 | 5.72088674 | 0.21453325 | Complete | No missing required fields |
| 20102 | Albergaria-a-Velha | 26171 | 25000-50000 | 79196 | 1054 | 14350 | 18.11960200 | 1.33087530 | Complete | No missing required fields |
| 50101 | Albufeira | 48807 | 25000-50000 | 63870 | 2430 | 3300 | 5.16674495 | 3.80460310 | Complete | No missing required fields |
| 40101 | Alcácer do Sal | 11036 | <25000 | 35265 | 717 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 30402 | Alcanena | 12876 | <25000 | 42068 | 307 | 6817 | 16.20471617 | 0.72977085 | Complete | No missing required fields |
| 30101 | Alcobaça | 57973 | >50000 | 18500 | 943 | 5792 | 31.30810811 | 5.09729730 | Complete | No missing required fields |
| 30301 | Alcochete | 20462 | <25000 | 67935 | 1310 | 4392 | 6.46500331 | 1.92831383 | Complete | No missing required fields |
| 30102 | Alenquer | 49474 | 25000-50000 | 85003 | 1564 | 3680 | 4.32925897 | 1.83993506 | Complete | No missing required fields |
| 10801 | Alfândega da Fé | 4178 | <25000 | 14883 | 42 | 313 | 2.10307062 | 0.28220117 | Complete | No missing required fields |
| 10701 | Alijó | 10296 | <25000 | Missing | 269 | 3312 | Not calculated | Not calculated | Excluded | stock_monographs missing |
| 40401 | Aljustrel | 8923 | <25000 | 37619 | 90 | 359 | 0.95430501 | 0.23924081 | Complete | No missing required fields |
| 30302 | Almada | 183643 | >50000 | 101552 | 4700 | 51025 | 50.24519458 | 4.62817079 | Complete | No missing required fields |
| 20801 | Almeida | 5634 | <25000 | 20513 | 401 | 350 | 1.70623507 | 1.95485789 | Complete | No missing required fields |
| 30501 | Almeirim | 23087 | <25000 | 40058 | 541 | 6088 | 15.19796295 | 1.35054171 | Complete | No missing required fields |
| 40402 | Almodôvar | 6652 | <25000 | 32456 | 331 | 7684 | 23.67512941 | 1.01984225 | Complete | No missing required fields |
| 30502 | Alpiarça | 7493 | <25000 | 22359 | 873 | 2475 | 11.06936804 | 3.90446800 | Complete | No missing required fields |
| 40201 | Alter do Chão | 3222 | <25000 | 17170 | 30 | 862 | 5.02038439 | 0.17472335 | Complete | No missing required fields |
| 20401 | Alvaiázere | 6479 | <25000 | 28540 | 89 | 1436 | 5.03153469 | 0.31184303 | Complete | No missing required fields |
| 40403 | Alvito | 2303 | <25000 | 34433 | 169 | 2611 | 7.58284204 | 0.49080824 | Complete | No missing required fields |
| 30201 | Amadora | 181607 | >50000 | 113214 | 1273 | 27921 | 24.66214426 | 1.12441924 | Complete | No missing required fields |
| 10501 | Amarante | 52169 | >50000 | 36074 | 11 | 2890 | 8.01131008 | 0.03049288 | Complete | No missing required fields |
| 10201 | Amares | 19782 | <25000 | 27881 | 317 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 20103 | Anadia | 28512 | 25000-50000 | 81914 | 531 | 12983 | 15.84954953 | 0.64824084 | Complete | No missing required fields |
| 20402 | Ansião | 11930 | <25000 | 32776 | 131 | 2724 | 8.31095924 | 0.39968269 | Complete | No missing required fields |
| 10101 | Arcos de Valdevez | 20819 | <25000 | 48696 | 1021 | 2392 | 4.91210777 | 2.09668145 | Complete | No missing required fields |
| 20403 | Arganil | 11447 | <25000 | 54723 | 727 | 7553 | 13.80224037 | 1.32850904 | Complete | No missing required fields |
| 10601 | Arouca | 20826 | <25000 | 35910 | 634 | 10939 | 30.46226678 | 1.76552492 | Complete | No missing required fields |
| 40302 | Arraiolos | 6870 | <25000 | 20555 | 228 | 2949 | 14.34687424 | 1.10921917 | Complete | No missing required fields |
| 30103 | Arruda dos Vinhos | 15752 | <25000 | 27728 | 697 | 2147 | 7.74307559 | 2.51370456 | Complete | No missing required fields |
| 20104 | Aveiro | 88154 | >50000 | 99511 | 2307 | 31339 | 31.49300077 | 2.31833667 | Complete | No missing required fields |
| 40203 | Avis | 3759 | <25000 | 18240 | 828 | 534 | 2.92763158 | 4.53947368 | Complete | No missing required fields |
| 30503 | Azambuja | 23448 | <25000 | 51409 | 2788 | 10563 | 20.54698594 | 5.42317493 | Complete | No missing required fields |
| 10502 | Baião | 17088 | <25000 | 23144 | 246 | 1600 | 6.91323885 | 1.06291047 | Complete | No missing required fields |
| 10202 | Barcelos | 116959 | >50000 | 50181 | 1880 | 10027 | 19.98166637 | 3.74643789 | Complete | No missing required fields |
| 30303 | Barreiro | 81131 | >50000 | 84916 | 1115 | 6903 | 8.12921004 | 1.31306232 | Complete | No missing required fields |
| 20301 | Batalha | 16894 | <25000 | 50385 | 187 | 7779 | 15.43911879 | 0.37114221 | Complete | No missing required fields |
| 40405 | Beja | 33954 | 25000-50000 | 170826 | 1587 | 29809 | 17.44991980 | 0.92901549 | Complete | No missing required fields |
| 21001 | Belmonte | 6265 | <25000 | 8950 | 459 | 90 | 1.00558659 | 5.12849162 | Complete | No missing required fields |
| 30504 | Benavente | 33131 | 25000-50000 | 46801 | 768 | 6771 | 14.46763958 | 1.64099058 | Complete | No missing required fields |
| 30104 | Bombarral | 14272 | <25000 | 8800 | 0 | 0 | 0.00000000 | 0.00000000 | Complete | No missing required fields |
| 40303 | Borba | 6378 | <25000 | 16454 | 185 | 873 | 5.30570074 | 1.12434666 | Complete | No missing required fields |
| 10802 | Boticas | 4832 | <25000 | 42000 | 1000 | 2100 | 5.00000000 | 2.38095238 | Complete | No missing required fields |
| 10203 | Braga | 203519 | >50000 | 463890 | 8477 | 68362 | 14.73668327 | 1.82737287 | Complete | No missing required fields |
| 10803 | Bragança | 35581 | 25000-50000 | 56069 | 744 | 9112 | 16.25140452 | 1.32693645 | Complete | No missing required fields |
| 10503 | Cabeceiras de Basto | 15538 | <25000 | 12215 | 570 | 846 | 6.92591077 | 4.66639378 | Complete | No missing required fields |
| 30105 | Cadaval | 14711 | <25000 | 49869 | 521 | 4973 | 9.97212697 | 1.04473721 | Complete | No missing required fields |
| 30106 | Caldas da Rainha | 55206 | >50000 | 87419 | 859 | 15168 | 17.35091914 | 0.98262391 | Complete | No missing required fields |
| 58002 | Câmara de Lobos | 33243 | 25000-50000 | 74687 | 5064 | 1357 | 1.81691593 | 6.78029644 | Complete | No missing required fields |
| 10102 | Caminha | 16604 | <25000 | 52186 | Missing | 2723 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 40204 | Campo Maior | 7877 | <25000 | 15861 | 66 | 92 | 0.58003909 | 0.41611500 | Complete | No missing required fields |
| 20201 | Cantanhede | 35399 | 25000-50000 | 60076 | 1301 | 11927 | 19.85318596 | 2.16559025 | Complete | No missing required fields |
| 10703 | Carrazeda de Ansiães | 5368 | <25000 | 19162 | 1199 | 109 | 0.56883415 | 6.25717566 | Complete | No missing required fields |
| 20602 | Carregal do Sal | 9261 | <25000 | 41159 | 891 | 5108 | 12.41040842 | 2.16477563 | Complete | No missing required fields |
| 30505 | Cartaxo | 24711 | <25000 | 15156 | 234 | 1569 | 10.35233571 | 1.54394299 | Complete | No missing required fields |
| 30202 | Cascais | 222339 | >50000 | 170479 | 3900 | 45948 | 26.95229324 | 2.28767180 | Complete | No missing required fields |
| 20404 | Castanheira de Pêra | 2756 | <25000 | 15845 | 211 | 1089 | 6.87283055 | 1.33165036 | Complete | No missing required fields |
| 20901 | Castelo Branco | 53342 | >50000 | 115888 | 2309 | 4927 | 4.25151871 | 1.99244098 | Complete | No missing required fields |
| 10504 | Castelo de Paiva | 15395 | <25000 | 19292 | 576 | 1221 | 6.32904831 | 2.98569355 | Complete | No missing required fields |
| 40205 | Castelo de Vide | 3180 | <25000 | 14939 | 45 | 395 | 2.64408595 | 0.30122498 | Complete | No missing required fields |
| 20603 | Castro Daire | 13790 | <25000 | 25102 | 434 | 1964 | 7.82407776 | 1.72894590 | Complete | No missing required fields |
| 50104 | Castro Marim | 6983 | <25000 | 26488 | 526 | 1348 | 5.08909695 | 1.98580489 | Complete | No missing required fields |
| 40406 | Castro Verde | 6946 | <25000 | 53090 | 652 | 6500 | 12.24336033 | 1.22810322 | Complete | No missing required fields |
| 20802 | Celorico da Beira | 6635 | <25000 | 13848 | 360 | 1672 | 12.07394570 | 2.59965338 | Complete | No missing required fields |
| 10505 | Celorico de Basto | 17637 | <25000 | 141085 | 1741 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 30506 | Chamusca | 8549 | <25000 | 18781 | 215 | 2472 | 13.16223843 | 1.14477397 | Complete | No missing required fields |
| 10804 | Chaves | 37322 | 25000-50000 | 44813 | 153 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10506 | Cinfães | 17293 | <25000 | 23830 | 397 | 6631 | 27.82626941 | 1.66596727 | Complete | No missing required fields |
| 20202 | Coimbra | 146899 | >50000 | 768983 | 10401 | 106930 | 13.90537892 | 1.35256566 | Complete | No missing required fields |
| 20203 | Condeixa-a-Nova | 17882 | <25000 | 27736 | 412 | 8485 | 30.59201038 | 1.48543409 | Complete | No missing required fields |
| 30403 | Constância | 4020 | <25000 | 20343 | 300 | 2127 | 10.45568500 | 1.47470875 | Complete | No missing required fields |
| 30507 | Coruche | 17298 | <25000 | 20883 | 257 | 4420 | 21.16554135 | 1.23066609 | Complete | No missing required fields |
| 21002 | Covilhã | 46606 | 25000-50000 | 68719 | 1486 | 12823 | 18.66005035 | 2.16242960 | Complete | No missing required fields |
| 40206 | Crato | 3249 | <25000 | 16435 | 142 | 438 | 2.66504411 | 0.86400974 | Complete | No missing required fields |
| 40407 | Cuba | 4469 | <25000 | 14465 | 61 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40207 | Elvas | 20325 | <25000 | 135213 | 250 | 2131 | 1.57603189 | 0.18489346 | Complete | No missing required fields |
| 30404 | Entroncamento | 22604 | <25000 | 25284 | 478 | 4424 | 17.49723145 | 1.89052365 | Complete | No missing required fields |
| 10401 | Espinho | 32736 | 25000-50000 | 49376 | 1159 | 11928 | 24.15748542 | 2.34729423 | Complete | No missing required fields |
| 10204 | Esposende | 37722 | 25000-50000 | 61952 | 818 | 12727 | 20.54332386 | 1.32037707 | Complete | No missing required fields |
| 20105 | Estarreja | 27474 | 25000-50000 | 74446 | 3384 | 11323 | 15.20968219 | 4.54557666 | Complete | No missing required fields |
| 40304 | Estremoz | 12482 | <25000 | 48825 | 522 | 2798 | 5.73067076 | 1.06912442 | Complete | No missing required fields |
| 10301 | Fafe | 48420 | 25000-50000 | 51061 | 456 | 8309 | 16.27269345 | 0.89304949 | Complete | No missing required fields |
| 50105 | Faro | 70347 | >50000 | 78542 | 322 | 19131 | 24.35766851 | 0.40997173 | Complete | No missing required fields |
| 10507 | Felgueiras | 55223 | >50000 | 73445 | 547 | 8602 | 11.71216557 | 0.74477500 | Complete | No missing required fields |
| 40408 | Ferreira do Alentejo | 7902 | <25000 | 24972 | 173 | 1205 | 4.82540445 | 0.69277591 | Complete | No missing required fields |
| 30405 | Ferreira do Zêzere | 8115 | <25000 | 19481 | 562 | 5413 | 27.78604794 | 2.88486217 | Complete | No missing required fields |
| 20204 | Figueira da Foz | 61397 | >50000 | 194495 | 1723 | 5681 | 2.92089771 | 0.88588396 | Complete | No missing required fields |
| 20405 | Figueiró dos Vinhos | 5325 | <25000 | 37541 | 181 | 1814 | 4.83205029 | 0.48213953 | Complete | No missing required fields |
| 20701 | Fornos de Algodres | 4400 | <25000 | 19213 | 563 | 780 | 4.05975121 | 2.93030760 | Complete | No missing required fields |
| 10704 | Freixo de Espada à Cinta | 3058 | <25000 | 12983 | 735 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40208 | Fronteira | 2974 | <25000 | 12091 | 41 | 147 | 1.21578033 | 0.33909519 | Complete | No missing required fields |
| 21003 | Fundão | 27285 | 25000-50000 | 52937 | 1398 | 14147 | 26.72421936 | 2.64087500 | Complete | No missing required fields |
| 30406 | Gavião | 3263 | <25000 | 13162 | 1056 | 1220 | 9.26910804 | 8.02309679 | Complete | No missing required fields |
| 20406 | Góis | 3822 | <25000 | 14754 | 209 | 197 | 1.33523112 | 1.41656500 | Complete | No missing required fields |
| 30508 | Golegã | 5488 | <25000 | 30001 | 256 | 875 | 2.91656945 | 0.85330489 | Complete | No missing required fields |
| 10402 | Gondomar | 169388 | >50000 | 53105 | 1754 | 13249 | 24.94868656 | 3.30289050 | Complete | No missing required fields |
| 20702 | Gouveia | 12301 | <25000 | 31109 | 1373 | 5002 | 16.07894821 | 4.41351377 | Complete | No missing required fields |
| 40102 | Grândola | 14226 | <25000 | 41290 | 1285 | 12680 | 30.70961492 | 3.11213369 | Complete | No missing required fields |
| 20804 | Guarda | 40046 | 25000-50000 | 133462 | 1050 | 4674 | 3.50212045 | 0.78674080 | Complete | No missing required fields |
| 10302 | Guimarães | 156513 | >50000 | 341815 | 8865 | 38998 | 11.40909556 | 2.59350818 | Complete | No missing required fields |
| 20902 | Idanha-a-Nova | 8541 | <25000 | 26050 | 156 | 1109 | 4.25719770 | 0.59884837 | Complete | No missing required fields |
| 20106 | Ílhavo | 43210 | 25000-50000 | 73489 | 2591 | 21666 | 29.48196329 | 3.52569772 | Complete | No missing required fields |
| 50106 | Lagoa | 25535 | 25000-50000 | 80856 | 2726 | 17535 | 21.68670229 | 3.37142574 | Complete | No missing required fields |
| 50107 | Lagos | 35241 | 25000-50000 | Missing | 1890 | 17077 | Not calculated | Not calculated | Excluded | stock_monographs missing |
| 20302 | Leiria | 136006 | >50000 | 113594 | 2895 | 32912 | 28.97336127 | 2.54855010 | Complete | No missing required fields |
| 30203 | Lisboa | 575739 | >50000 | 548010 | 23345 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 50108 | Loulé | 75764 | >50000 | 106870 | 3828 | 19655 | 18.39150370 | 3.58192196 | Complete | No missing required fields |
| 30204 | Loures | 209877 | >50000 | 110478 | 3643 | 18488 | 16.73455349 | 3.29748909 | Complete | No missing required fields |
| 30107 | Lourinhã | 28978 | 25000-50000 | 36240 | 3109 | 12534 | 34.58609272 | 8.57891832 | Complete | No missing required fields |
| 20407 | Lousã | 17662 | <25000 | 55618 | 167 | 14623 | 26.29184796 | 0.30026250 | Complete | No missing required fields |
| 10508 | Lousada | 48652 | 25000-50000 | 37692 | 616 | 2217 | 5.88188475 | 1.63429906 | Complete | No missing required fields |
| 20501 | Mação | 6399 | <25000 | 29982 | 1000 | 780 | 2.60156094 | 3.33533453 | Complete | No missing required fields |
| 10805 | Macedo de Cavaleiros | 14253 | <25000 | 8826 | 314 | 1363 | 15.44300929 | 3.55767052 | Complete | No missing required fields |
| 58004 | Machico | 19679 | <25000 | 12689 | 7193 | 1253 | 9.87469462 | 56.68689416 | Complete | No missing required fields |
| 57014 | Madalena | 6559 | <25000 | 55712 | 1277 | 2530 | 4.54121195 | 2.29214532 | Complete | No missing required fields |
| 30108 | Mafra | 91248 | >50000 | 168108 | 2037 | 25259 | 15.02545982 | 1.21172104 | Complete | No missing required fields |
| 10403 | Maia | 144664 | >50000 | 118810 | 2329 | 28524 | 24.00808013 | 1.96027270 | Complete | No missing required fields |
| 20604 | Mangualde | 18766 | <25000 | 54148 | 385 | 1668 | 3.08044618 | 0.71101426 | Complete | No missing required fields |
| 20805 | Manteigas | 2951 | <25000 | 15891 | 646 | 637 | 4.00855830 | 4.06519414 | Complete | No missing required fields |
| 10509 | Marco de Canaveses | 49501 | 25000-50000 | 24228 | 783 | 2582 | 10.65709097 | 3.23179792 | Complete | No missing required fields |
| 20303 | Marinha Grande | 41773 | 25000-50000 | 46089 | 288 | 15043 | 32.63902450 | 0.62487795 | Complete | No missing required fields |
| 10404 | Matosinhos | 181046 | >50000 | Missing | 1557 | Missing | Not calculated | Not calculated | Excluded | stock_monographs missing; loaned_monographs missing |
| 20107 | Mealhada | 20023 | <25000 | 36078 | 2252 | 7447 | 20.64138810 | 6.24203115 | Complete | No missing required fields |
| 20806 | Meda | 4594 | <25000 | 18005 | 553 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10103 | Melgaço | 7557 | <25000 | 20935 | 330 | 1622 | 7.74779078 | 1.57630762 | Complete | No missing required fields |
| 40409 | Mértola | 6066 | <25000 | 29922 | 606 | 9257 | 30.93710313 | 2.02526569 | Complete | No missing required fields |
| 20205 | Mira | 12720 | <25000 | 21632 | 224 | 1864 | 8.61686391 | 1.03550296 | Complete | No missing required fields |
| 20408 | Miranda do Corvo | 12269 | <25000 | 28887 | 379 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10806 | Miranda do Douro | 6220 | <25000 | 41736 | 262 | 6251 | 14.97747748 | 0.62775541 | Complete | No missing required fields |
| 10807 | Mirandela | 21344 | <25000 | 68757 | 274 | 1959 | 2.84916445 | 0.39850488 | Complete | No missing required fields |
| 10808 | Mogadouro | 8169 | <25000 | 25954 | Missing | 1620 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 10707 | Moimenta da Beira | 9776 | <25000 | 19585 | 772 | 495 | 2.52744447 | 3.94179219 | Complete | No missing required fields |
| 30304 | Moita | 70399 | >50000 | 84736 | 1117 | 9806 | 11.57241314 | 1.31821186 | Complete | No missing required fields |
| 10104 | Monção | 18004 | <25000 | 16293 | 193 | 3000 | 18.41281532 | 1.18455779 | Complete | No missing required fields |
| 10510 | Mondim de Basto | 6394 | <25000 | 29941 | 670 | 1353 | 4.51888714 | 2.23773421 | Complete | No missing required fields |
| 40210 | Monforte | 3017 | <25000 | 19320 | 205 | 1494 | 7.73291925 | 1.06107660 | Complete | No missing required fields |
| 10809 | Montalegre | 9100 | <25000 | 22743 | 974 | 1072 | 4.71353823 | 4.28263642 | Complete | No missing required fields |
| 40306 | Montemor-o-Novo | 15912 | <25000 | 6575 | 310 | 4491 | 68.30418251 | 4.71482890 | Complete | No missing required fields |
| 20206 | Montemor-o-Velho | 25131 | 25000-50000 | 29123 | 614 | 1315 | 4.51533152 | 2.10829928 | Complete | No missing required fields |
| 30305 | Montijo | 60612 | >50000 | 95160 | 192 | 3923 | 4.12253047 | 0.20176545 | Complete | No missing required fields |
| 20605 | Mortágua | 9104 | <25000 | 25656 | 352 | 786 | 3.06361085 | 1.37199875 | Complete | No missing required fields |
| 40410 | Moura | 13331 | <25000 | 78978 | 395 | 4813 | 6.09410216 | 0.50013928 | Complete | No missing required fields |
| 10810 | Murça | 5229 | <25000 | Missing | 35 | Missing | Not calculated | Not calculated | Excluded | stock_monographs missing; loaned_monographs missing |
| 20108 | Murtosa | 11360 | <25000 | 8403 | Missing | 788 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 30109 | Nazaré | 15856 | <25000 | 39897 | 166 | 2052 | 5.14324385 | 0.41607138 | Complete | No missing required fields |
| 20606 | Nelas | 13508 | <25000 | 46862 | 372 | 5874 | 12.53467628 | 0.79382015 | Complete | No missing required fields |
| 40212 | Nisa | 5633 | <25000 | 34461 | 254 | 3015 | 8.74902063 | 0.73706509 | Complete | No missing required fields |
| 30110 | Óbidos | 13720 | <25000 | 23762 | 108 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40103 | Odemira | 33866 | 25000-50000 | 36733 | 526 | 6258 | 17.03645224 | 1.43195492 | Complete | No missing required fields |
| 30208 | Odivelas | 156278 | >50000 | 71407 | 2199 | 16416 | 22.98934278 | 3.07953002 | Complete | No missing required fields |
| 30205 | Oeiras | 177866 | >50000 | 129802 | 8041 | 108104 | 83.28377067 | 6.19481980 | Complete | No missing required fields |
| 50110 | Olhão | 45452 | 25000-50000 | 46925 | 844 | 9054 | 19.29461907 | 1.79861481 | Complete | No missing required fields |
| 10603 | Oliveira de Azeméis | 67471 | >50000 | 49418 | 887 | 15928 | 32.23117083 | 1.79489255 | Complete | No missing required fields |
| 20607 | Oliveira de Frades | 9840 | <25000 | 17796 | 76 | 373 | 2.09597662 | 0.42706226 | Complete | No missing required fields |
| 20109 | Oliveira do Bairro | 25779 | 25000-50000 | 83960 | 813 | 9175 | 10.92782277 | 0.96831825 | Complete | No missing required fields |
| 20409 | Oliveira do Hospital | 19610 | <25000 | 37397 | 355 | 1455 | 3.89068642 | 0.94927401 | Complete | No missing required fields |
| 30411 | Ourém | 46988 | 25000-50000 | 36839 | 3230 | 8311 | 22.56033008 | 8.76788186 | Complete | No missing required fields |
| 40411 | Ourique | 4785 | <25000 | 19493 | 414 | 2450 | 12.56861437 | 2.12383933 | Complete | No missing required fields |
| 20110 | Ovar | 57680 | >50000 | 74179 | 751 | 17944 | 24.19013467 | 1.01241591 | Complete | No missing required fields |
| 10511 | Paços de Ferreira | 56071 | >50000 | 64885 | 1858 | 2610 | 4.02250135 | 2.86352778 | Complete | No missing required fields |
| 30306 | Palmela | 74462 | >50000 | 71925 | 2106 | 11660 | 16.21133125 | 2.92805005 | Complete | No missing required fields |
| 20410 | Pampilhosa da Serra | 4182 | <25000 | 9532 | 15 | 4 | 0.04196391 | 0.15736467 | Complete | No missing required fields |
| 10512 | Paredes | 86560 | >50000 | 15196 | 88 | 773 | 5.08686496 | 0.57909976 | Complete | No missing required fields |
| 10105 | Paredes de Coura | 8688 | <25000 | 21267 | 91 | 726 | 3.41373960 | 0.42789298 | Complete | No missing required fields |
| 20411 | Pedrógão Grande | 3718 | <25000 | 34569 | 252 | 756 | 2.18693049 | 0.72897683 | Complete | No missing required fields |
| 20207 | Penacova | 12951 | <25000 | 22819 | 153 | 5371 | 23.53740304 | 0.67049389 | Complete | No missing required fields |
| 10513 | Penafiel | 70421 | >50000 | 84589 | 797 | 26168 | 30.93546442 | 0.94220289 | Complete | No missing required fields |
| 20608 | Penalva do Castelo | 7414 | <25000 | 25246 | 424 | 4803 | 19.02479601 | 1.67947398 | Complete | No missing required fields |
| 20903 | Penamacor | 4821 | <25000 | 19978 | 70 | 567 | 2.83812193 | 0.35038542 | Complete | No missing required fields |
| 20412 | Penela | 5714 | <25000 | 14627 | 333 | 3006 | 20.55103576 | 2.27661175 | Complete | No missing required fields |
| 30111 | Peniche | 27792 | 25000-50000 | 15337 | 1797 | 2100 | 13.69237791 | 11.71676338 | Complete | No missing required fields |
| 10709 | Peso da Régua | 14275 | <25000 | 17322 | 537 | 1777 | 10.25863064 | 3.10010391 | Complete | No missing required fields |
| 20807 | Pinhel | 7817 | <25000 | 14529 | 567 | 679 | 4.67341180 | 3.90253975 | Complete | No missing required fields |
| 20304 | Pombal | 52573 | >50000 | 71338 | 1459 | 15542 | 21.78642519 | 2.04519331 | Complete | No missing required fields |
| 10106 | Ponte da Barca | 11210 | <25000 | 19526 | 290 | 1012 | 5.18283315 | 1.48519922 | Complete | No missing required fields |
| 10107 | Ponte de Lima | 41066 | 25000-50000 | 155093 | 1763 | 12820 | 8.26600814 | 1.13673731 | Complete | No missing required fields |
| 40213 | Ponte de Sor | 15123 | <25000 | 49468 | 340 | 564 | 1.14013099 | 0.68731301 | Complete | No missing required fields |
| 40214 | Portalegre | 21754 | <25000 | 49304 | 362 | 3572 | 7.24484829 | 0.73422035 | Complete | No missing required fields |
| 40308 | Portel | 5734 | <25000 | 21748 | 143 | 1644 | 7.55931580 | 0.65753173 | Complete | No missing required fields |
| 50111 | Portimão | 64466 | >50000 | 59650 | 1892 | 15808 | 26.50125733 | 3.17183571 | Complete | No missing required fields |
| 10405 | Porto | 252687 | >50000 | 810779 | 9168 | 81853 | 10.09559942 | 1.13076436 | Complete | No missing required fields |
| 20305 | Porto de Mós | 24310 | <25000 | 45914 | 1368 | 20957 | 45.64403014 | 2.97948338 | Complete | No missing required fields |
| 10303 | Póvoa de Lanhoso | 22931 | <25000 | 20903 | 3493 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10406 | Póvoa de Varzim | 68459 | >50000 | 175939 | 2357 | 8206 | 4.66411654 | 1.33966886 | Complete | No missing required fields |
| 57009 | Praia da Vitória | 19862 | <25000 | 32575 | 2467 | 1951 | 5.98925556 | 7.57329240 | Complete | No missing required fields |
| 20503 | Proença-a-Nova | 7102 | <25000 | 40764 | 268 | 2985 | 7.32263762 | 0.65744284 | Complete | No missing required fields |
| 40309 | Redondo | 6290 | <25000 | 62204 | 523 | 1127 | 1.81178059 | 0.84078194 | Complete | No missing required fields |
| 40310 | Reguengos de Monsaraz | 9840 | <25000 | 24594 | 104 | 1408 | 5.72497357 | 0.42286737 | Complete | No missing required fields |
| 58008 | Ribeira Brava | 13322 | <25000 | 17209 | 327 | 604 | 3.50979139 | 1.90016852 | Complete | No missing required fields |
| 10515 | Ribeira de Pena | 5840 | <25000 | 17816 | 0 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 30509 | Rio Maior | 22678 | <25000 | 31072 | 316 | 8991 | 28.93601957 | 1.01699279 | Complete | No missing required fields |
| 30510 | Salvaterra de Magos | 23827 | <25000 | 31236 | 767 | 2881 | 9.22333205 | 2.45550006 | Complete | No missing required fields |
| 20609 | Santa Comba Dão | 11022 | <25000 | 18821 | 148 | 608 | 3.23043409 | 0.78635567 | Complete | No missing required fields |
| 58009 | Santa Cruz | 44816 | 25000-50000 | 18000 | 250 | 1103 | 6.12777778 | 1.38888889 | Complete | No missing required fields |
| 10602 | Santa Maria da Feira | 140568 | >50000 | 172898 | 4312 | 155161 | 89.74135039 | 2.49395597 | Complete | No missing required fields |
| 30511 | Santarém | 61664 | >50000 | 142033 | 1465 | 6528 | 4.59611499 | 1.03145044 | Complete | No missing required fields |
| 40104 | Santiago do Cacém | 28294 | 25000-50000 | 94092 | 1228 | 9337 | 9.92326659 | 1.30510564 | Complete | No missing required fields |
| 10304 | Santo Tirso | 67713 | >50000 | 93876 | 2749 | 5251 | 5.59354894 | 2.92833099 | Complete | No missing required fields |
| 50112 | São Brás de Alportel | 11730 | <25000 | 72711 | 5492 | 18009 | 24.76791682 | 7.55319003 | Complete | No missing required fields |
| 10604 | São João da Madeira | 24247 | <25000 | 47699 | 723 | 7281 | 15.26447095 | 1.51575505 | Complete | No missing required fields |
| 10712 | São João da Pesqueira | 6743 | <25000 | 67171 | 76 | 1605 | 2.38942401 | 0.11314407 | Complete | No missing required fields |
| 20610 | São Pedro do Sul | 15296 | <25000 | 18408 | 313 | 3093 | 16.80247718 | 1.70034767 | Complete | No missing required fields |
| 57015 | São Roque do Pico | 3461 | <25000 | 6683 | 75 | 304 | 4.54885530 | 1.12225049 | Complete | No missing required fields |
| 58011 | São Vicente | 5123 | <25000 | 12446 | 15 | 599 | 4.81279126 | 0.12052065 | Complete | No missing required fields |
| 30407 | Sardoal | 3638 | <25000 | 17545 | 610 | 1273 | 7.25562838 | 3.47677401 | Complete | No missing required fields |
| 20611 | Sátão | 11265 | <25000 | 33364 | 0 | 630 | 1.88826280 | 0.00000000 | Complete | No missing required fields |
| 20703 | Seia | 21410 | <25000 | 27530 | 890 | 3265 | 11.85978932 | 3.23283691 | Complete | No missing required fields |
| 30307 | Seixal | 176883 | >50000 | 138910 | 1149 | 24744 | 17.81297243 | 0.82715427 | Complete | No missing required fields |
| 10713 | Sernancelhe | 5818 | <25000 | 20080 | 55 | 1257 | 6.25996016 | 0.27390438 | Complete | No missing required fields |
| 40412 | Serpa | 13673 | <25000 | 27578 | 526 | 3132 | 11.35687867 | 1.90731743 | Complete | No missing required fields |
| 20504 | Sertã | 14983 | <25000 | 26465 | 819 | 9723 | 36.73908936 | 3.09465332 | Complete | No missing required fields |
| 30308 | Sesimbra | 56576 | >50000 | 67267 | 1386 | 12254 | 18.21695631 | 2.06044569 | Complete | No missing required fields |
| 30309 | Setúbal | 124339 | >50000 | 94445 | 2495 | 13112 | 13.88321245 | 2.64174917 | Complete | No missing required fields |
| 20111 | Sever do Vouga | 11023 | <25000 | 27432 | 160 | 2755 | 10.04301546 | 0.58326043 | Complete | No missing required fields |
| 50113 | Silves | 40309 | 25000-50000 | 49385 | 228 | 7546 | 15.27994330 | 0.46167865 | Complete | No missing required fields |
| 40105 | Sines | 14796 | <25000 | 27337 | 456 | 2383 | 8.71712331 | 1.66806892 | Complete | No missing required fields |
| 30206 | Sintra | 400947 | >50000 | 199082 | 1649 | 11983 | 6.01912780 | 0.82830191 | Complete | No missing required fields |
| 30112 | Sobral de Monte Agraço | 12214 | <25000 | 23369 | 670 | 7979 | 34.14352347 | 2.86704609 | Complete | No missing required fields |
| 20208 | Soure | 17302 | <25000 | 23061 | 327 | 9140 | 39.63401414 | 1.41797841 | Complete | No missing required fields |
| 40311 | Sousel | 4403 | <25000 | 15393 | 224 | 494 | 3.20925096 | 1.45520691 | Complete | No missing required fields |
| 20413 | Tábua | 11784 | <25000 | 24539 | 455 | 2393 | 9.75182363 | 1.85419129 | Complete | No missing required fields |
| 50114 | Tavira | 28280 | 25000-50000 | 62148 | 1388 | 6043 | 9.72356311 | 2.23337839 | Complete | No missing required fields |
| 30408 | Tomar | 37039 | 25000-50000 | 80803 | 1266 | 6683 | 8.27073252 | 1.56677351 | Complete | No missing required fields |
| 20612 | Tondela | 25957 | 25000-50000 | 50529 | 118 | 1393 | 2.75683271 | 0.23352926 | Complete | No missing required fields |
| 10716 | Torre de Moncorvo | 6638 | <25000 | 23371 | 681 | 859 | 3.67549527 | 2.91386761 | Complete | No missing required fields |
| 30409 | Torres Novas | 34986 | 25000-50000 | 73543 | 465 | 11446 | 15.56368383 | 0.63228315 | Complete | No missing required fields |
| 30113 | Torres Vedras | 89526 | >50000 | 70779 | 1477 | 12124 | 17.12937453 | 2.08677715 | Complete | No missing required fields |
| 20809 | Trancoso | 8402 | <25000 | 16738 | 362 | 313 | 1.86999642 | 2.16274346 | Complete | No missing required fields |
| 10308 | Trofa | 40294 | 25000-50000 | 15829 | 1621 | 689 | 4.35277023 | 10.24069745 | Complete | No missing required fields |
| 20112 | Vagos | 25167 | 25000-50000 | 27594 | 2450 | 5546 | 20.09857215 | 8.87874176 | Complete | No missing required fields |
| 10605 | Vale de Cambra | 21239 | <25000 | 43201 | 957 | 5378 | 12.44878591 | 2.21522650 | Complete | No missing required fields |
| 10108 | Valença | 14297 | <25000 | 52408 | 318 | 5884 | 11.22729354 | 0.60677759 | Complete | No missing required fields |
| 10407 | Valongo | 101464 | >50000 | 75510 | 2330 | 23206 | 30.73235333 | 3.08568402 | Complete | No missing required fields |
| 10811 | Valpaços | 14532 | <25000 | 14415 | 102 | 1242 | 8.61602497 | 0.70759625 | Complete | No missing required fields |
| 40312 | Vendas Novas | 11591 | <25000 | Missing | 105 | 1497 | Not calculated | Not calculated | Excluded | stock_monographs missing |
| 40313 | Viana do Alentejo | 5592 | <25000 | 34893 | 315 | 1808 | 5.18155504 | 0.90275987 | Complete | No missing required fields |
| 10109 | Viana do Castelo | 86975 | >50000 | 103165 | 1362 | 22711 | 22.01424902 | 1.32021519 | Complete | No missing required fields |
| 40413 | Vidigueira | 5261 | <25000 | 15244 | 217 | 940 | 6.16636054 | 1.42351089 | Complete | No missing required fields |
| 10305 | Vieira do Minho | 12067 | <25000 | 19599 | 295 | 1100 | 5.61253125 | 1.50517884 | Complete | No missing required fields |
| 20505 | Vila de Rei | 3455 | <25000 | 17925 | 191 | 381 | 2.12552301 | 1.06555091 | Complete | No missing required fields |
| 10408 | Vila do Conde | 85871 | >50000 | 153260 | Missing | 18876 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 10717 | Vila Flor | 6022 | <25000 | 27185 | 219 | 2668 | 9.81423579 | 0.80559132 | Complete | No missing required fields |
| 30207 | Vila Franca de Xira | 140711 | >50000 | 165753 | 5568 | 44355 | 26.75969666 | 3.35921522 | Complete | No missing required fields |
| 10110 | Vila Nova de Cerveira | 9425 | <25000 | 38738 | 635 | 10553 | 27.24198461 | 1.63921731 | Complete | No missing required fields |
| 10306 | Vila Nova de Famalicão | 136704 | >50000 | 175128 | 1201 | 20999 | 11.99065826 | 0.68578411 | Complete | No missing required fields |
| 10409 | Vila Nova de Gaia | 312984 | >50000 | 210202 | 13165 | 16687 | 7.93855434 | 6.26302319 | Complete | No missing required fields |
| 20414 | Vila Nova de Poiares | 7261 | <25000 | 18909 | 65 | 598 | 3.16251520 | 0.34375165 | Complete | No missing required fields |
| 10812 | Vila Pouca de Aguiar | 11819 | <25000 | Missing | 0 | Missing | Not calculated | Not calculated | Excluded | stock_monographs missing; loaned_monographs missing |
| 10719 | Vila Real | 50043 | >50000 | 150739 | 4032 | 11364 | 7.53885856 | 2.67482204 | Complete | No missing required fields |
| 50116 | Vila Real de Santo António | 19546 | <25000 | 72981 | 4360 | 4117 | 5.64119428 | 5.97415766 | Complete | No missing required fields |
| 20904 | Vila Velha de Ródão | 3577 | <25000 | 28063 | 461 | 1058 | 3.77008873 | 1.64273242 | Complete | No missing required fields |
| 10206 | Vila Verde | 48701 | 25000-50000 | 28891 | 864 | 3230 | 11.17995223 | 2.99055069 | Complete | No missing required fields |
| 10813 | Vimioso | 4174 | <25000 | 10727 | 100 | 2000 | 18.64454181 | 0.93222709 | Complete | No missing required fields |
| 20614 | Viseu | 103502 | >50000 | 102791 | 3023 | 17012 | 16.55008707 | 2.94091895 | Complete | No missing required fields |
| 10307 | Vizela | 24688 | <25000 | 15880 | 281 | 4400 | 27.70780856 | 1.76952141 | Complete | No missing required fields |
2024 RNBP; copies and reported home-loaned monographs. Ratios per 100 year-end monographs. Missing values retained; no imputation. Source population is only a size proxy. This is not a ranked adequacy table.
Data & downloads
Scroll horizontally to see all columns.
| Source code | Municipality | Source population | Population band | Monographs held at year end | Monographs acquired during year | Home-loaned monographs | Loans per 100 held | Acquisitions per 100 held | Analysis status | Missing-field reason |
|---|---|---|---|---|---|---|---|---|---|---|
| 30401 | Abrantes | 33770 | 25000-50000 | 114282 | 810 | 10437 | 9.13267181 | 0.70877304 | Complete | No missing required fields |
| 20101 | Águeda | 47727 | 25000-50000 | 92368 | 2176 | 21687 | 23.47891045 | 2.35579421 | Complete | No missing required fields |
| 20601 | Aguiar da Beira | 5326 | <25000 | 16787 | 176 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40301 | Alandroal | 4973 | <25000 | 18179 | 39 | 1040 | 5.72088674 | 0.21453325 | Complete | No missing required fields |
| 20102 | Albergaria-a-Velha | 26171 | 25000-50000 | 79196 | 1054 | 14350 | 18.11960200 | 1.33087530 | Complete | No missing required fields |
| 50101 | Albufeira | 48807 | 25000-50000 | 63870 | 2430 | 3300 | 5.16674495 | 3.80460310 | Complete | No missing required fields |
| 40101 | Alcácer do Sal | 11036 | <25000 | 35265 | 717 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 30402 | Alcanena | 12876 | <25000 | 42068 | 307 | 6817 | 16.20471617 | 0.72977085 | Complete | No missing required fields |
| 30101 | Alcobaça | 57973 | >50000 | 18500 | 943 | 5792 | 31.30810811 | 5.09729730 | Complete | No missing required fields |
| 30301 | Alcochete | 20462 | <25000 | 67935 | 1310 | 4392 | 6.46500331 | 1.92831383 | Complete | No missing required fields |
| 30102 | Alenquer | 49474 | 25000-50000 | 85003 | 1564 | 3680 | 4.32925897 | 1.83993506 | Complete | No missing required fields |
| 10801 | Alfândega da Fé | 4178 | <25000 | 14883 | 42 | 313 | 2.10307062 | 0.28220117 | Complete | No missing required fields |
| 10701 | Alijó | 10296 | <25000 | Missing | 269 | 3312 | Not calculated | Not calculated | Excluded | stock_monographs missing |
| 40401 | Aljustrel | 8923 | <25000 | 37619 | 90 | 359 | 0.95430501 | 0.23924081 | Complete | No missing required fields |
| 30302 | Almada | 183643 | >50000 | 101552 | 4700 | 51025 | 50.24519458 | 4.62817079 | Complete | No missing required fields |
| 20801 | Almeida | 5634 | <25000 | 20513 | 401 | 350 | 1.70623507 | 1.95485789 | Complete | No missing required fields |
| 30501 | Almeirim | 23087 | <25000 | 40058 | 541 | 6088 | 15.19796295 | 1.35054171 | Complete | No missing required fields |
| 40402 | Almodôvar | 6652 | <25000 | 32456 | 331 | 7684 | 23.67512941 | 1.01984225 | Complete | No missing required fields |
| 30502 | Alpiarça | 7493 | <25000 | 22359 | 873 | 2475 | 11.06936804 | 3.90446800 | Complete | No missing required fields |
| 40201 | Alter do Chão | 3222 | <25000 | 17170 | 30 | 862 | 5.02038439 | 0.17472335 | Complete | No missing required fields |
| 20401 | Alvaiázere | 6479 | <25000 | 28540 | 89 | 1436 | 5.03153469 | 0.31184303 | Complete | No missing required fields |
| 40403 | Alvito | 2303 | <25000 | 34433 | 169 | 2611 | 7.58284204 | 0.49080824 | Complete | No missing required fields |
| 30201 | Amadora | 181607 | >50000 | 113214 | 1273 | 27921 | 24.66214426 | 1.12441924 | Complete | No missing required fields |
| 10501 | Amarante | 52169 | >50000 | 36074 | 11 | 2890 | 8.01131008 | 0.03049288 | Complete | No missing required fields |
| 10201 | Amares | 19782 | <25000 | 27881 | 317 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 20103 | Anadia | 28512 | 25000-50000 | 81914 | 531 | 12983 | 15.84954953 | 0.64824084 | Complete | No missing required fields |
| 20402 | Ansião | 11930 | <25000 | 32776 | 131 | 2724 | 8.31095924 | 0.39968269 | Complete | No missing required fields |
| 10101 | Arcos de Valdevez | 20819 | <25000 | 48696 | 1021 | 2392 | 4.91210777 | 2.09668145 | Complete | No missing required fields |
| 20403 | Arganil | 11447 | <25000 | 54723 | 727 | 7553 | 13.80224037 | 1.32850904 | Complete | No missing required fields |
| 10601 | Arouca | 20826 | <25000 | 35910 | 634 | 10939 | 30.46226678 | 1.76552492 | Complete | No missing required fields |
| 40302 | Arraiolos | 6870 | <25000 | 20555 | 228 | 2949 | 14.34687424 | 1.10921917 | Complete | No missing required fields |
| 30103 | Arruda dos Vinhos | 15752 | <25000 | 27728 | 697 | 2147 | 7.74307559 | 2.51370456 | Complete | No missing required fields |
| 20104 | Aveiro | 88154 | >50000 | 99511 | 2307 | 31339 | 31.49300077 | 2.31833667 | Complete | No missing required fields |
| 40203 | Avis | 3759 | <25000 | 18240 | 828 | 534 | 2.92763158 | 4.53947368 | Complete | No missing required fields |
| 30503 | Azambuja | 23448 | <25000 | 51409 | 2788 | 10563 | 20.54698594 | 5.42317493 | Complete | No missing required fields |
| 10502 | Baião | 17088 | <25000 | 23144 | 246 | 1600 | 6.91323885 | 1.06291047 | Complete | No missing required fields |
| 10202 | Barcelos | 116959 | >50000 | 50181 | 1880 | 10027 | 19.98166637 | 3.74643789 | Complete | No missing required fields |
| 30303 | Barreiro | 81131 | >50000 | 84916 | 1115 | 6903 | 8.12921004 | 1.31306232 | Complete | No missing required fields |
| 20301 | Batalha | 16894 | <25000 | 50385 | 187 | 7779 | 15.43911879 | 0.37114221 | Complete | No missing required fields |
| 40405 | Beja | 33954 | 25000-50000 | 170826 | 1587 | 29809 | 17.44991980 | 0.92901549 | Complete | No missing required fields |
| 21001 | Belmonte | 6265 | <25000 | 8950 | 459 | 90 | 1.00558659 | 5.12849162 | Complete | No missing required fields |
| 30504 | Benavente | 33131 | 25000-50000 | 46801 | 768 | 6771 | 14.46763958 | 1.64099058 | Complete | No missing required fields |
| 30104 | Bombarral | 14272 | <25000 | 8800 | 0 | 0 | 0.00000000 | 0.00000000 | Complete | No missing required fields |
| 40303 | Borba | 6378 | <25000 | 16454 | 185 | 873 | 5.30570074 | 1.12434666 | Complete | No missing required fields |
| 10802 | Boticas | 4832 | <25000 | 42000 | 1000 | 2100 | 5.00000000 | 2.38095238 | Complete | No missing required fields |
| 10203 | Braga | 203519 | >50000 | 463890 | 8477 | 68362 | 14.73668327 | 1.82737287 | Complete | No missing required fields |
| 10803 | Bragança | 35581 | 25000-50000 | 56069 | 744 | 9112 | 16.25140452 | 1.32693645 | Complete | No missing required fields |
| 10503 | Cabeceiras de Basto | 15538 | <25000 | 12215 | 570 | 846 | 6.92591077 | 4.66639378 | Complete | No missing required fields |
| 30105 | Cadaval | 14711 | <25000 | 49869 | 521 | 4973 | 9.97212697 | 1.04473721 | Complete | No missing required fields |
| 30106 | Caldas da Rainha | 55206 | >50000 | 87419 | 859 | 15168 | 17.35091914 | 0.98262391 | Complete | No missing required fields |
| 58002 | Câmara de Lobos | 33243 | 25000-50000 | 74687 | 5064 | 1357 | 1.81691593 | 6.78029644 | Complete | No missing required fields |
| 10102 | Caminha | 16604 | <25000 | 52186 | Missing | 2723 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 40204 | Campo Maior | 7877 | <25000 | 15861 | 66 | 92 | 0.58003909 | 0.41611500 | Complete | No missing required fields |
| 20201 | Cantanhede | 35399 | 25000-50000 | 60076 | 1301 | 11927 | 19.85318596 | 2.16559025 | Complete | No missing required fields |
| 10703 | Carrazeda de Ansiães | 5368 | <25000 | 19162 | 1199 | 109 | 0.56883415 | 6.25717566 | Complete | No missing required fields |
| 20602 | Carregal do Sal | 9261 | <25000 | 41159 | 891 | 5108 | 12.41040842 | 2.16477563 | Complete | No missing required fields |
| 30505 | Cartaxo | 24711 | <25000 | 15156 | 234 | 1569 | 10.35233571 | 1.54394299 | Complete | No missing required fields |
| 30202 | Cascais | 222339 | >50000 | 170479 | 3900 | 45948 | 26.95229324 | 2.28767180 | Complete | No missing required fields |
| 20404 | Castanheira de Pêra | 2756 | <25000 | 15845 | 211 | 1089 | 6.87283055 | 1.33165036 | Complete | No missing required fields |
| 20901 | Castelo Branco | 53342 | >50000 | 115888 | 2309 | 4927 | 4.25151871 | 1.99244098 | Complete | No missing required fields |
| 10504 | Castelo de Paiva | 15395 | <25000 | 19292 | 576 | 1221 | 6.32904831 | 2.98569355 | Complete | No missing required fields |
| 40205 | Castelo de Vide | 3180 | <25000 | 14939 | 45 | 395 | 2.64408595 | 0.30122498 | Complete | No missing required fields |
| 20603 | Castro Daire | 13790 | <25000 | 25102 | 434 | 1964 | 7.82407776 | 1.72894590 | Complete | No missing required fields |
| 50104 | Castro Marim | 6983 | <25000 | 26488 | 526 | 1348 | 5.08909695 | 1.98580489 | Complete | No missing required fields |
| 40406 | Castro Verde | 6946 | <25000 | 53090 | 652 | 6500 | 12.24336033 | 1.22810322 | Complete | No missing required fields |
| 20802 | Celorico da Beira | 6635 | <25000 | 13848 | 360 | 1672 | 12.07394570 | 2.59965338 | Complete | No missing required fields |
| 10505 | Celorico de Basto | 17637 | <25000 | 141085 | 1741 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 30506 | Chamusca | 8549 | <25000 | 18781 | 215 | 2472 | 13.16223843 | 1.14477397 | Complete | No missing required fields |
| 10804 | Chaves | 37322 | 25000-50000 | 44813 | 153 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10506 | Cinfães | 17293 | <25000 | 23830 | 397 | 6631 | 27.82626941 | 1.66596727 | Complete | No missing required fields |
| 20202 | Coimbra | 146899 | >50000 | 768983 | 10401 | 106930 | 13.90537892 | 1.35256566 | Complete | No missing required fields |
| 20203 | Condeixa-a-Nova | 17882 | <25000 | 27736 | 412 | 8485 | 30.59201038 | 1.48543409 | Complete | No missing required fields |
| 30403 | Constância | 4020 | <25000 | 20343 | 300 | 2127 | 10.45568500 | 1.47470875 | Complete | No missing required fields |
| 30507 | Coruche | 17298 | <25000 | 20883 | 257 | 4420 | 21.16554135 | 1.23066609 | Complete | No missing required fields |
| 21002 | Covilhã | 46606 | 25000-50000 | 68719 | 1486 | 12823 | 18.66005035 | 2.16242960 | Complete | No missing required fields |
| 40206 | Crato | 3249 | <25000 | 16435 | 142 | 438 | 2.66504411 | 0.86400974 | Complete | No missing required fields |
| 40407 | Cuba | 4469 | <25000 | 14465 | 61 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40207 | Elvas | 20325 | <25000 | 135213 | 250 | 2131 | 1.57603189 | 0.18489346 | Complete | No missing required fields |
| 30404 | Entroncamento | 22604 | <25000 | 25284 | 478 | 4424 | 17.49723145 | 1.89052365 | Complete | No missing required fields |
| 10401 | Espinho | 32736 | 25000-50000 | 49376 | 1159 | 11928 | 24.15748542 | 2.34729423 | Complete | No missing required fields |
| 10204 | Esposende | 37722 | 25000-50000 | 61952 | 818 | 12727 | 20.54332386 | 1.32037707 | Complete | No missing required fields |
| 20105 | Estarreja | 27474 | 25000-50000 | 74446 | 3384 | 11323 | 15.20968219 | 4.54557666 | Complete | No missing required fields |
| 40304 | Estremoz | 12482 | <25000 | 48825 | 522 | 2798 | 5.73067076 | 1.06912442 | Complete | No missing required fields |
| 10301 | Fafe | 48420 | 25000-50000 | 51061 | 456 | 8309 | 16.27269345 | 0.89304949 | Complete | No missing required fields |
| 50105 | Faro | 70347 | >50000 | 78542 | 322 | 19131 | 24.35766851 | 0.40997173 | Complete | No missing required fields |
| 10507 | Felgueiras | 55223 | >50000 | 73445 | 547 | 8602 | 11.71216557 | 0.74477500 | Complete | No missing required fields |
| 40408 | Ferreira do Alentejo | 7902 | <25000 | 24972 | 173 | 1205 | 4.82540445 | 0.69277591 | Complete | No missing required fields |
| 30405 | Ferreira do Zêzere | 8115 | <25000 | 19481 | 562 | 5413 | 27.78604794 | 2.88486217 | Complete | No missing required fields |
| 20204 | Figueira da Foz | 61397 | >50000 | 194495 | 1723 | 5681 | 2.92089771 | 0.88588396 | Complete | No missing required fields |
| 20405 | Figueiró dos Vinhos | 5325 | <25000 | 37541 | 181 | 1814 | 4.83205029 | 0.48213953 | Complete | No missing required fields |
| 20701 | Fornos de Algodres | 4400 | <25000 | 19213 | 563 | 780 | 4.05975121 | 2.93030760 | Complete | No missing required fields |
| 10704 | Freixo de Espada à Cinta | 3058 | <25000 | 12983 | 735 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40208 | Fronteira | 2974 | <25000 | 12091 | 41 | 147 | 1.21578033 | 0.33909519 | Complete | No missing required fields |
| 21003 | Fundão | 27285 | 25000-50000 | 52937 | 1398 | 14147 | 26.72421936 | 2.64087500 | Complete | No missing required fields |
| 30406 | Gavião | 3263 | <25000 | 13162 | 1056 | 1220 | 9.26910804 | 8.02309679 | Complete | No missing required fields |
| 20406 | Góis | 3822 | <25000 | 14754 | 209 | 197 | 1.33523112 | 1.41656500 | Complete | No missing required fields |
| 30508 | Golegã | 5488 | <25000 | 30001 | 256 | 875 | 2.91656945 | 0.85330489 | Complete | No missing required fields |
| 10402 | Gondomar | 169388 | >50000 | 53105 | 1754 | 13249 | 24.94868656 | 3.30289050 | Complete | No missing required fields |
| 20702 | Gouveia | 12301 | <25000 | 31109 | 1373 | 5002 | 16.07894821 | 4.41351377 | Complete | No missing required fields |
| 40102 | Grândola | 14226 | <25000 | 41290 | 1285 | 12680 | 30.70961492 | 3.11213369 | Complete | No missing required fields |
| 20804 | Guarda | 40046 | 25000-50000 | 133462 | 1050 | 4674 | 3.50212045 | 0.78674080 | Complete | No missing required fields |
| 10302 | Guimarães | 156513 | >50000 | 341815 | 8865 | 38998 | 11.40909556 | 2.59350818 | Complete | No missing required fields |
| 20902 | Idanha-a-Nova | 8541 | <25000 | 26050 | 156 | 1109 | 4.25719770 | 0.59884837 | Complete | No missing required fields |
| 20106 | Ílhavo | 43210 | 25000-50000 | 73489 | 2591 | 21666 | 29.48196329 | 3.52569772 | Complete | No missing required fields |
| 50106 | Lagoa | 25535 | 25000-50000 | 80856 | 2726 | 17535 | 21.68670229 | 3.37142574 | Complete | No missing required fields |
| 50107 | Lagos | 35241 | 25000-50000 | Missing | 1890 | 17077 | Not calculated | Not calculated | Excluded | stock_monographs missing |
| 20302 | Leiria | 136006 | >50000 | 113594 | 2895 | 32912 | 28.97336127 | 2.54855010 | Complete | No missing required fields |
| 30203 | Lisboa | 575739 | >50000 | 548010 | 23345 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 50108 | Loulé | 75764 | >50000 | 106870 | 3828 | 19655 | 18.39150370 | 3.58192196 | Complete | No missing required fields |
| 30204 | Loures | 209877 | >50000 | 110478 | 3643 | 18488 | 16.73455349 | 3.29748909 | Complete | No missing required fields |
| 30107 | Lourinhã | 28978 | 25000-50000 | 36240 | 3109 | 12534 | 34.58609272 | 8.57891832 | Complete | No missing required fields |
| 20407 | Lousã | 17662 | <25000 | 55618 | 167 | 14623 | 26.29184796 | 0.30026250 | Complete | No missing required fields |
| 10508 | Lousada | 48652 | 25000-50000 | 37692 | 616 | 2217 | 5.88188475 | 1.63429906 | Complete | No missing required fields |
| 20501 | Mação | 6399 | <25000 | 29982 | 1000 | 780 | 2.60156094 | 3.33533453 | Complete | No missing required fields |
| 10805 | Macedo de Cavaleiros | 14253 | <25000 | 8826 | 314 | 1363 | 15.44300929 | 3.55767052 | Complete | No missing required fields |
| 58004 | Machico | 19679 | <25000 | 12689 | 7193 | 1253 | 9.87469462 | 56.68689416 | Complete | No missing required fields |
| 57014 | Madalena | 6559 | <25000 | 55712 | 1277 | 2530 | 4.54121195 | 2.29214532 | Complete | No missing required fields |
| 30108 | Mafra | 91248 | >50000 | 168108 | 2037 | 25259 | 15.02545982 | 1.21172104 | Complete | No missing required fields |
| 10403 | Maia | 144664 | >50000 | 118810 | 2329 | 28524 | 24.00808013 | 1.96027270 | Complete | No missing required fields |
| 20604 | Mangualde | 18766 | <25000 | 54148 | 385 | 1668 | 3.08044618 | 0.71101426 | Complete | No missing required fields |
| 20805 | Manteigas | 2951 | <25000 | 15891 | 646 | 637 | 4.00855830 | 4.06519414 | Complete | No missing required fields |
| 10509 | Marco de Canaveses | 49501 | 25000-50000 | 24228 | 783 | 2582 | 10.65709097 | 3.23179792 | Complete | No missing required fields |
| 20303 | Marinha Grande | 41773 | 25000-50000 | 46089 | 288 | 15043 | 32.63902450 | 0.62487795 | Complete | No missing required fields |
| 10404 | Matosinhos | 181046 | >50000 | Missing | 1557 | Missing | Not calculated | Not calculated | Excluded | stock_monographs missing; loaned_monographs missing |
| 20107 | Mealhada | 20023 | <25000 | 36078 | 2252 | 7447 | 20.64138810 | 6.24203115 | Complete | No missing required fields |
| 20806 | Meda | 4594 | <25000 | 18005 | 553 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10103 | Melgaço | 7557 | <25000 | 20935 | 330 | 1622 | 7.74779078 | 1.57630762 | Complete | No missing required fields |
| 40409 | Mértola | 6066 | <25000 | 29922 | 606 | 9257 | 30.93710313 | 2.02526569 | Complete | No missing required fields |
| 20205 | Mira | 12720 | <25000 | 21632 | 224 | 1864 | 8.61686391 | 1.03550296 | Complete | No missing required fields |
| 20408 | Miranda do Corvo | 12269 | <25000 | 28887 | 379 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10806 | Miranda do Douro | 6220 | <25000 | 41736 | 262 | 6251 | 14.97747748 | 0.62775541 | Complete | No missing required fields |
| 10807 | Mirandela | 21344 | <25000 | 68757 | 274 | 1959 | 2.84916445 | 0.39850488 | Complete | No missing required fields |
| 10808 | Mogadouro | 8169 | <25000 | 25954 | Missing | 1620 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 10707 | Moimenta da Beira | 9776 | <25000 | 19585 | 772 | 495 | 2.52744447 | 3.94179219 | Complete | No missing required fields |
| 30304 | Moita | 70399 | >50000 | 84736 | 1117 | 9806 | 11.57241314 | 1.31821186 | Complete | No missing required fields |
| 10104 | Monção | 18004 | <25000 | 16293 | 193 | 3000 | 18.41281532 | 1.18455779 | Complete | No missing required fields |
| 10510 | Mondim de Basto | 6394 | <25000 | 29941 | 670 | 1353 | 4.51888714 | 2.23773421 | Complete | No missing required fields |
| 40210 | Monforte | 3017 | <25000 | 19320 | 205 | 1494 | 7.73291925 | 1.06107660 | Complete | No missing required fields |
| 10809 | Montalegre | 9100 | <25000 | 22743 | 974 | 1072 | 4.71353823 | 4.28263642 | Complete | No missing required fields |
| 40306 | Montemor-o-Novo | 15912 | <25000 | 6575 | 310 | 4491 | 68.30418251 | 4.71482890 | Complete | No missing required fields |
| 20206 | Montemor-o-Velho | 25131 | 25000-50000 | 29123 | 614 | 1315 | 4.51533152 | 2.10829928 | Complete | No missing required fields |
| 30305 | Montijo | 60612 | >50000 | 95160 | 192 | 3923 | 4.12253047 | 0.20176545 | Complete | No missing required fields |
| 20605 | Mortágua | 9104 | <25000 | 25656 | 352 | 786 | 3.06361085 | 1.37199875 | Complete | No missing required fields |
| 40410 | Moura | 13331 | <25000 | 78978 | 395 | 4813 | 6.09410216 | 0.50013928 | Complete | No missing required fields |
| 10810 | Murça | 5229 | <25000 | Missing | 35 | Missing | Not calculated | Not calculated | Excluded | stock_monographs missing; loaned_monographs missing |
| 20108 | Murtosa | 11360 | <25000 | 8403 | Missing | 788 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 30109 | Nazaré | 15856 | <25000 | 39897 | 166 | 2052 | 5.14324385 | 0.41607138 | Complete | No missing required fields |
| 20606 | Nelas | 13508 | <25000 | 46862 | 372 | 5874 | 12.53467628 | 0.79382015 | Complete | No missing required fields |
| 40212 | Nisa | 5633 | <25000 | 34461 | 254 | 3015 | 8.74902063 | 0.73706509 | Complete | No missing required fields |
| 30110 | Óbidos | 13720 | <25000 | 23762 | 108 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 40103 | Odemira | 33866 | 25000-50000 | 36733 | 526 | 6258 | 17.03645224 | 1.43195492 | Complete | No missing required fields |
| 30208 | Odivelas | 156278 | >50000 | 71407 | 2199 | 16416 | 22.98934278 | 3.07953002 | Complete | No missing required fields |
| 30205 | Oeiras | 177866 | >50000 | 129802 | 8041 | 108104 | 83.28377067 | 6.19481980 | Complete | No missing required fields |
| 50110 | Olhão | 45452 | 25000-50000 | 46925 | 844 | 9054 | 19.29461907 | 1.79861481 | Complete | No missing required fields |
| 10603 | Oliveira de Azeméis | 67471 | >50000 | 49418 | 887 | 15928 | 32.23117083 | 1.79489255 | Complete | No missing required fields |
| 20607 | Oliveira de Frades | 9840 | <25000 | 17796 | 76 | 373 | 2.09597662 | 0.42706226 | Complete | No missing required fields |
| 20109 | Oliveira do Bairro | 25779 | 25000-50000 | 83960 | 813 | 9175 | 10.92782277 | 0.96831825 | Complete | No missing required fields |
| 20409 | Oliveira do Hospital | 19610 | <25000 | 37397 | 355 | 1455 | 3.89068642 | 0.94927401 | Complete | No missing required fields |
| 30411 | Ourém | 46988 | 25000-50000 | 36839 | 3230 | 8311 | 22.56033008 | 8.76788186 | Complete | No missing required fields |
| 40411 | Ourique | 4785 | <25000 | 19493 | 414 | 2450 | 12.56861437 | 2.12383933 | Complete | No missing required fields |
| 20110 | Ovar | 57680 | >50000 | 74179 | 751 | 17944 | 24.19013467 | 1.01241591 | Complete | No missing required fields |
| 10511 | Paços de Ferreira | 56071 | >50000 | 64885 | 1858 | 2610 | 4.02250135 | 2.86352778 | Complete | No missing required fields |
| 30306 | Palmela | 74462 | >50000 | 71925 | 2106 | 11660 | 16.21133125 | 2.92805005 | Complete | No missing required fields |
| 20410 | Pampilhosa da Serra | 4182 | <25000 | 9532 | 15 | 4 | 0.04196391 | 0.15736467 | Complete | No missing required fields |
| 10512 | Paredes | 86560 | >50000 | 15196 | 88 | 773 | 5.08686496 | 0.57909976 | Complete | No missing required fields |
| 10105 | Paredes de Coura | 8688 | <25000 | 21267 | 91 | 726 | 3.41373960 | 0.42789298 | Complete | No missing required fields |
| 20411 | Pedrógão Grande | 3718 | <25000 | 34569 | 252 | 756 | 2.18693049 | 0.72897683 | Complete | No missing required fields |
| 20207 | Penacova | 12951 | <25000 | 22819 | 153 | 5371 | 23.53740304 | 0.67049389 | Complete | No missing required fields |
| 10513 | Penafiel | 70421 | >50000 | 84589 | 797 | 26168 | 30.93546442 | 0.94220289 | Complete | No missing required fields |
| 20608 | Penalva do Castelo | 7414 | <25000 | 25246 | 424 | 4803 | 19.02479601 | 1.67947398 | Complete | No missing required fields |
| 20903 | Penamacor | 4821 | <25000 | 19978 | 70 | 567 | 2.83812193 | 0.35038542 | Complete | No missing required fields |
| 20412 | Penela | 5714 | <25000 | 14627 | 333 | 3006 | 20.55103576 | 2.27661175 | Complete | No missing required fields |
| 30111 | Peniche | 27792 | 25000-50000 | 15337 | 1797 | 2100 | 13.69237791 | 11.71676338 | Complete | No missing required fields |
| 10709 | Peso da Régua | 14275 | <25000 | 17322 | 537 | 1777 | 10.25863064 | 3.10010391 | Complete | No missing required fields |
| 20807 | Pinhel | 7817 | <25000 | 14529 | 567 | 679 | 4.67341180 | 3.90253975 | Complete | No missing required fields |
| 20304 | Pombal | 52573 | >50000 | 71338 | 1459 | 15542 | 21.78642519 | 2.04519331 | Complete | No missing required fields |
| 10106 | Ponte da Barca | 11210 | <25000 | 19526 | 290 | 1012 | 5.18283315 | 1.48519922 | Complete | No missing required fields |
| 10107 | Ponte de Lima | 41066 | 25000-50000 | 155093 | 1763 | 12820 | 8.26600814 | 1.13673731 | Complete | No missing required fields |
| 40213 | Ponte de Sor | 15123 | <25000 | 49468 | 340 | 564 | 1.14013099 | 0.68731301 | Complete | No missing required fields |
| 40214 | Portalegre | 21754 | <25000 | 49304 | 362 | 3572 | 7.24484829 | 0.73422035 | Complete | No missing required fields |
| 40308 | Portel | 5734 | <25000 | 21748 | 143 | 1644 | 7.55931580 | 0.65753173 | Complete | No missing required fields |
| 50111 | Portimão | 64466 | >50000 | 59650 | 1892 | 15808 | 26.50125733 | 3.17183571 | Complete | No missing required fields |
| 10405 | Porto | 252687 | >50000 | 810779 | 9168 | 81853 | 10.09559942 | 1.13076436 | Complete | No missing required fields |
| 20305 | Porto de Mós | 24310 | <25000 | 45914 | 1368 | 20957 | 45.64403014 | 2.97948338 | Complete | No missing required fields |
| 10303 | Póvoa de Lanhoso | 22931 | <25000 | 20903 | 3493 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 10406 | Póvoa de Varzim | 68459 | >50000 | 175939 | 2357 | 8206 | 4.66411654 | 1.33966886 | Complete | No missing required fields |
| 57009 | Praia da Vitória | 19862 | <25000 | 32575 | 2467 | 1951 | 5.98925556 | 7.57329240 | Complete | No missing required fields |
| 20503 | Proença-a-Nova | 7102 | <25000 | 40764 | 268 | 2985 | 7.32263762 | 0.65744284 | Complete | No missing required fields |
| 40309 | Redondo | 6290 | <25000 | 62204 | 523 | 1127 | 1.81178059 | 0.84078194 | Complete | No missing required fields |
| 40310 | Reguengos de Monsaraz | 9840 | <25000 | 24594 | 104 | 1408 | 5.72497357 | 0.42286737 | Complete | No missing required fields |
| 58008 | Ribeira Brava | 13322 | <25000 | 17209 | 327 | 604 | 3.50979139 | 1.90016852 | Complete | No missing required fields |
| 10515 | Ribeira de Pena | 5840 | <25000 | 17816 | 0 | Missing | Not calculated | Not calculated | Excluded | loaned_monographs missing |
| 30509 | Rio Maior | 22678 | <25000 | 31072 | 316 | 8991 | 28.93601957 | 1.01699279 | Complete | No missing required fields |
| 30510 | Salvaterra de Magos | 23827 | <25000 | 31236 | 767 | 2881 | 9.22333205 | 2.45550006 | Complete | No missing required fields |
| 20609 | Santa Comba Dão | 11022 | <25000 | 18821 | 148 | 608 | 3.23043409 | 0.78635567 | Complete | No missing required fields |
| 58009 | Santa Cruz | 44816 | 25000-50000 | 18000 | 250 | 1103 | 6.12777778 | 1.38888889 | Complete | No missing required fields |
| 10602 | Santa Maria da Feira | 140568 | >50000 | 172898 | 4312 | 155161 | 89.74135039 | 2.49395597 | Complete | No missing required fields |
| 30511 | Santarém | 61664 | >50000 | 142033 | 1465 | 6528 | 4.59611499 | 1.03145044 | Complete | No missing required fields |
| 40104 | Santiago do Cacém | 28294 | 25000-50000 | 94092 | 1228 | 9337 | 9.92326659 | 1.30510564 | Complete | No missing required fields |
| 10304 | Santo Tirso | 67713 | >50000 | 93876 | 2749 | 5251 | 5.59354894 | 2.92833099 | Complete | No missing required fields |
| 50112 | São Brás de Alportel | 11730 | <25000 | 72711 | 5492 | 18009 | 24.76791682 | 7.55319003 | Complete | No missing required fields |
| 10604 | São João da Madeira | 24247 | <25000 | 47699 | 723 | 7281 | 15.26447095 | 1.51575505 | Complete | No missing required fields |
| 10712 | São João da Pesqueira | 6743 | <25000 | 67171 | 76 | 1605 | 2.38942401 | 0.11314407 | Complete | No missing required fields |
| 20610 | São Pedro do Sul | 15296 | <25000 | 18408 | 313 | 3093 | 16.80247718 | 1.70034767 | Complete | No missing required fields |
| 57015 | São Roque do Pico | 3461 | <25000 | 6683 | 75 | 304 | 4.54885530 | 1.12225049 | Complete | No missing required fields |
| 58011 | São Vicente | 5123 | <25000 | 12446 | 15 | 599 | 4.81279126 | 0.12052065 | Complete | No missing required fields |
| 30407 | Sardoal | 3638 | <25000 | 17545 | 610 | 1273 | 7.25562838 | 3.47677401 | Complete | No missing required fields |
| 20611 | Sátão | 11265 | <25000 | 33364 | 0 | 630 | 1.88826280 | 0.00000000 | Complete | No missing required fields |
| 20703 | Seia | 21410 | <25000 | 27530 | 890 | 3265 | 11.85978932 | 3.23283691 | Complete | No missing required fields |
| 30307 | Seixal | 176883 | >50000 | 138910 | 1149 | 24744 | 17.81297243 | 0.82715427 | Complete | No missing required fields |
| 10713 | Sernancelhe | 5818 | <25000 | 20080 | 55 | 1257 | 6.25996016 | 0.27390438 | Complete | No missing required fields |
| 40412 | Serpa | 13673 | <25000 | 27578 | 526 | 3132 | 11.35687867 | 1.90731743 | Complete | No missing required fields |
| 20504 | Sertã | 14983 | <25000 | 26465 | 819 | 9723 | 36.73908936 | 3.09465332 | Complete | No missing required fields |
| 30308 | Sesimbra | 56576 | >50000 | 67267 | 1386 | 12254 | 18.21695631 | 2.06044569 | Complete | No missing required fields |
| 30309 | Setúbal | 124339 | >50000 | 94445 | 2495 | 13112 | 13.88321245 | 2.64174917 | Complete | No missing required fields |
| 20111 | Sever do Vouga | 11023 | <25000 | 27432 | 160 | 2755 | 10.04301546 | 0.58326043 | Complete | No missing required fields |
| 50113 | Silves | 40309 | 25000-50000 | 49385 | 228 | 7546 | 15.27994330 | 0.46167865 | Complete | No missing required fields |
| 40105 | Sines | 14796 | <25000 | 27337 | 456 | 2383 | 8.71712331 | 1.66806892 | Complete | No missing required fields |
| 30206 | Sintra | 400947 | >50000 | 199082 | 1649 | 11983 | 6.01912780 | 0.82830191 | Complete | No missing required fields |
| 30112 | Sobral de Monte Agraço | 12214 | <25000 | 23369 | 670 | 7979 | 34.14352347 | 2.86704609 | Complete | No missing required fields |
| 20208 | Soure | 17302 | <25000 | 23061 | 327 | 9140 | 39.63401414 | 1.41797841 | Complete | No missing required fields |
| 40311 | Sousel | 4403 | <25000 | 15393 | 224 | 494 | 3.20925096 | 1.45520691 | Complete | No missing required fields |
| 20413 | Tábua | 11784 | <25000 | 24539 | 455 | 2393 | 9.75182363 | 1.85419129 | Complete | No missing required fields |
| 50114 | Tavira | 28280 | 25000-50000 | 62148 | 1388 | 6043 | 9.72356311 | 2.23337839 | Complete | No missing required fields |
| 30408 | Tomar | 37039 | 25000-50000 | 80803 | 1266 | 6683 | 8.27073252 | 1.56677351 | Complete | No missing required fields |
| 20612 | Tondela | 25957 | 25000-50000 | 50529 | 118 | 1393 | 2.75683271 | 0.23352926 | Complete | No missing required fields |
| 10716 | Torre de Moncorvo | 6638 | <25000 | 23371 | 681 | 859 | 3.67549527 | 2.91386761 | Complete | No missing required fields |
| 30409 | Torres Novas | 34986 | 25000-50000 | 73543 | 465 | 11446 | 15.56368383 | 0.63228315 | Complete | No missing required fields |
| 30113 | Torres Vedras | 89526 | >50000 | 70779 | 1477 | 12124 | 17.12937453 | 2.08677715 | Complete | No missing required fields |
| 20809 | Trancoso | 8402 | <25000 | 16738 | 362 | 313 | 1.86999642 | 2.16274346 | Complete | No missing required fields |
| 10308 | Trofa | 40294 | 25000-50000 | 15829 | 1621 | 689 | 4.35277023 | 10.24069745 | Complete | No missing required fields |
| 20112 | Vagos | 25167 | 25000-50000 | 27594 | 2450 | 5546 | 20.09857215 | 8.87874176 | Complete | No missing required fields |
| 10605 | Vale de Cambra | 21239 | <25000 | 43201 | 957 | 5378 | 12.44878591 | 2.21522650 | Complete | No missing required fields |
| 10108 | Valença | 14297 | <25000 | 52408 | 318 | 5884 | 11.22729354 | 0.60677759 | Complete | No missing required fields |
| 10407 | Valongo | 101464 | >50000 | 75510 | 2330 | 23206 | 30.73235333 | 3.08568402 | Complete | No missing required fields |
| 10811 | Valpaços | 14532 | <25000 | 14415 | 102 | 1242 | 8.61602497 | 0.70759625 | Complete | No missing required fields |
| 40312 | Vendas Novas | 11591 | <25000 | Missing | 105 | 1497 | Not calculated | Not calculated | Excluded | stock_monographs missing |
| 40313 | Viana do Alentejo | 5592 | <25000 | 34893 | 315 | 1808 | 5.18155504 | 0.90275987 | Complete | No missing required fields |
| 10109 | Viana do Castelo | 86975 | >50000 | 103165 | 1362 | 22711 | 22.01424902 | 1.32021519 | Complete | No missing required fields |
| 40413 | Vidigueira | 5261 | <25000 | 15244 | 217 | 940 | 6.16636054 | 1.42351089 | Complete | No missing required fields |
| 10305 | Vieira do Minho | 12067 | <25000 | 19599 | 295 | 1100 | 5.61253125 | 1.50517884 | Complete | No missing required fields |
| 20505 | Vila de Rei | 3455 | <25000 | 17925 | 191 | 381 | 2.12552301 | 1.06555091 | Complete | No missing required fields |
| 10408 | Vila do Conde | 85871 | >50000 | 153260 | Missing | 18876 | Not calculated | Not calculated | Excluded | acquired_monographs missing |
| 10717 | Vila Flor | 6022 | <25000 | 27185 | 219 | 2668 | 9.81423579 | 0.80559132 | Complete | No missing required fields |
| 30207 | Vila Franca de Xira | 140711 | >50000 | 165753 | 5568 | 44355 | 26.75969666 | 3.35921522 | Complete | No missing required fields |
| 10110 | Vila Nova de Cerveira | 9425 | <25000 | 38738 | 635 | 10553 | 27.24198461 | 1.63921731 | Complete | No missing required fields |
| 10306 | Vila Nova de Famalicão | 136704 | >50000 | 175128 | 1201 | 20999 | 11.99065826 | 0.68578411 | Complete | No missing required fields |
| 10409 | Vila Nova de Gaia | 312984 | >50000 | 210202 | 13165 | 16687 | 7.93855434 | 6.26302319 | Complete | No missing required fields |
| 20414 | Vila Nova de Poiares | 7261 | <25000 | 18909 | 65 | 598 | 3.16251520 | 0.34375165 | Complete | No missing required fields |
| 10812 | Vila Pouca de Aguiar | 11819 | <25000 | Missing | 0 | Missing | Not calculated | Not calculated | Excluded | stock_monographs missing; loaned_monographs missing |
| 10719 | Vila Real | 50043 | >50000 | 150739 | 4032 | 11364 | 7.53885856 | 2.67482204 | Complete | No missing required fields |
| 50116 | Vila Real de Santo António | 19546 | <25000 | 72981 | 4360 | 4117 | 5.64119428 | 5.97415766 | Complete | No missing required fields |
| 20904 | Vila Velha de Ródão | 3577 | <25000 | 28063 | 461 | 1058 | 3.77008873 | 1.64273242 | Complete | No missing required fields |
| 10206 | Vila Verde | 48701 | 25000-50000 | 28891 | 864 | 3230 | 11.17995223 | 2.99055069 | Complete | No missing required fields |
| 10813 | Vimioso | 4174 | <25000 | 10727 | 100 | 2000 | 18.64454181 | 0.93222709 | Complete | No missing required fields |
| 20614 | Viseu | 103502 | >50000 | 102791 | 3023 | 17012 | 16.55008707 | 2.94091895 | Complete | No missing required fields |
| 10307 | Vizela | 24688 | <25000 | 15880 | 281 | 4400 | 27.70780856 | 1.76952141 | Complete | No missing required fields |
2024 RNBP; copies and reported home-loaned monographs. Ratios per 100 year-end monographs. Missing values retained; no imputation. Source population is only a size proxy. This is not a ranked adequacy table.
Scroll horizontally to see all columns.
| Population band | Complete | Excluded | Median loans per 100 held | Median additions per 100 held | Above/below median count | Strict quartile count |
|---|---|---|---|---|---|---|
| <25000 | 142 | 18 | 7.08537953 | 1.39428188 | 29 | 4 |
| 25000-50000 | 41 | 2 | 15.27994330 | 1.79861481 | 9 | 1 |
| >50000 | 51 | 3 | 17.12937453 | 2.04519331 | 9 | 1 |
Separate medians within each band. Thresholds describe relative position, not validated service standards.
Evidence & method
How we calculated it
- Select the 257 municipal rows with observation year 2024 from the official cp1252 semicolon CSV. Match questionnaire fields 3.1.1 (stock), 4.1.1 (acquisitions) and 8.1.1 (home loans). Source codes remain strings. Municipalities aggregate their reporting service; no individual-building duplication is introduced.
- Require all three measures and positive stock. Retain observed zeros; leave blanks missing. 234 complete cases remain, 23 excluded. All selected field counts and sums reconcile with the official spreadsheet summary; selected source cells agree between CSV and XLSX.
- Calculate loans/stock and acquisitions/stock using 31 December 2024 holdings. Compare each ratio with its complete-case median using strict inequalities. Repeat within source-population bands below 25,000, 25,000–50,000 inclusive and above 50,000. Quantile sensitivity uses inclusive interpolation for 75th-percentile loans and 25th-percentile acquisitions.
- This is secondary descriptive analysis of a bounded administrative network, without imputation, random-sample inference or causal modeling. An independent raw-CSV review reproduced the complete-case count, medians, threshold results and population-band overlap. The public script recalculates the same rules from the selected source inputs.
What the data cannot tell us
- Coverage is the 257 surveyed RNBP municipalities; paired results cover 234 complete records. Missingness is not assumed random. Overall survey response 100% does not mean complete item response. Lisboa has a missing monograph-loan field and is excluded from the paired calculations.
- Year-end stock is not average stock. Additions include purchases, offers, donations and exchanges; the ratio does not measure replacement, newly published books or net growth. Monograph home-loan counts are administrative transactions, not unique readers or titles. Renewal-counting conventions are not fully resolved by the supplied questionnaire.
- Median and quartile thresholds are analytic reference points, not adequacy standards. Population bands are descriptive groupings, not adjustment for staffing, branch networks or demand. Some municipal services under renovation remain in the source survey.
- The report inconsistently describes the source population in two passages. Supplied values are used only as size proxies. No independent population reconciliation, shortage diagnosis, funding effect, all-Portugal extrapolation or author-sales inference is claimed.
Original sources
- DGLAB — Estatística RNBP 2024, official CSV/XLSX dataset
DGLAB dataset CSV/XLSX, updated 14 April 2026: source fields and municipal records. Original official data carry CC BY 4.0; source hashes are recorded in the public provenance download.
Accessed October 30, 2026
- DGLAB — Relatório Estatístico RNBP 2024 and questionnaire
DGLAB Relatório Estatístico RNBP 2024,p4: municipal network scope and item nonresponse;p5: purchases, offers, donations and exchanges;p79: closed/relocating services may remain when reporting activity;pp84–85: questionnaire dates and matched monograph fields. Existing national totals and geographic summaries are credited prior analysis.
Accessed October 30, 2026
- dados.gov.pt — Dataset API metadata
The report introduction identifies provisional resident estimates for 31 December 2024. A later methods passage refers inconsistently to Censos 2024. This study retains the supplied population values solely for size-band sensitivity, rather than silently resolving the discrepancy.
Accessed October 30, 2026
- dados.gov.pt — Data reuse licenses
dados.gov.pt licensing explanation confirms CC BY 4.0 reuse with source attribution, including adaptation. Source PDF/design is not republished in this package.
Accessed October 30, 2026
Cite & reuse this study
Alisson Bento. Monograph lending and collection additions in Portugal’s RNBP municipalities, 2024. Original secondary analysis of DGLAB Estatística RNBP 2024; source CSV updated 14 April 2026, retrieved 30 October 2026. https://alissonbento.com/research/portugal-library-monograph-lending-and-additions-2024/
Direção-Geral do Livro, dos Arquivos e das Bibliotecas (DGLAB), Estatística RNBP 2024, CSV resource updated 14 April 2026, retrieved 30 October 2026. Source data: CC BY 4.0. Original secondary analysis and explanation: Alisson Bento. Changes: selected monograph fields, matched complete cases, stock-normalized ratios, population bands and threshold sensitivity. No endorsement by DGLAB is implied. Reuse adapted data under CC BY 4.0: https://creativecommons.org/licenses/by/4.0/. Retain source attribution, observation/access dates and indication of changes. This permission does not assert a license for source report design, logos or third-party graphics. The original reproduction script has its separate included permissive license.
Corrections or editorial questions