Fin Maverick
Foundations VocabularyAccounting & ReportingEconomics & MacroQuant Methods & ProgrammingBusiness & Company AnalysisCorporate Finance & ValuationBehavioural Finance
Banking & Market InfrastructureFixed Income & RatesDerivatives & Structured ProductsPublic EquitiesTransactions & DealsPortfolio ConstructionFunds & AMCs
Private Markets & AlternativesRisk, Treasury & ControlAI & Digital FinanceStochastic Calculus & PricingWealth & Personal FinanceIndian Markets & RegulationProfessional Practice
CalculatorComparison
Frameworks
Explore Bootcamps
Equity ResearchPortfolio ManagementMutual Fund MasteryFinancial LiteracyInvestment Banking Analyst
Private Equity AnalystHedge Funds AnalystBreaking Into VCBreaking Into QuantsAI For Finance
Financial Analyst ProgramRisk Management ProgramPrivate Wealth ManagementDebt Capital MarketsDerivatives Foundation
Explore Internships
Equity Research InternMutual Fund Intern
Portfolio Management InternFinancial Literacy Intern
Explore Micro Courses

Equity Research6

Writing an Investment ThesisBuilding a Discounted Cash FlowReading an Annual Report FastReading a Sector Before a CompanySpotting Quality of Earnings Red FlagsBuilding a Revenue Forecast From Drivers

Portfolio Management3

Rebalancing: When, Why and What It CostsStrategic and Tactical Asset AllocationMeasuring Risk in a Portfolio

Mutual Fund Mastery3

Comparing Funds Without Being FooledHow a NAV Is Struck and Which Day You GetReading a Fund Factsheet Properly

Derivatives Unlocked4

Hedging a Real ExposureThe Greeks, PracticallyFutures, the Basis and What Moves ItReading an Option Payoff

AI For Finance2

Retrieval and Grounding for FinanceDocument Extraction in Finance

Breaking Into Quants4

Backtesting a StrategyHypothesis TestingCleaning Financial DataRegression for Finance

Breaking Into VC3

Sizing a MarketReading a Term Sheet as a FounderHow a Venture Round Actually Works

Financial Analyst Program4

Common Size and Trend AnalysisReading a Cash Flow StatementRatio Analysis That Says SomethingBuilding a Working Capital Schedule

Risk Management Program2

Credit Exposure and How It Is ReducedValue at Risk and What It Hides

Investment Banking Analyst3

Precedent Transactions and Why They DifferReading a Term Sheet StructurallyBuilding a Comparable Companies Table

Private Wealth Management3

Tax Aware Portfolio DecisionsBuilding a Client Risk ProfileGoal Based Planning Arithmetic

Debt Capital Markets3

Analysing an Issuer's CreditDuration and What It Does Not Tell YouBond Pricing and Yield Mechanics

Private Equity Analyst2

Fund Waterfalls and CarryThe LBO in Structure

Hedge Funds Analyst2

