All articles

KajoData / Career & business

How to analyse your own data: a first small project

I work through a small reading diary, from defining a row to calculating averages, evaluating a target and explaining missing observations.

Kajo RudzińskiPublished Updated 12 min read

An open book, hourglass, magnifying glass and observation tray with one empty position.

Your first analysis project can concern something familiar: reading time, commuting, a home library or one category of purchases. Familiarity makes it easier to notice when a number does not match reality. You do not have to build a large dashboard immediately. A question, a small table and an honestly explained answer are enough, provided you can check the result.

I suggest personal observations as a starting point because they supply a natural reason to ask questions. This is one learning route, rather than the only way to remain motivated. If you prefer to keep private information out of the project, choose public or synthetic data. I will use a completely invented reading diary and work from the measurement definition to a practical next step.

Choose an answerable question

“I want to organise my time better” is a reason for starting, but too broad a question for one table. I would narrow it to how much time I spend reading books and how regularly I read for at least twenty minutes a day. We now have an activity, unit and scope. We can identify the information needed to answer the question.

The twenty-minute threshold is an arbitrary exercise target, not a standard for being a good reader. Choose another threshold or omit it entirely if that suits your question. Before collecting anything, write down how you will use the result. Here, the purpose is to check whether a reading plan is being followed and select one organisational detail for further observation.

I would not also try to assess intelligence, learning quality or comprehension. Minutes do not measure those things. Someone can spend a long time with a text and remember little, while a short session can be valuable. A measure answers a particular question. Defining its boundary early reduces the temptation to tell a larger story than the evidence supports.

Decide what one row represents

In this exercise, one row represents one calendar day. If you read in the morning and evening, add both sessions to the same date. Do not create separate rows and later call the session count a day count. Choosing the observational unit makes later calculations more coherent. The same issue appears in professional work with orders, customers, events and device measurements.

I record the date, minutes and measurement status. An optional short note can explain an unusual situation. I would keep dates, durations and comments in separate columns, each with one meaning. This follows the structure described in Hadley Wickham’s Tidy Data: observations occupy rows and variables occupy columns. You do not need complicated software to benefit from a consistent structure.

Define reading before making the first entry. For this example, it means active book reading, excluding breaks, social media scrolling and audiobooks. This is a scope choice, not a judgement about different ways to enjoy books. If you want to include listening, define that from the beginning or record it as a separate category that you can inspect later.

Design a diary you can maintain

I would prepare all dates for the two weeks in advance. This keeps a day without an entry visible. Adding only the days when you remember to record something can conceal missing observations. Choose a simple recording moment, such as an evening diary check. You do not need an elaborate points-based application to try this first organisational exercise.

Zero means you know you did not read that day. Missing means you lack a reliable measurement. If you forgot the timer or cannot recall the duration, do not enter zero just to fill the cell. You could record an estimate, but mark it separately and decide whether the summary includes it. This example uses known values only.

I would avoid adding a dozen fields immediately. Genre, location, mood, time of day, device and page count may be interesting, but each increases the effort of maintaining the diary. Begin with what the question requires. If the first review reveals a specific need, add a field for the next period and record when the definition changed.

Separate the measure, target and decision

Minutes are a measure. Twenty minutes is the chosen target. A decision might involve changing the time reserved for reading or simplifying the recording process. Every number in a personal project does not need to become a KPI. If you use that term, explain the important objective it represents and the decision it informs. A prominent position in a report does not automatically make a metric important.

Watch for a change in observational unit between collection and evaluation. Two sessions of ten and fifteen minutes on the same day total twenty-five minutes. The day meets our threshold although neither individual session does. Filtering out short sessions before daily aggregation would remove the observation entirely. Establish the summary level first, then apply the condition. This small example illustrates an error that is harder to spot in a large database.

If you begin with an application export

Keep the original export and work on a copy. Check whether duration is expressed in minutes, seconds or clock time. Establish which date receives a session crossing midnight. A simple personal diary can use an explicitly chosen rule; an export requires understanding the application’s rule first. Time zones can also move an event between dates, affecting a daily summary.

After importing, compare several records with the source view and count all rows. Do not correct only the entries that look strange on a chart. Keep a short list of transformations, such as converting seconds to minutes or aggregating sessions into days. When importing another batch, check overlapping dates so that you do not count an earlier period again. At this scale, a straightforward repeatable check is sufficient.

Example: two weeks of synthetic observations

These values are invented for learning. Each week covers seven consecutive days, Monday to Sunday. The blank minutes field marked “missing” is deliberate. All numeric values, including zeros, are observations. In a spreadsheet, store minutes as numbers without appending the word “minutes” inside every cell.

Date Minutes Status
2026-10-05 20 measured
2026-10-06 0 measured
2026-10-07 30 measured
2026-10-08 missing
2026-10-09 25 measured
2026-10-10 40 measured
2026-10-11 15 measured
2026-10-12 30 measured
2026-10-13 25 measured
2026-10-14 0 measured
2026-10-15 35 measured
2026-10-16 20 measured
2026-10-17 45 measured
2026-10-18 25 measured

Check the table before calculating

First count the dates and check their uniqueness. There are fourteen rows, thirteen measurements and one missing value. The date sequence has no gaps because the unknown value has its own row. Next compare statuses with minutes. A measured status beside an empty value, or a missing status beside a number, needs clarification before it reaches a chart.

Minutes cannot be negative. A very large value also needs investigation: it could reflect seconds, a timer left running or a typo. I would not remove it automatically merely because it differs from other days. Check the source and record the reason for any correction. Keeping the original diary makes it possible to reconstruct the change later.

