An Indian woman who was raped and set on fire killed her attacker by dragging him into the flames, police said Wednesday.

The woman survived with burns to her face and hands while the man died in hospital from his injuries.

The widow, 35, told police that the man, 42, attacked and raped her in her home north of Kolkata in eastern India on Monday, when her daughters were out.

"Then he poured kerosene on her body and set her on fire," police officer Sajal Kanti Biswas told AFP, quoting the woman's statement.

India has a grim record of sexual violence, as highlighted by the gang rape and murder of a woman on a Delhi bus in 2012.