Short Selling MechanicsLong Short Mechanics
Courses
Explore Career Roadmaps
Investment Banking AnalystEquity Research AnalystVC AnalystPrivate Equity AnalystHedge Funds Analyst
Quant AnalystAI For FinanceFinancial Analyst ProgramPrivate Wealth ManagementDebt Capital Markets
Risk Management ProgramDerivatives FoundationPortfolio ManagementMutual Fund Mastery
PartnershipsShowdown
Log inSign up
Quant Analyst · CoreTrack
1Quantitative Methods, Financial Data & Programming
iProbability
Probability in FinanceRandom VariableProbability DistributionsThe Normal DistributionNormal Distribution ProbabilityThe Lognormal DistributionRandomness vs Uncertainty
iiStatistics and Inference
Population and SampleMean, Median and ModePrecision and AccuracyVariable TypesVariance, Standard Deviation and…Dispersion MeasuresStatistical BiasEffect SizeHypothesis TestingThe Sampling DistributionSkewnessKurtosisCovarianceConfidence IntervalArithmetic Mean vs Geometric MeanStatistical Significance vs Economic…Confidence Interval vs Prediction IntervalHow to Summarise a…
iiiCorrelation and Regression
RegressionCorrelation and CausationOrdinary Least SquaresInteraction TermsRegression CoefficientsRegression vs ClassificationHow to Build a…Spurious CorrelationRegression, Correlation and FitResidualsMulticollinearityAutocorrelation and Partial Autocorrelation
ivTime Series
Time Series in FinanceSimple, Weighted and Exponential…Moving Average CalculatorPrice, Return and Level SeriesHow to Prepare Time-Series…LagFrequencySeasonalityTimestampsTrendStationarity and the Unit RootHeteroskedasticityLeadRolling WindowsDifferencing
vSimulation and Numerical Methods
SimulationMonte Carlo SimulationHow to Run a…Numerical MethodsIterationResampling and the BootstrapPseudorandom Numbers and the SeedConvergence and ToleranceNumerical Stability
viOptimisation
OptimisationLocal and Global OptimaConstraintsConvex OptimisationThe SolverLinear ProgrammingThe Objective FunctionConstraint ViolationThe Feasible SetLagrange MultipliersQuadratic Programming
viiModelling Practice
Linear, Logistic, Ridge and…Training, Validation and Test…The ModelModel ErrorDependent and Independent VariablesThe ROC Curve and AUCWhat a Model HoldsMSE, RMSE, MAE and MAPEPrecision and RecallCross Validation and RegularisationOverfitting and UnderfittingReturn Series MeasuresSimple, Compound and Log Return
viiiBacktesting and Research Integrity
BacktestingBacktest vs Live PerformanceHow to Document a…How to Prevent Backtest…Out-of-Sample TestingWalk-Forward AnalysisMultiple TestingP-HackingData Snooping
ixData Quality and Structure
Data QualityThe DatasetSelection and Survivorship BiasVersioned DatasetsData Structures in FinanceData CleaningMissing Data and Null ValuesStructured Data vs Unstructured DataMissing Data vs ZeroData Validation vs Data CleaningOutliersDuplicate Records
xProgramming for Finance
Data PipelinesAPIs for Financial DataAPI vs CSV FileDatabases in FinancePython for FinanceJoinsSQL for FinanceThe Analysis Workflow
xiQuantitative Research
Research DesignThe Data Generating ProcessReproducibilityPeer Review in Analytical WorkThe Research HypothesisRobustness and Sensitivity
2Stochastic Calculus & Derivative Pricing Theory
iProbability Foundations
The Probability SpaceRandom VectorsSigma-AlgebraExpectationSample Space and EventsDensity and Distribution FunctionsRisk-Neutral ProbabilityState Price Density vs…
iiStochastic Processes and Jumps
Properties of a Stochastic ProcessMartingaleBrownian Motion and Its PropertiesBrownian Motion vs Geometric…Stopping TimeThe Markov PropertyState VariablesTransition ProbabilityQuadratic VariationQuadratic Variation vs Ordinary…Submartingale and SupermartingaleMartingale RepresentationMarkov Process vs MartingaleOptional StoppingFiltrationJump ProcessesThe Poisson ProcessLevy ProcessesJump Diffusion
iiiIto Calculus
The Ito IntegralThe Ito Integral vs the Riemann IntegralInfinitesimals in Stochastic CalculusQuadratic CovariationIto's LemmaHow to Apply Ito's…The Infinitesimal GeneratorIto Calculus vs Ordinary Calculus
ivStochastic Differential Equations
Stochastic Differential EquationsStochastic Differential Equation vs…Drift and DiffusionStrong and Weak Solutions ComparedDiscretisationGeometric Brownian Motion
vPricing Theory and No-Arbitrage
No-ArbitrageGirsanov, Radon-Nikodym and Change…Physical and Risk-Neutral Measures…The Fundamental Theorems of…The Law of One PriceThe Pricing KernelDiscount Factors and Zero-Coupon PricesReplication vs HedgingComplete Market vs Incomplete MarketClearing Margin Architecture
viOption Pricing Theory
European and American OptionsMonte Carlo European OptionThe Black-Scholes PDEBlack Scholes and the GreeksThe Payoff FunctionThe Binomial ModelBinomial Option PricingDelta Hedging in TheoryBoundary, Initial and Terminal ConditionsThe Exercise BoundaryHow to Check Put-Call…
viiVolatility Models
Constant, Local and Stochastic…Vasicek Model vs CIR ModelThe Heston ModelThe SABR ModelThe Volatility ProcessImplied VolatilityVolatility Smile vs Skew vs Surface
viiiInterest Rate Models
Interest-Rate DerivativesMean ReversionThe Zero-Coupon BondThe Ornstein-Uhlenbeck ProcessThe Discount CurveZero RatesShort-Rate Model vs Market Model
ixNumerical Pricing
Closed Form and Numerical…Monte Carlo PricingEuler and Milstein Schemes ComparedTree MethodsFinite Difference MethodsNumerical Error and StabilityVariance Reduction
xCalibration and Model Risk
Model OverrideMarket Price and Model PriceCalibrationHow to Document a Pricing ModelThe Educational Illustration LabelMarket ConventionsModel Uncertainty and LimitationsBacktesting a Pricing ModelIdentifiabilityCalibrated ParametersThe Calibration Loss Function

Missing Data and Null Values: Absence That Is Not Zero, and Why It Is Missing Decides the Fix

A value is missing when the record has no usable figure where one should be, and a null value is the marker a system writes there. In the Neelbagh stall record, invented, absence comes three ways: an empty cell, a row that is not there, and Rs 99,999/-, the office code that looks exactly like money. Only the first of the three is visible.

Two operations settle all of it: counting a set of things, and dividing one figure by another. No curve fitted to the cells that are present can recover the cell that is absent, and no measure of spread can say why it went. The limit is not modesty. The limit is the point. A gap in a record is a question about where the record came from, and no amount of arithmetic on the cells that are present can answer a question about the one that is not. The reason is found by asking somebody who keeps the record, and once the asking is done the treatment follows from the answer.

