Maximize one data point
In R you can run a linear regression. Consider this "academic" minimal example:

df = data.frame(c(3,5,2,7,5,3), c(1,0,1,0,1,0), c(0,1,1,0,1,0))
colnames(df) = c("A", "B", "C")
df


Take this data as an example:

  A B C
1 3 1 0
2 5 0 1
3 2 1 1
4 7 0 0
5 5 1 1
6 3 0 0


Now we can see how B and C describe A in the best way.

reg = lm(A~B+C, data=df)
summary(reg)


Output:

Coefficients:
            Estimate Std. Error t value Pr(&gt;|t|)  
(Intercept)    4.917      1.322   3.719   0.0338 *
factor(B)1    -1.750      1.774  -0.987   0.3966  
factor(C)1     0.250      1.774   0.141   0.8968  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.048 on 3 degrees of freedom
Multiple R-squared:  0.2525,    Adjusted R-squared:  -0.2459 
F-statistic: 0.5066 on 2 and 3 DF,  p-value: 0.6463


This tells us that when B, C is 0, A=4.1917 if B=1 we would have A=4.917-1.750 and if C=1 we would have A=4.917+0.25. 

So, we can also make predictions:

predict(reg, newdata=df)


Which would be in this case:

       1        2        3        4        5        6 
3.166667 5.166667 3.416667 4.916667 3.416667 4.916667


This is a simple form of ML (linear regression), where the sum of squared residuals is minimized in order to find the coefficients for the intercept as well as B and C which best describe A.

You would write this model like: $A = \beta_0 + \beta_1  B + \beta_2  C + u$, where $u$ is the statistical error term. You would solve this model by minimizing $\sum u^2$ (the sum of squared residuals).

In matrix algebra you could write $y=\beta X + u$, and you would solve this by $(X'X)^{-1}X'y = \hat{\beta}$.

So we do not "maximise" but minimize the statistical error $u$ in order to find the best "fit" for columns B, C given column A.

Have a look at the great book "Introduction to Statistical Learning" to get the main concepts sorted.