storeing some data with PROGMEM

I connected a XBee network to my arduino to dispaly the received data in a computer. Now I need to store previous (say 20 or 30) data from xbee also in the arduino and display them. For this can I use a PROGMEM array? How can make my arduino, modify values of a PROGMEM array ?

(The idea is to perform kind of data logging with arduino's Flash memory, but only needs to hold the last few data and be modified every time a new packet is received )

You can't. PROGMEM is read-only.

Is there a good reason not to use EEPROM?

You can use Progmem to store data. However in order to do so you need dedicated code in the bootloader area. Without an ISP you can not upload such code. Also it is not trivial to link such code unless you know exactly what you are doing --> if you would understand this you would not be asking. I would recommend to go for EEProm or for external flash unless you have very hard hardware constraints.