Every figure below was worked out from 32 rows of the Neelbagh stall record that can be counted directly. Its three absences are three separate cases, so each one can be looked at on its own. A single stall monthOne stall in one month, and a single row of this record stands for one of them. Eight stalls across four months give thirty two, whether or not the file happens to hold thirty two rows. is the unit throughout, and every rupee figure is an average across some number of those.

What does missing mean, and what is a Null Value?

A value is missing when the record should be carrying a usable figure in a particular place and it is not. The definition is doing a great deal of work. There is a place. Something was expected in that place. And what turned up there cannot be used. Take away any one of those three and what remains is not a missing value; it is something else, and probably something worse.

Now the marker. When a system is asked to store nothing in a place that expects something, it does not leave the machine's memory blank and hope. The system writes a specific marker meaning no usable figure here. The marker is a Null Value. The useful thing about a null value is not what it is but what it is not: it is not a number, it is not text, and it takes no part in arithmetic. A null added to Rs 42,000/- does not give Rs 42,000/-. The answer is either a null again or a complaint, depending on the tool, and both are the tool behaving correctly. Nothing plus an unknown is an unknown.

Consider a shoebox of electricity bills for the year. A month where no bill ever arrived is a missing value. A month where the bill arrived and read zero because the supply was cut off is not missing at all; it is a figure, and the figure is nothing. And a month where somebody put a folded blank sheet in the box to hold the place is the third thing again: there is paper in the slot, so a quick count of sheets says the year is complete, and only opening it says otherwise. Records do all three, and only the first is what most people mean by missing.

The third case, the blank sheet put in to hold the place, has an exact counterpart in a computer record. An empty-looking cell and a null are not always the same thing. A cell holding a single space character looks identical on screen to a cell holding nothing, and it is neither a null nor a figure. A space is text, one character long, and it will behave like whatever the tool guesses it is. The difference between an absence a system has recorded properly and an absence that merely looks like one is the difference between a gap that can be counted and a gap that turns up by accident in six months.

THREE KINDS OF ABSENCE, AND ONLY THE FIRST ONE IS VISIBLE The Neelbagh stall record, invented. 32 stall months expected, 31 rows handed over. WHERE IT SITS WHAT IS VISIBLE WHICH COUNT FINDS IT WHAT THE FIX IS AN EMPTY CELL NB-05 Bansi Flour, month 2 It is visible. The row is there and the takings cell has nothing in it. Takings cells carrying a number: 31, against 32 rows in the file. Go and fetch it. The stall filed a paper return reading Rs 52,000/-. A ROW THAT IS NOT THERE NB-04 Peetal Utensils, month 3 Nothing is visible at all. There is no cell for the gap to sit in. Stall months the eight by four grid expects: 32, against 31 rows present. Say the record is incomplete, and say by how much. There is no cell to correct. A CODE THAT LOOKS LIKE MONEY NB-02 Chandan Tea, month 4 The cell shows Rs 99,999/-, which reads as an ordinary large month. None of them. It is a whole number sitting in a column of whole numbers, so every count comes out clean. Set the cell aside. The stall filed nothing, so there is no figure anywhere to fetch and nothing to correct.
An empty cell, a row that is not there and an office code are three kinds of absence, and only the first of them is visible in the record itself.
Try it out

What is a null value?

What is the friendly kind of absence, and why did counting find it at once?

NB-05 Bansi Flour trades flour and pulses from a pitch near the north door, and it filed returns for all four months. Its row for month 2 is sitting in the file where it should be, carrying the stall code, the stall name, the licence number, the category, the month number, the pitch area and the day the return reached the office. Everything is there except the one thing the office actually wanted. The takings cell is empty.

The reason is entirely ordinary and has nothing to do with the stall. Bansi Flour traded that month and filed a paper returnThe slip a trader fills in by hand and carries to the office each month. The slip is the original record, and what ends up in the file is somebody's typed copy of it. The copying is where a figure can quietly stop existing. reading Rs 52,000/-. The slip is in a drawer in the market office. Nobody typed it in. A broken link is the whole story, and it is the story behind an enormous share of the empty cells anybody will ever meet: the figure exists, somebody has it, and the chain from the paper to the file broke at one link.

An empty cell is the friendly kind of absence, and it is friendly for one structural reason: the row is there, so the gap has a place to sit. A place to sit means a place to be counted. A count of the rows in the file gives 32. A count of the takings cells carrying a number gives 31. One gap of one, found in two counts by somebody who never read a single figure, and it points at exactly one cell. Nothing clever happened. Two counts of the same file disagreed by one, and the disagreement is the fault announcing itself.

