Level 73
Yes you can do it dynamically.. so here is the way you should have it initialized and then play with toggling depending on how you want to trigger the show/hide.. I am using checkboxes in such case, so here is an example:
let dataTable = $('#data_table').DataTable({ ..... your options here });
let column = dataTable.column(0); // here is the index of the column, starts with 0
column.visible(false); // this should be either true or false