x [:, [0,1,2,2]] означает, что вы берете (все строки) столбцы 0,1,2 и 2 и объединяете их. Поскольку в ваших данных есть все, это трудно визуализировать, но поможет следующий пример:
x = np.array([[1,2,3],[4,5,6],[7,8,9]])
x
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
x[:, [0]]
array([[1],
[4],
[7]])
x[:, [1]]
array([[2],
[5],
[8]])
x[:, [2]]
array([[3],
[6],
[9]])
x[:, [0, 2, 1, 1]]
out: array([[1, 3, 2, 2],
[4, 6, 5, 5],
[7, 9, 8, 8]])