THE FIGURE EXISTS. IT JUST NEVER REACHED THE FILE. NB-05 Bansi Flour, all four months, as the market office handed them over. stall_id stall_name month takings_rupees NB-05 Bansi Flour 1 55000 NB-05 Bansi Flour 2 nothing at all NB-05 Bansi Flour 3 54000 NB-05 Bansi Flour 4 53000 The row is present and complete in every column but one. That is what makes the gap countable. THE PAPER RETURN, MONTH 2 In a drawer in the market office Stall: NB-05 Bansi Flour Month: 2 Takings declared: Rs 52,000/- Signed by the trader. Never typed in. the fix runs this way, from the drawer to the cell 32 rows in the file, 31 takings cells carrying a number. The gap of one points at exactly this cell, and nobody had to read a figure to find it.
The empty cell at NB-05 Bansi Flour month 2 hides a figure that exists on paper, so the correct treatment is to fetch Rs 52,000/- rather than to decide anything.
Breaking Into Quants Bootcamp — Fin Maverick

How does a row that is not there hide from every count of the file?

Two pitches along sits NB-04 Peetal Utensils, a seller of steel and brass vessels. Its month 3 row is not empty. There is no month 3 row for NB-04 at all. Where NB-04's rows sit in the file, month 1, month 2 and month 4 run one under the other with nothing between them. There is no row for a cell to belong to, so there is no cell with nothing in it.

Counting what is present can only ever report on things that are present, so an absence at row level is invisible to every count that can be made of what is in the file. Count the rows: 31 in the eight stalls, and 31 is a perfectly sensible number. Count the takings cells with a figure in them: also fine. Count the distinct stall codes: eight, exactly right. Every one of those counts is a question about the file, so every one of them comes back clean. The fault is not in the file at all. The fault is in the difference between the file and the world.

The only way to see it is to know how many rows were expected before anything was opened. Eight stalls, four months, so eight times four is 32 stall months. The file holds 31. Gap of one, and now there is somewhere to go looking. Everyday version: a folder of twelve electricity bills is obviously short only to somebody who knew there were meant to be twelve. Eleven bills in a folder look exactly like eleven bills in a folder. The expectation has to come from somewhere outside the record, and if nobody ever wrote it down, the absence is not hard to find, it is impossible to find.

THERE IS NO CELL FOR THIS ABSENCE TO SIT IN NB-04 Peetal Utensils, as it appears in the Neelbagh stall record. Invented. stall_id stall_name month takings_rupees NB-04 Peetal Utensils 1 26000 NB-04 Peetal Utensils 2 0 NO ROW HERE. MONTH 3 SIMPLY IS NOT IN THE FILE. NB-04 Peetal Utensils 4 28000 In the file the month 4 row follows the month 2 row directly. The dashed band above is drawn here. It is not in the record. Month 2 reads Rs 0/-, which is a real figure and not an absence at all. THE EIGHT BY FOUR GRID: 32 STALL MONTHS month 1 month 2 month 3 month 4 NB-01 NB-02 NB-03 NB-04 NB-05 NB-06 NB-07 NB-08 One square of the 32 is empty, and it is empty only because the grid was drawn first. Every count of what is in the file returns a clean answer. Only 32 expected against 31 present says anything is wrong, and 32 came from outside the file.
NB-04 Peetal Utensils has no month 3 row at all, so there is no cell for the absence to sit in and no count of the file can reach it.
Try it out

NB-04 Peetal Utensils has no month 3 row. Which count finds that, and why could no other count have found it?

What happens when an absence is written as a number that looks like money?

The third absence is at NB-02 Chandan Tea, and it is the one that will cost somebody their afternoon. Chandan Tea filed nothing at all for month 4. Rather than leave the cell empty, the clerk did what the office has always done and typed 99999, the house code for no return received. The cell now reads Rs 99,999/-.

Look at what that code survives. The code is a whole number, so the column's type promise holds. The code is present, so the count of takings cells carrying a number comes back at the full 31 and finds nothing. The code sorts, and it sorts into a place that raises no eyebrow: below the genuinely large months and above every ordinary one. A good month would sit in exactly that place. It adds. It averages. In the end it goes into a total that somebody prints. In the takings column Rs 99,999/- is a number, and numbers are what that column holds, so every check that reads only the takings column treats it as money.

Nor will a size rule help, and this is worth working through rather than asserting. Suppose the rule flags any figure more than five times the same stall's smallest other month. Chandan Tea's other three months are Rs 31,000/-, Rs 33,000/- and Rs 32,000/-, so the smallest is Rs 31,000/- and five times that is Rs 1,55,000/-. Rs 99,999/- sails under it with room to spare. Pulling the rule down until it does catch the code sets a cutoff somewhere under Rs 99,999/-. Every genuinely large month in the record is flagged along with it, and the result is a list rather than an answer. The only thing on the premises that knows 99999 is a code is the written column listThe short document kept beside a record that spells out, field by field, the unit a value is carried in and the meaning of anything unusual sitting there. The full contents of such a document are covered separately., where somebody wrote the sentence down.

