0
$\begingroup$

If there are two continuous independent variables that show a high amount of correlation between them, can we remove this correlation by multiplying or dividing the values of one of the variables with random factors (E.g., multiplying the first value with 2, the second value with 3, etc.). We would be keeping a copy of the original values of the independent variable whose values have been transformed for proper comparison of the original values with the prediction results received. Can this be considered as an alternative to dropping one of the highly correlated variables?

$\endgroup$
1
  • $\begingroup$ I am not sure I quite understand what you are saying. If the variables are independent then the correlation between them will be zero (see Wikipedia's article on correlation and dependence). Adding noise to the data (as you propose to do) will most likely be detrimental to the performance of any model you create based on that data. Is there any reason in particular you do not want to drop one of the two correlated variables from your model? $\endgroup$
    – René
    Commented Apr 18, 2021 at 8:01

3 Answers 3

1
$\begingroup$

High correlation between 2 features, eg $x_1$ and $x_2$ means that there is a linear relation between the two features (ie one is a linear transformation of the other), $x_2 = c_0 + s \cdot x_1 + \epsilon$.

That means any linear transformation of one or both features (eg multiplying by random factors), simply leaves the linear relation intact.

$x_{21}$ = $a \cdot x_2$, $x_{11} = b \cdot x_1$

Then

$x_{21} = a \cdot c_0 + a \cdot s/b \cdot x_{11} + \epsilon'$

Thus again there is linear relation thus high correlation.

Only non-linear transforms can alter the linear relation, but these can affect negatively the outcome.

Once a very strong correlation exists between 2 features then one of them is simply discarded, and only one remains, as it does not offer any new information by itself.

See also: https://datascience.stackexchange.com/a/87653/100269

$\endgroup$
2
$\begingroup$

can we remove this correlation by multiplying or dividing the values of one of the variables with random factors (E.g., multiplying the first value with 2, the second value with 3, etc.)

No you can not decorrelate 2 variables by multiplying or dividing them by a random factors, you can use one of the following methods instead if you want to keep the 2 variables:

  • Divide a and b: new_a = a / b
  • Powering up a: new_a = a^2, a^3, ...
  • PCA
  • ...
$\endgroup$
0
$\begingroup$

You can use PCA to transform your N correlated features to N uncorrelated features.

You can then check for correlation between your N uncorrelated features against your target and choose to drop the ones with very low correlation.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.