Как Вы видите в изображении, у меня есть столбцы 0-350 (больше чем 3 000 из них в файле), и я пытался избавиться от всех дублированных столбцов, которые имеют значения 0-350. Существует ли быстрый и простой способ понять это? Я искал некоторые старые потоки, но они имели дело с дублированными объектами в одном столбце. Я пытался использовать функцию фильтра, но я не смог отфильтровать их использующий строки вместо столбцов. Какая-либо мысль?Заранее спасибо! refmac5
Шаг 1
Позволяют нам отслеживать порядок Ваших столбцов. Заполните первую пустую строку внизу (я предполагаю, что это - строка 37) с 1, 2, 3, и т.д. Мы испытываем необходимость в этом позже. Не используйте формулу - каждая ячейка должна иметь значение. См.:
https://help.libreoffice.org/Calc/Automatically_Calculating_Series] 1
Шаг 2
Для этого шага, я предполагаю, что строка 36 содержит 350's, и что ни один из столбцов, которые Вы хотите сохранить, не имеет номер 350 последовательно 36. На основе Вашего изображения, которое кажется разумным предположением.
Шаг 3
Весь Ваш "0-350" столбцы теперь слева. Удалите их.
Шаг 4
Отложил Ваши столбцы в их первоначальном заказе.
Шаг 5
Удаляет последнюю строку - та, которую мы создали на Шаге 1.
Если Вы ищете scriptable решение для командной строки, и дубликаты находятся в альтернативных столбцах как показано в Вашем примере, то Вы могли просто взять часть массива полей ввода, состоящих из первого элемента, сопровождаемого вторым, четвертым и так далее. В perl
(чьи массивы основаны на нуле), который был бы индексами 0,1,3,...N-1
Вы могли сделать это как
perl -F, -alne 'print join ",", @F[ 0, grep {$_ & 1} 1..$#F ]' data.csv > filtered.csv
( grep {$_ & 1} 1..$#F
часть генерирует нечетные индексы).