IT SORTS. IT ADDS. IT AVERAGES. NOTHING IN THE COLUMN MARKS IT. The takings column of the Neelbagh stall record, invented, sorted from largest down. takings_rupees, sorted stall and month Rs 4,80,000/- NB-07, month 3 Rs 4,80,000/- NB-08, month 3 Rs 99,999/- NB-02, month 4 Rs 55,000/- NB-05, month 1 Rs 54,000/- NB-05, month 3 Rs 53,000/- NB-05, month 4 Rs 47,000/- NB-08, month 4 and on down the column to Rs 0/- The red outline is drawn here. In the file the row looks like every other row. AGAINST NB-02 CHANDAN TEA'S OWN MONTHS size rule at five times the smallest other month: Rs 1,55,000/- 31,000 month 1 33,000 month 2 32,000 month 3 99,999 month 4 The code stands clear of its neighbours and still nowhere near the rule. It is not large enough to catch. THE ONLY THING ON THE PREMISES THAT KNOWS From the written column list beside the record: takings_rupees, a whole number of rupees. The value 99999 is the office code for no return received, and it is not an amount of money.
Rs 99,999/- passes every count, sorts into a sensible place and averages happily, and only the written column list identifies it as a code.
Try it out

Rs 99,999/- sits among NB-02 Chandan Tea's other months of Rs 31,000/-, Rs 33,000/- and Rs 32,000/-. Would a rule flagging anything more than five times a stall's smallest other month catch it?

Why does the reason a value is missing decide the fix?

Three absences, and one sentence covers all three. Nothing in the record says which of the three any one of them is, and the correct treatment of each is different from the correct treatment of the other two. Not slightly different. Different in kind.

NB-05 Bansi Flour traded and the figure exists on a slip in a drawer. The fix is to go and get it. The record was simply incomplete and now it is not, so there is no judgement to make, no convention to adopt and nothing to explain to anybody. Fetching the figure is the best outcome available, and it is the one to look for first, every time, before anything cleverer is reached for.

NB-04 Peetal Utensils traded in month 3 and nobody ever wrote the row. There is no slip. The fix is not to invent a figure; it is to state plainly that the record covers 31 of the 32 stall months it should cover, and to carry that sentence alongside every number published from it. An incomplete record that says so is a usable record. An incomplete record that does not say so is a trap with a total at the bottom.

NB-02 Chandan Tea filed nothing at all, and that is a different situation again. The month's takings were never declared, so there is no figure in a drawer and there never was one. The fix is to set the cell aside. Setting a cell aside means taking it out of the count entirely rather than replacing it with anything. And this one has an extra step ahead of it: setting the cell aside requires knowing that Rs 99,999/- is not money, and that is known only because somebody wrote it down in the column list.

THE REASON PICKS THE BRANCH. THE DATA CANNOT. Three absences in the Neelbagh stall record, invented, and three different correct treatments. A PLACE IN THE RECORD WITH NO USABLE FIGURE The stall traded, and the figure exists on a paper return. NB-05 Bansi Flour, month 2 FETCH IT. The slip reads Rs 52,000/-. The stall traded, and nobody ever wrote the row. NB-04 Peetal Utensils, month 3 SAY IT IS INCOMPLETE, and say by how much: 31 of 32. The stall filed nothing at all, so no figure was ever declared. NB-02 Chandan Tea, month 4 SET THE CELL ASIDE. There is nothing anywhere to fetch. Nothing in the takings column says which branch applies. The reason is found by asking the market office, and only then.
The stall traded and the figure exists, the stall traded and nobody wrote the row, or the stall filed nothing: three reasons and three different fixes.
Try it out

Two places in this record hold no usable figure, for opposite reasons. What is done differently at each?

AI For Finance Bootcamp — Fin Maverick

What do the three absences look like side by side?

Three places, three appearances, three reasons, three fixes. Down the appearance column, a person looking only at the file would call the first one a problem, would never see the second, and would call the third a good month for a tea stall.

WhereWhat the file showsThe reason, from the officeThe treatment
NB-05 Bansi Flour, month 2row present, takings cell emptyTraded. Filed a paper return reading Rs 52,000/-. Nobody typed it in.Fetch the figure from the slip.
NB-04 Peetal Utensils, month 3no row at allTraded. The row was never written and no slip is filed anywhere.State that the record covers 31 of 32 stall months.
NB-02 Chandan Tea, month 499999Filed nothing. The clerk typed the office code for no return received.Set the cell aside. Nothing exists to fetch.

One more cell in the record looks like an absence and is not. NB-04's month 2 cell reads Rs 0/-, and a zero is not an absence of any kind. The pitch was shut all month while it was re roofed, the stall filed a return saying so, and Rs 0/- is the figure. A real zero is a measurement and belongs in every count; an absence is not a measurement and belongs in none of them. The difference between a zero and an absence is covered separately.

Why does one unchanged total give four different published figures?

