public function delete($table, $row, $identifier = [])
    {
        if (!array_key_exists($table, $this->rows)) {
            $this->loadTable($table);
        }

        if (empty($identifier)) {
            $identifier = $this->sanitiseRow($table, $row);
        }

        $rows = [];

        foreach ($this->rows[$table] as $key => $row) {
            if ($this->match($row, $identifier)) {
                $rows[] = $key;
            }
        }

        if (empty($rows)) {
            throw new \RuntimeException("No matching entry found in {$table}.csv");
        }

        foreach ($rows as $key) {
            unset($this->rows[$table][$key]);
        }
    }