Я хочу иметь возможность разбить 2D numpy
по горизонтали на два разделения (80% и 20%).Я пытался использовать np.vsplit()
, но, похоже, это не для такого случая.Например, предположим, у меня есть следующая матрица размера (6,3).Я хочу разделить его по горизонтали на 80% и 20% [примерно (5,3), (1,3)], поэтому я попробовал что-то вроде этого:
M = [[1,2,3],[4,5,6],[7,8,9], [10,11,12], [77,54,11], [424,78,98]]
M = np.asarray(M)
arr1 = np.vsplit(M, int(M.shape[0]* 0.8))[0] # 80% of data goes to arr1
arr2 = np.vsplit(M, int(M.shape[0]* 0.2))[1] # 20% of data goes to arr2
Я знаю, что эта попытка неверна, ноЯ не могу это исправить (на самом деле все еще изучаю Python).Пожалуйста, если кто-то может помочь изменить этот код.Спасибо