If this occurs at idle, or during prolonged periods of idling, the oxygen sensor is likely too cold to cycle properly. Warming up the engine somewhat will raise the sensor temperature into a normal operating range. While DSM oxygen sensors are equipped with a heater to aid in keeping the sensor hot, many people find the heater is either broken or simply not adequate to the task of keeping the oxygen sensor hot.
If this occurs during normal cruising speeds, your oxygen sensor may be on its last legs. Poor cycling is often an early symptom of impending sensor failure. If it persists long enough, the ECU will throw the code for the O2 sensor, but the ECU is pretty conservative on this; the sensor has to really be DEAD dead for the ECU to notice.
On the other hand, the O2 sensor reading is supposed to peg high under acceleration. This is because the ECU no longer cares about theoxygen sensor reading, and supplies extra fuel to keep the engine cool. This is known as open-loop operation. The method of changing fuel delivery based on the oxygen sensor signal (which causes O2 readout cycling) is called closed-loop operation.
For more information on open and closed-loop operation, read the The Essential Primer on the DSM ECU.