Форум сайта python.su
Встала такая проблема.
При расчете получаю numpy.array размерностью несколько тысяч на несколько тысяч. Сохраняю как *.csv файл. Но в Екселе 2003 есть ограничение на максимальное кол-во столбцов - 256. Так вот, надо как-то уменьшить кол-во столбцов в массиве, чтобы оно влезло в Эксел. Причем первый и последний должны остаться обязательно, а остальные - быть с равным “шагом”. Да и подписи надо, то какие это столбцы по счету были до “уменьшения” исходной матрицы.
Несколько часов бился над проблемой - так и не нашел выхода.
Помогите новичку в программировании (точнее, скажем честно, кодинге).
Офлайн
В смысле, надо пропустить определённые столбцы при записи?
Офлайн
Да. А еще точнее записать только определенные столбцы.
Офлайн
Тогда проблема совсем непонятна. Самый простой способ - создать новую таблицу из нужных столбцов, а уже её сохранять.
Второй вариант - пропускать ненужные во во время сохранения - тогда вторая таблица не нужна.
Как именно вы сохраняете таблицу?
Офлайн
Вот по сути, я пытался пойти первым спосбом, просто даже создать вторую таблицу у меня не получилось такой какой надо. Так что мне будет достаточно алгоритма по созданию вот этой самой второй таблицы, допустим. Все остальное мне ясно.
Офлайн
Хм. Тогда скажите какая надо, а какая получилась. Будет видно что не так.
Офлайн
Ну, если быть совсем уж прямолинейным - мне просто нужен аналог атрибута list.remove(), только для numpy.ndarray() - то есть команда для исключения столбца.
Со всем остальным уже разобрался, кажется…
Офлайн
Офлайн
Проблема решена с помощью атрибута ndarray.take()
Офлайн
Тоже вариант.
Офлайн