The estimated time remaining is based on the speed at which bytes are copied from the source to the destination and how much data there is to be transferred. You might know from physics that speed = distance / time. Or, you could write time = distance / speed. It's the same on your computer, but instead of distance, you have the size of the file.
What happens is that your computer might be busy with something else, and that causes the speed of copying to slow down. Like on the motorway, the more traffic there is the slower things tend to be. So to make the transfer go as fast as possible, you can try to close any other open programs. And on a big file transfer, it's quite likely that the initial estimate might not get it right, and you'll get a more accurate estimate as variations in speed are averaged out.
There are also other things you can do, for example if you are copying to a USB drive, the quality of the drive often makes a big difference to the rate at which data can read and written to it.
Hope that helps.