Finding an absence and explaining it is one half of the work. The consequence is the other half, and it is larger than most people expect. Adding up the takings cells in the cleaned record that carry a usable number gives Rs 15,71,700/-. Rs 15,71,700/- is the numeratorThe figure on top of a division, the total being shared out., and it does not move by a single rupee in anything that follows. The figure that moves is the denominatorThe figure underneath a division, the count that total is shared across. Change it and the answer changes, even though not one rupee of the total has shifted., and there are four honest ways to choose it. Each gives a different headline figureThe one number that gets quoted out of a whole record, usually in a sentence with no room for the working behind it., and all four are correct arithmetic.

Try it out

The denominator moves from 29 to 32 with the total held fixed at Rs 15,71,700/-. How far apart are the highest and lowest answers likely to be?

The four choices, and what each one is counting. Over 29 counts the takings cells that carry a usable number, and 29 is the named convention used throughout: the sum of the takings cells that carry a usable number, divided by how many carry one. Over 30 counts every row the cleaned record actually holds, once the repeated keyA key is the combination of fields that should single out exactly one row. Repeated means two rows answer to the same combination, so the record stops saying which of them is the row. How to resolve one is covered separately. at NB-03 has been resolved and the no return code has been set aside, so NB-05's blank month is back in as a row with nothing in it. Over 31 adds NB-04's month 3, the row that is not there. Over 32 adds NB-02's month 4 as well, and divides by every stall month the eight by four grid expects.

Divided byWhat that count isThe figureExact or rounded
29Takings cells carrying a usable number. The named convention.Rs 54,196.55/-A rounded display of a figure that does not end
30Every row the cleaned record holdsRs 52,390/-Exact
31Those rows plus the row that is not thereRs 50,700/-Exact
32Every stall month the eight by four grid expectsRs 49,115.62/-A rounded display, and it lands on half a paisa
End to end, on one unchanged total of Rs 15,71,700/-Rs 5,080.93/-The distance between the highest and the lowest
ONE TOTAL, FOUR DENOMINATORS, FOUR PUBLISHED FIGURES Numerator held at Rs 15,71,700/- throughout. Only the count underneath changes. over 29 Rs 54,196.55/- usable takings figures, the named convention over 30 Rs 52,390/- every row the cleaned record holds over 31 Rs 50,700/- plus the row that is not there over 32 Rs 49,115.62/- every stall month the grid expects Rs 45,000/- Rs 47,500/- Rs 50,000/- Rs 52,500/- Rs 55,000/- The scale starts at Rs 45,000/- and not at zero, so the differences can be seen. Read the printed figures, not the bar lengths.
The same Rs 15,71,700/- gives Rs 54,196.55/-, Rs 52,390/-, Rs 50,700/- and Rs 49,115.62/- over 29, 30, 31 and 32.
Rs 5,080.93/- OF DISTANCE, AND NOT ONE RUPEE OF DATA CHANGED Every mark below is arithmetically correct. Only one of them answers the question that was asked. Rs 5,080.93/- end to end Rs 49,115.62/- over 32 Rs 50,700/- over 31 Rs 52,390/- over 30 Rs 54,196.55/- over 29 Rs 45,000/- Rs 55,000/- OVER 29 Answers: what did a stall month with a declared figure actually bring in? Silent about the months nobody declared. OVER 30 Answers: what does an average row of this cleaned record hold? Treats the blank as a row worth nothing. OVER 31 Answers: and what if the month nobody recorded is counted in as well? Treats an unwritten row as worth nothing. OVER 32 Answers: what did the market bring in across every month it expected? Treats all three absences as worth nothing.
The four denominators put Rs 5,080.93/- between the highest and lowest answer, and every one of them is correct arithmetic.
Play with it

Move the count underneath and watch three cells join in.

One control, and it moves one thing: the count divided by, from 29 up to 32. The total above the line is held at Rs 15,71,700/- and does not move by a rupee. Two things redraw. The grid of 32 stall months fills in, and the three cells that join it as the count rises are exactly the three absences already met, in the order they enter. And the bar underneath slides along a scale that starts at Rs 48,000/-, with all four possible answers marked on it, so the published figure can be watched walking down past marks it could just as honestly have stopped at. The control starts at 29, and 29 gives the Rs 54,196.55/- of the named convention.

2929, the usable takings figures32
WHAT THE COUNT UNDERNEATH IS ACTUALLY COUNTING The Neelbagh stall record, invented. 8 stalls, 4 months, 32 stall months in the grid. month 1 month 2 month 3 month 4 WHAT THE COLOURS MEAN a usable takings figure an absence now being counted an absence left out of the count The three absences join the count in this order, moving the control to the right: 30 NB-05 month 2, the blank 31 NB-04 month 3, no row 32 NB-02 month 4, the code THE FIGURE THIS COUNT PUBLISHES Rs 49,115.62/- over 32 Rs 50,700/- over 31 Rs 52,390/- over 30 Rs 54,196.55/- over 29 Rs 54,196.55/- The scale starts at Rs 48,000/- and not at zero, so the four marks can be told apart. Read the printed figures rather than the bar. Total above the line, held fixed: Rs 15,71,700/- Distance from the highest answer to the lowest: Rs 5,080.93/-
Dividing by
29
What that counts
usable takings figures
The figure
Rs 54,196.55/-
Exact or rounded
a rounded display
Educational illustration. The total above the line is held at Rs 15,71,700/- throughout and only the count underneath moves. Two of the four answers are exact and two are rounded displays. Money is held in whole paise inside this panel and cut to the paisa once on the way to the screen, and that is why Rs 49,115.62/- appears at 32.
Try it out

