1st Check for exhaust leaks before the O2 sensor as if this has been experiencing an exhaust leak then it will have been running very rich as the sensor will see the extra air pulled in as fresh / lean fuelling and be adding fuel to compensate.
this can lead to catalyst failure as the extra fuel can re-light inside and melt the catalyst
The best way to find an exhaust leak is to run the engine from cold and feel around the exhaust joints with your bare hands - you'll have about 30 seconds before it all gets too hot and you should feel any escaping gas blowing over your fingers
If this is OK then
This could be an airleak after the airflow meter, any air dragged in here isn't 'seen' by the ECU and so not compensated for and can lean the engine out and can also allow the engine to rev up when not desired causing rough running.
As its a mechanical fault you can sometimes hear a 'hissing' noise with the engine running.
Check the hose clips for tightness and inspect the trunking for any cracks or splits and also all the vacuum system, the small bore pipes and fittings for cracks and missing parts.
The best way to locate a leak is to have the engine running and warm and then spray lighter gas /propane around each joint in turn. If the engine rev's up you've found your leak.
Now you might think that spraying lighter gas around a hot engine isn’t wise, however the flash /ignition point of gas is about 400°C so you need a naked flame or spark to set it off and I’ve used this method for many years without incident.
Work your way through each possible joint one at a time and you should find it. I use a slightly flattenedpiece of brake pipe and some rubber hose from the can of lighter gas to provide a spraying 'wand' and allow a direct blast of gas into each area, especially those difficult to reach with large implements.
It’s also worth getting the fuel pressure checked as if this is low due to a blocked filter or faulty regulator or even a poorly pump will all result in insufficient fuel being delivered to the engine
Might also be worth checking the wiring and connector to the airflow meter for any signs of corrosion or damage. you can do a quick fault find if you unplug the meter and run the engine without it.
if the engine condition is the same then chances are the meter or the connection to it is faulty
Air leaks are very temperature dependent as gaps can open or close up as things expand with heat, so the weather and engine temperature can effect them.
This leads them to be quite intermittent in the case of mild leaks
its also worth cleaning the airflow meter by removing it from the car and spraying the exposed sensor wires inside the tube with a brake or switch cleaner - ensure that the cleaner is one of the old fashioned, non Eco type that does not leave a residue
On no account touch the sensor wires with anything physical as they are extremely fragile