Earlier today I was discussing statistical analysis software with a colleague of mine. My colleague had primarily used SPSS in previous work for performing t-tests, anovas, manovas, and other statistical tests similar to those. My colleague also mentioned that SPSS does not handle regressions well. I have no idea whether or not SPSS handles regressions well, but I did respond that a t-test can be formulated as a regression, so SPSS must not be all that bad with regressions. We got to talking about t-tests, regression, and causality, and it came up that "you cannot prove causality with regression, while t-tests are able to prove causality." I've always thought that causality could be established given an appropriate experimental design, regardless of whether you use a t-test or regression to estimate something or perform a hypothesis test. Is it possible to establish a causal relationship using a t-test and not regression? Is it possible to establish a causal relationship without knowing about the experimental design?
@John is correct, but, in addition you cannot prove causation with any experimental design: You can only have weaker or stronger evidence of causality.
In any study, but especially in an observational study, evidence for causality is increased by including relevant covariates, giving a scientifically plausible causal path, replicating results and so on.
However, even in the best experimental design, you don't prove causality.
As for t-tests vs. regression - your friend does not know what he/she is talking about. T-tests results can be duplicated exactly with regression procedures: Just use a single independent variable that is dichotomous.
Causal relationships are established by experimental design, not a particular statistical test. You could use a correlation as your statistical test and demonstrate that the true experiment you conducted showed causation. You could perform a t-test as your statistic and show a relationship in your quasi or observational study that does not motivate a causal explanation.
Like everyone else said, math alone cannot determine causality.
A solid way to find causality is to first develop your causal theory.
Once you have a causal theory you can group all the known variables. Having all the known variables will allow you to compare them all through multiple tests.
Then make a list of potential unknown variables. Have multiple tests for each potential one to see if there is an impact.
Remember to perform impact tests, not correlation tests. Determining this is largely dependent on what you are studying, and not entirely mathematical in all cases. In other words, you can't truly find causality with just a mathematical test. This should be logical because the numbers you are inputting are not guaranteed to be accurate, and secondly the numbers you are inputting are only from specific variables to begin with. Theory needs to be applied, but once it is applied math plays a very strong role in determining each variable's strength.