Einstein once argued that it is possible to predict the future outcome, with 100% accuracy, of any event if the initial values of all the variables were known. But its this very particular requirement that makes the task impossible, the task of having to know the values of all the variables.
There is a theory contradicting the above statement, and its call Principle of Uncertainty. It states that it is impossible to measure the accurate value of any system. The reason mainly being that the more your try to be accurate, the more you tend to affect the system's parameter. It was mainly argued that this was due to the imperfections in the measuring instrument. No measuring instruments are accurate and this seems to be the undeniable truth. For example, its quite impossible to measure the flow of the river without affect the flow itself.
Therefore, many complicated mathematical theorems have been established to predict the values instead of measuring it. But, there is problem with this method: Its only a prediction, giving you not the accurate values but the probability on the values. And this seems to be a new age of interpreting the values, that is, in terms of percentile. For example, what is the probability that it will rain tomorrow. Its a simple question that can be answered by observing a clouds or analyzing the previous data on the behavior of the seasons and finally you may say there is 50-50 chance for raining tomorrow.
So how do we predict? First we have to understand the system that you are trying to predict. If its a weather, you have to have the models of your environment like location of clouds, values of temperature and so on. Once you have almost complete model on your environment, you can make few prediction basis on your analysis of the data provided. Therefore, the data processing and data interpretation seems to be the core of predicting the values of the quantities.
Can we justify our predictions? Yes, we can justify it because we know that in a system, variables are dependent with each other and further there is an underlying relationships between them. This relationship between the variables can be found out by collecting data and applying statistical tools like correlation and so on.
But there are many problems with this method so it is not that easy to create a model of any system. Lot of details has to be considered, like the source of the data and its authenticity. Also, the data must be collected in such a way that it won't disturb the nature of the system. For example, if you want to get a detail on popularity of the brand then its very likely that the people will not be able to give their own choice. It may be because he/she can be influenced by others choice. This is only a very few problems associated with data collection. So its another field of research, how to get an exact data, also don't forget the uncertainty principles.
We will be off course talking a lot on the statistical tools that can be used to model the system. But for now it is reasonable to say that "Its better to predict accurately then to measure inaccurately".