Somebody quotes Rs 50,700/- as the average takings for each stall month in this record. Is it wrong?

Risk Management Program Bootcamp — Fin Maverick Building a Revenue Forecast From Drivers — free micro-course from Fin Maverick

Why does one of those four answers need a note about rounding?

Three of the four figures can be printed and forgotten. Both 30 and 31 divide Rs 15,71,700/- cleanly, so Rs 52,390/- and Rs 50,700/- come out exact, with nothing after the decimal point at all. Rs 54,196.55/- does not come out exact, but it is not near any awkward boundary either, so every reasonable tool prints the same two decimal places.

Rs 15,71,700/- divided by 32 is the one to watch. Work it right out and it comes to 49115.625 rupees exactly: not a figure that runs on forever, but one that stops precisely half a paisaOne hundredth of a rupee. Money is usually carried to two of them, so the second paisa is the last place two honest calculations can visibly disagree. past the last place anybody prints. Half a paisa past the last printed place is the worst possible place for a number to stop. A tool that cuts at the paisa prints Rs 49,115.62/-, and a tool that rounds a half upward prints the same figure one paisa more, and both of them are behaving correctly.

The honest course is to print Rs 49,115.62/- and say in the same breath that it is a rounded display. Saying so is not fussiness. Two figures that agree everywhere except the last paisa is exactly how an approximation gets quoted as an identity: somebody sees them side by side, decides the difference is too small to matter, and writes down whichever one is nearer to hand. The difference never mattered. The rounding itself is what mattered, and once the rounding stops being said, nobody downstream can tell a rounded display from an exact one.

THE FIGURE STOPS EXACTLY HALFWAY BETWEEN TWO PRINTABLE PAISE Rs 15,71,700/- divided by 32, worked right out and not rounded on the way. Rs 15,71,700/- divided by 32 is 49115.62 5 rupees, exactly. this digit is half a paisa, and there is nothing after it to break the tie A TOOL THAT CUTS AT THE PAISA PRINTS Rs 49,115.62/- Correct behaviour, under a stated rule. A TOOL THAT ROUNDS A HALF UPWARD PRINTS the same figure, one paisa more Also correct behaviour, under a different stated rule. WHAT THIS GUIDE DOES Prints Rs 49,115.62/- and says in the same sentence that it is a rounded display, so nobody downstream mistakes it for an exact figure.
Rs 15,71,700/- over 32 sits exactly on half a paisa, so Rs 49,115.62/- is printed with a note that it is a rounded display.
Try it out

Why is Rs 49,115.62/- printed with a note attached to it?

The market office fills every gap it can find, and the record starts telling lies

The office is asked for a completeness summary, so a clerk goes through the file and closes every hole. The paper return reading Rs 52,000/- sits in a drawer eleven feet away, and NB-05 Bansi Flour's empty takings cell gets a zero written into it. NB-04 Peetal Utensils traded in month 3, and month 3 gets a brand new row created and set to zero. Rs 99,999/- at NB-02 Chandan Tea looks like money, and the clerk was closing holes rather than opening questions, so the code is left exactly where it is.

The file now has 32 rows, no empty cells, and every count comes back clean. The headline lands at Rs 49,115.62/- against the Rs 54,196.55/- the named convention gives. A gap that size is the sort somebody eventually notices and cannot explain. But the arithmetic is the small part of the damage. The record has stopped admitting three absences and started asserting two facts that are false: two stalls took nothing in months when they were trading. Meanwhile a code that is not money sits in the total untouched. An absence is a hole and everybody treats a hole carefully. A zero is a measurement and nobody questions it again.

One habit prevents all of it, and it costs one line of writing: a gap is never filled before the reason for it has been written down. The writing comes first because it is the only step that forces the reason to be found, and once it is found, the treatment picks itself.

FILLING A GAP DOES NOT CLOSE IT. IT CHANGES WHAT THE RECORD CLAIMS. THE RECORD AS IT STANDS, ADMITTING THREE ABSENCES NB-05 month 2 takings cell empty says: this figure is not held NB-04 month 3 no row at all says: this record covers 31 of 32 NB-02 month 4 99999, a code says: nothing was filed for this month Headline, under the named convention Rs 54,196.55/- over 29 THE OFFICE COMPLETENESS SUMMARY, EVERY HOLE CLOSED NB-05 month 2 0 written in now asserts: this stall took nothing. False. NB-04 month 3 new row, 0 now asserts: this stall took nothing. False. NB-02 month 4 99999, untouched a code still sitting in the total as money Headline, after every hole was closed Rs 49,115.62/- over 32 A gap is never filled before the reason for it has been written down. A hole is treated carefully by everybody. A zero is never questioned again.
Writing zero into every gap moves the headline from Rs 54,196.55/- to Rs 49,115.62/- and turns three admitted absences into two false claims.
Try it out

