PHPMem v2.0.1
Version
1.6.45
Uptime
16 days 5 hours 55 minutes 33 seconds
Memory
Total
512MB
Used
11,10MB (2.17%)
Free
500,90MB
Keys
Current
12 504
Total (since start)
39 318
Evictions
0
Reclaimed
758
Expired Unfetched
0
Evicted Unfetched
0
Connections
Current
14 / 1 024 max
Total
186 102
Rejected
0
llm:838f4899fffe2e1cfefef9aedde1bdf8833c8df3da9615888204c29c9711d203
Edit
# Data-quality issues in the Indian startup funding tables (Jan–May 2022)
The biggest problems are in the `Amount` column, which is free text and cannot be summed as it stands. The May table is also partly broken, and there are a few implausible values in `Founded`, `Stage` and `Amount`.
## 1. `Amount` has inconsistent formats and mixed units
`Amount` is a VARCHAR in every table. Across the 446 rows, the format profile (steps 1 and 6) is:
| Format | Rows |
|---|---|
| `$` with comma separators (e.g. `$1,000,000`) | 354 |
| "Undisclosed" text | 35 |
| Blank | 25 |
| No `$`, commas only (e.g. `1,000,000`) | 11 |
| `$` with mixed `.` and `,` separators (e.g. `$11.300,000`, `$728.100,000`) | 11 |
| Short decimals with no unit (e.g. `$165.5`, `$84.2`) | 5 |
| `$` with no separators (e.g. `$60000000`) | 2 |
| Bare number (`6400000`) | 1 |
| Other text | 2 |
- **Mixed separators:** Values like `$468.200,000` (Chargebee) and `$728.100,000` (Fivetran) look like millions written with a stray thousands/decimal mix. They cannot be parsed safely without assumptions.
- **Unitless decimals:** Livspace `$431.6`, MobiKwik `$165.5` and OkCredit `$84.2` look like millions, but nothing in the data says so. This is a mixed-unit problem: these sit beside full-dollar values like `$12,000,000`.
- **Lakh-style grouping:** One value is `$1,40,000`, which uses Indian digit grouping.
- **Misaligned text:** One `Amount` cell holds a person's name, "Vaibhav Anant".
- **Very large values:** Ten rows in one month's table have amounts between `$1,100,000,000` and `$5,000,000,000`, against a typical range of `$1M` to `$97.5M` in the clean `$` format. These could be outliers or unit errors and should be verified.
- **Suspicious value:** YouKraft shows `76,000,000` at Seed stage in April, which is unusually high for a seed round.
- **No currency column:** `$` is assumed throughout.
The share of `Amount` values that are in the clean `$` + commas format varies by month (step 7). Jan has 107 of 115, Feb 86 of 96, Mar 78 of 98, Apr 61 of 95 and May 20 of 42. April is the messiest of the four complete months, with 22 rows in other formats.
## 2. The May table is partly corrupted
- Of 42 rows, 19 have no company name, no location, and an unusable `Founded` value (step 7).
- 21 rows have a blank `Amount` and 21 have no `Stage`.
- The sample in step 3 shows a misaligned row: FirstCure Health has "Noida" in `Founded` and its sector in `Location`. The rest of the sample is entirely blank rows.
- Because of this, `Founded` is VARCHAR in May but BIGINT in the other four tables, so the tables cannot be unioned cleanly.
- The 18 "duplicate names" in May (step 2) are mostly these blank names. Jan and Apr each have one genuine duplicate company name.
## 3. `Founded` has impossible or implausible values
- April contains old, established companies: Rigi (1871), MTR Foods (1924), Philips Electronics (1929) and Hitachi (1959). Step 2 flags three rows as very old. Rigi's 1871 is almost certainly an error.
- These rows also have "Undisclosed" amounts, and Swiggy and Myntra appear the same way. They look like acquisitions or corporate events rather than startup funding rounds.
- The Jan, Feb and Mar `Founded` ranges (1991–2021, 1998–2021, 1994–2022) look sane.
## 4. `Stage` is inconsistent and often missing
- Missing `Stage` counts are 43 in Jan, 29 in Feb, 31 in Mar, 3 in Apr and 21 in May.
- Missing values are encoded in several ways: blank, "undisclosed" and "Unknown".
- Naming is inconsistent: "Series-D" appears alongside "Series D", and "Pre-series A" and "Pre-seed" are capitalised differently from the other stages.
- April's low missing count (3) is misleading, because most of its gaps are filled with the text "undisclosed" rather than left blank.
## 5. Other points
- "Undisclosed" amounts account for 35 rows across four months: Jan 6, Feb 7, Mar 12 and Apr 10. They are a text value, not a null, so a naive cast will fail or silently drop them.
- Each month is a separate table with no shared key, so duplicate companies across months cannot be checked by joining.
## Recommended cleaning
1. Normalise `Amount` to a numeric USD column. Treat "Undisclosed" and blanks as NULL, and resolve the decimal and mixed-separator values explicitly (likely millions).
2. Drop or repair the 19 blank rows in May, and realign the shifted rows.
3. Standardise `Stage` labels and map "undisclosed"/"Unknown" to NULL.
4. Review pre-1990 `Founded` values and the billion-dollar amounts manually.