A driver from Connecticut has been arrested after he allegedly struck pedestrians, tried to carjack a taxi, and punched a traffic cop on the Upper East Side yesterday.

Police say that driver Cameron Coelho, 27, went on a vehicular rampage around 12:15 p.m. on Thursday. Coelho was driving southbound on Second Avenue when he struck at least three pedestrians and several other cars.

The reckless driving apparently started around East 90th Street, and near East 72nd Street, Coelho struck cab driver Jaswinder Singh: "I was in a state of shock. It happened so fast. I didn’t expect it because I had the light, he didn’t," Singh told the Post. "My passenger was frightened because he hit the car so hard, it shook. She said, 'This guy is crazy. He should stop.'"

When Coelho got to the Queensboro Bridge, he allegedly abandoned his car and tried to carjack a different cabbie. A traffic enforcement agent tried to intervene, and Coelho allegedly punched him in the stomach. "When I came on the scene, he was basically fighting with officers," one witness told CBS. "It took about six of them to get him down."

Once he was in custody, Coelho was taken to New York Presbyterian Hospital for a psychiatric evaluation. He has been charged with assault and attempted robbery.

In separate incidents around the city, at least two other people were struck by drivers also on Christmas Eve. A 77-year-old woman was fatally struck by the driver of a van as she attempted to cross the street at E. 21st St. and Gravesend Neck Road in Sheepshead Bay. The driver, Zafrom Ghafoor, was charged with failure to yield and failure to exercise due care and was issued a desk appearance ticket.

And a 67-year-old woman was struck by a driver while walking on 39th St. at the Queens Boulevard intersection in Sunnyside. An FDNY spokesman said her leg was "partially amputated" at the right ankle. The NYPD adds that no charges have been filed against that driver.