A duplicate date could represent an accidental pasted copy or two real sessions. In this daily table, those cases need different treatment: remove the accidental copy or deliberately aggregate the sessions. A duplicate-removal button cannot infer the author’s intention. I cover related decisions in my data cleaning guide.

Three compartments represent a positive value, a known zero and a missing measurement

Calculate a few measures and name their denominators

Recorded minutes total 130 in the first week and 180 in the second. Together, that is 310 minutes across thirteen known days. It is the sum of observed time, rather than a complete known total for fourteen days. Reading may have occurred on the missing Thursday. I would always display measurement coverage beside the result: thirteen of fourteen days.

The first week’s mean is 130 divided by 6, about 21.67 minutes per measured day. The second is 180 divided by 7, about 25.71. The overall mean is 310 divided by 13, about 23.85. Do not calculate it as the simple mean of the two weekly averages because the weeks contain different numbers of observations.

In Excel, AVERAGE ignores blank cells in a range but includes zeros. For a correctly prepared table, that corresponds to the mean of known measurements. You still need to name the result and show the observation count. The function cannot decide whether a blank represents an unknown measurement, an omitted day or an import error.

You can also count days with positive time: five in the first week and six in the second. That gives eleven days with known reading, two known zeros and one unknown. This is more accurate than asserting that reading occurred on exactly eleven of fourteen days. The unmeasured day cannot be assigned to either of the known categories.

Evaluate the target without hiding missing observations

The threshold of at least twenty minutes was reached on four of six measured days in the first week and six of seven in the second. Exactly twenty qualifies. Fifteen does not, although it represents real reading. Distinguishing reading at all from reaching a threshold matters because these measures answer different questions.

Across the period, there are ten confirmed target days, three confirmed days below target and one unknown. If you show a proportion, state whether its denominator is thirteen measurements or fourteen planned days. In the latter case, ten confirmed successes do not imply four confirmed failures. One day remains unresolved. I would begin by showing those three counts rather than a percentage alone.

Do not change the threshold after viewing results merely to make them look better. You can revise a poorly chosen target for the next period, recording when and why. Comparisons should use a common definition or clearly identify that they concern different targets. The same principle is useful when maintaining business KPIs.

Keep the calendar visible in the chart

For daily observations, I would choose a simple column chart or points in date order. The time axis should cover the entire period, including the missing Thursday. A zero has a known position at zero; a missing value needs an explicit absence of measurement. Label the unit as reading minutes and identify the synthetic data and period in the title or caption.

If you use a line, do not bridge the unknown observation as though its path were known. ONS guidance for line charts recommends leaving a gap where regular observations are missing. Avoid three-dimensional effects, secondary axes or decoration that makes comparison harder. The illustrations in this article are metaphors for the process; the numerical observations appear in the table.

Separate an observation from an explanation

We can say recorded time was greater in week two. We do not know the complete total for week one, so I would not treat the fifty-minute difference as an exact change in all reading time. The difference between means concerns measured days. If entries are more often missed on busy days, the missingness may affect the picture of regularity in a particular direction.

We also do not know why the values differ. The schedule, book, other responsibilities or measurement method may have changed. Two weeks of one person’s observations do not establish that a particular organisational method causes greater consistency. Record a hypothesis and plan further observation, but do not attach a causal explanation to the chart alone. A temporal association supplies a question to investigate.

A possible conclusion is: “Across thirteen measured days, recorded reading totalled 310 minutes. Ten days reached the chosen threshold. One missing value limits the weekly comparison. Next, I will try a more convenient recording process.” This gives a result, scope and next action. It does not require claiming that the project transformed a life or discovered a universal learning method.

Choose the next action and tool

The first improvement may concern collection rather than more advanced analysis. If recording is difficult, simplify it. If the definition is unclear, clarify it before the next week. If the question needs time of day, add that from an agreed date. I would change one important element at a time to keep the process understandable, without presenting this as a formal causal experiment.

A spreadsheet is sufficient for this small dataset. SQL becomes useful when tables need joining and repeated summaries. Python can help with multiple files or automated checks. Choose according to the task and capability you want to practise. My Python beginner’s guide shows a route into a small analysis while preserving the language fundamentals.

You do not have to publish a personal diary to show the project. Prepare a synthetic equivalent with definitions and checks. Real bank, health or location exports can contain much more information than the analysis needs. Before using an external tool, inspect the file’s scope. A few selected fields without identifiers or private notes are often sufficient for learning.

An exercise to finish the project

Reproduce the table summary manually and then in your chosen tool. Next replace the missing measurement with zero and record which results change. The total remains 310, but measurements increase to fourteen and the mean falls to about 22.14. This demonstrates why an unchanged total does not guarantee unchanged meaning. Restore the original missing value after the exercise.

For a second variation, remove every measurement while preserving the dates. The result should explicitly say there are no observations; do not report a zero mean. Finally, ask someone to read only your conclusion and identify its limitation. If they can distinguish a finding from a hypothesis, the project communicates more than the ability to draw a chart. That is a useful small, complete process to finish first.

Key takeaways

Do I need Python for a first project?

No. You can check a small table manually and in a spreadsheet. Choose a tool according to the question, data size and skill you want to practise.

Can I replace a missing measurement with zero?

Only when you actually know the value was zero. Missing knowledge and a known zero differ in meaning and affect averages and target assessment differently.

Can two weeks establish why a habit changed?

Observations alone do not establish causality. Describe results, missingness and possible explanations, then plan further measurement.

AI was used in an automated way while working on this article. If you want to learn how to do it too, check out this project.

Kajo Rudziński

Newsletter KajoData

Let’s keep in touch.

I write about data analysis, learning and changing careers. My newsletter and the sign-up form are in Polish. If that works for you, I’d be glad to see you there.