The office writes zero into every gap and leaves Rs 99,999/- alone. What has the record started doing that it was not doing before?

One of four answers needs a rounding note. See what missing data moves.

What gets written down about every absence?

All three cases collapse into one small habit that a lender's credit analyst, an office clerk and a person sorting out a shop's books all use in the same shape: an absence register. Three columns, no more, and the third one is the whole point.

The absence register, and the one column people leave empty

Column one, where the absence is: the row and the field, precisely enough that somebody else can find it. Column two, which of the three kinds it is: an empty cell, a row that is not there, or a value that looks like a figure and stands for an absence. Column three, the reason, in the words of whoever keeps the record.

A register with the third column empty is a list of holes; a register with it filled is a decision somebody else can check. The third column is the difference between handing on a problem and handing on a finished job. Anybody can produce the first two columns from the file itself in about ten minutes. The third takes a phone call to the market office, and it is the only one that decides anything.

Watch what the third column does to how a figure travels. Publish Rs 54,196.55/- with an absence register attached and a reader downstream can see at a glance that one figure is missing from a drawer, one stall month was never written down, and one month was never declared at all, and can decide for their own purpose whether the figure suits them. Publish Rs 54,196.55/- on its own and they cannot, so they will either use it for something it does not answer or ignore it entirely. A month nobody recorded and a month nobody declared say different things about how the market is run, so a lender assessing whether a market's traders can carry a loan needs the second and third rows far more than the first.

THE ABSENCE REGISTER, WITH THE COLUMN THAT DECIDES EVERYTHING Three absences in the Neelbagh stall record, invented, each one entered once. WHERE THE ABSENCE IS WHICH KIND IT IS THE REASON, IN THE OFFICE'S OWN WORDS NB-05 Bansi Flour, month 2, takings_rupees An empty cell. The row is present. Traded. Filed a paper return reading Rs 52,000/-. The slip is in the office. Nobody typed it in. NB-04 Peetal Utensils, month 3, whole row A row that is not there. No cell exists. Traded. The row was never written and no slip was filed. The record covers 31 of 32 stall months. NB-02 Chandan Tea, month 4, takings_rupees A value standing for an absence: 99999. Filed nothing. The clerk typed the office code for no return received. No figure exists to fetch. Cover the third column and this becomes a list of holes. Uncover it and it becomes a set of decisions that somebody else can check.
An absence register records where the gap is, which of the three kinds it is, and the reason in the words of whoever keeps the record.
The specific confusion between an empty cell and a genuine zero is covered separately, as is the cleaning run as a whole. Rows deleted from a record before it was ever handed over are a different fault again and are covered separately. Estimating a missing figure from the figures sitting around it, and judging whether any value is too large or too small, both need other tools and are covered separately.

Where did every figure above come from?

No figure above was taken from a maintained record, so there is no as of date to give. Every rupee figure was recomputed from the invented Neelbagh stall record by the checking script that sits beside these notes.

SourceDocumentSite
The checking script for this set of notesBuilds the Neelbagh stall record row by row and asserts every figure printed above, including the four denominators and the half paisaNone. It sits beside these notes and is not published
The written column list for the Neelbagh stall recordThe eight column description recording what every field holds, including the sentence that 99999 is the office code for no return receivedNone. It is part of the same invented record

The Neelbagh market, the Neelbagh stall record, the market office, the day book and the ten stalls NB-01 Kadamba Idli, NB-02 Chandan Tea, NB-03 Harit Greens, NB-04 Peetal Utensils, NB-05 Bansi Flour, NB-06 Ilaka Fruit, NB-07 Sundari Chaat, NB-08 Peeli Mithai, NB-09 Roshni Juice and NB-10 Amber Rolls are invented.
Educational material. Not advice on any investment, tax, budget or market position.

← PreviousNext →
Fin Maverick Micro CoursesExplore Micro Courses
Fin Maverick BootcampsExplore Bootcamps
Fin Maverick

Finance education that ends in a job, not a certificate that gathers dust. Built for young India.

LEARN
CalculatorsFrameworksComparisonsCareersShowdown
RESOURCES
All CoursesMicro CoursesBootcampsInternships
COMPANY
AboutJob openingPartnership
LEGAL
Privacy PolicyTerms & ConditionsContent LicenseReturn & Refund Policy
© 2026 FIN MAVERICK / BUILT FOR INDIA.DO FINANCE, DO NOT JUST READ ABOUT IT.