IMO numbers is better for most things that are within its scope, whereas excel is more clunky for simple stuff but can go a lot further into the realm where R/matlab/python libs are more suitable.
Documents based on tables of data are the main function of numbers, but a horrible bodge in excel.
That's fair but at least I have found it possible to do those horrible bodges in Excel to create spreadsheets that do pretty much look as good as something created in Numbers by having lots of very narrow columns and merging them as necessary to create different sized tables, text areas, graphics and blank areas in between all on the same sheet/tab. I agree though that it is a LOT more effort to do nice layouts in Excel and heaven help you if you want to change any part of a layout bodged up that way because that involves a lot of work unmerging, moving and then re-merging columns.
The problem though is that going the other way to replicate at least some missing Excel functionality in Numbers involves what in my personal opinion are even more horrible bodges.
I suppose beauty, and hence ugliness, is in the eye of the beholder so others might disagree about which bodges are more hideous but for instance when planning my imminent(*) move from Windows to Mac a few weeks ago I was having a look at Numbers and tried to work out if there was any way I could replicate a fairly straightforward VBA function I have in some of my Excel spreadsheets that calculates a UK tax liability - UKTax(<earnings>,<interest>, <dividends>, <gains>) that returns the total tax liability across all of those income sources in a given tax year).
According to Gemini it's impossible to do within the character limitations for an individual cell formula. It is possible to do by splitting the calculation across multiple cells and I did implement that out of interest and it works but unfortunately the intermediate cells are effectively statically scoped variables used by the "function" so you have to have duplicate copies of all of the cells, one for every cell that wants to use that "function" and those calling cells can't of course pass any parameters to the "function" so you have to hard-code the inputs for each invocation into the "function" cells themselves. Doable but really so messy as to be unworkable in my opinion.
I don't actually think that Apple needs to do that much to give numbers a very significant boost in functionality, probably enough of a boost for me to be able to move away from Excel and deny Microsoft my MS365 subscription, but sadly so far I've not seen any encouraging signs that Apple is likely to do much with Numbers. In fact some of the stuff I've seen is deeply disappointing, for instance introducing Lambda functions recently but not named ones.
Oh well, I might yet get a pleasant surprise and at least Excel is available on MacOS. I really would love to streamline things though when I make my move away from using a Windows PC and switching from MS Office to iWorks would have been nice.
(*) I hope - I'm waiting (and waiting and waiting) for the rest of the M5 MacBooks to be released before buying my forst ever Mac.