Групування стовпців даних за спільними значеннями


4

Я не знаю, як правильно описати, що мені потрібно зробити, тому наведу приклад. У колеги є такий набір даних у Excel:

Col A    Col B    Col C
aaaaa    aaaaa    bbbbb
bbbbb    ccccc    ccccc
ccccc    ddddd    eeeee

Кінцевий результат повинен бути приблизно таким:

Col A    Col B    Col C
aaaaa    aaaaa
bbbbb             bbbbb
ccccc    ccccc    ccccc
         ddddd
                  eeeee

Або навіть:

      Col A    Col B    Col C
aaaaa Yes      Yes      No
bbbbb Yes      No       Yes

тощо.

(якщо це допомагає, стовпці - це методи вилучення білка, а букви - це ідентифікатори білка. нам потрібно визначити, які білки витягуються за допомогою яких методів)

Мій колега робить це вручну, але є достатньо даних, що це було б дуже корисно для автоматизації.

Чи існує формула в Excel, щоб зробити це автоматично?


Чи можна припустити, що кожен вхідний стовпець відсортований (сортування не має бути за алфавітом, але має бути однаковим для всіх стовпців)?
Адам Річковський

Чи фіксована кількість стовпців (= 3)?
Адам Ріцковський

@AdamRyczkowski Я вважаю, що вхідний стовпчик відсортований буквено-цифровим. Кількість стовпців не зафіксована (файл, який мені показав колега, має 5).
Ленна

Це можна зробити цілком за допомогою формул. Це буде не так просто, як метод Скотта. Оскільки це буде зроблено у формулах, результат буде 100% автоматизованим, тому не буде потреби в будь-яких клацаннях миші - змінюйте лише вхідні дані. Якщо ви зацікавлені, повідомте мене, і я опублікую його.
Адам Річковський

@AdamRyczkowski: Я знайшов формули для отримання унікальних значень з декількох стовпців, але думаю, що копія та вставлення працюватимуть досить добре.
Ленна

Відповіді:


3

Це не "під ключ" рішення, але якщо у вас є тисячі рядків, це може заощадити певні зусилля. (Зробіть це в скретч-копії вашого файлу, на випадок, якщо щось підірветься або розтане, оскільки "Скасувати" не завжди працює.) Примітка. Ця процедура була розроблена для Excel 2007 (але я повторно перевірив її в Excel 2013).

Спочатку скопіюйте всі свої дані в стовпчик подряпин; назвемо це V. Зауважимо, що ви повинні скопіювати заголовок із стовпця А, або в іншому випадку помістити деяке фіктивне значення у комірку V1

Ілюстрація копіювання даних

Тепер перейдіть на вкладку "Дані", групу "Сортування та фільтр" та натисніть "Додатково":

                        Група "Сортування та фільтрування", підкреслена "Додатково"

Це відкриє діалогове вікно "Розширений фільтр":

                  Діалогове вікно "Розширений фільтр"

Переконайтесь, що "Діапазон списку" відображає ваші дані у стовпці V. Виберіть "Копіювати в інше місце" та "Тільки унікальні записи". Введіть "W1" у поле "Копіювати в" - або натисніть на поле, а потім натисніть на W1 (є кілька методів, які отримають однаковий результат). Клацніть “OK”. Ви повинні отримати щось подібне:

                              Дані з V копіюються в W із видаленими дублікатами

тобто список ваших унікальних значень даних. Вам може знадобитися сортувати стовпчик W.

Тепер введіть =NOT(ISNA(VLOOKUP($W2,A$2:A$4,1,FALSE)))X2 (замініть на  4номер останнього рядка, що містить дані) та перетягніть / заповніть, щоб відповідати стовпцю W (тобто, одному рядку для кожного унікального значення у вихідних даних) та праворуч до стовпця Z ( тобто кількість стовпців у ваших даних).

                              таблиця, що показує TRUE / FALSE для того, чи є кожне значення у кожному стовпчику

Це дає вам таблицю істинності, що відповідає другій формі бажаного результату у питанні (але з "ІСТИНА" та "ЛОЖКА" замість "Так" та "Ні"). Наприклад,

  • X2 - ПРАВИЛЬНА, оскільки стовпець A містить "aaaaa",
  • X3 - ІСТИНА, оскільки стовпець A містить "bbbbb",
  • Y2 - ПРАВИЛЬНА, оскільки стовпець B містить "aaaaa",
  • Y3 - ЛІЖНЕ, оскільки стовпець B не містить "bbbbb" тощо.

Видаліть стовпець V та закріпіть заголовки (у рядку 1) у вільний час. Якщо ви не хочете зберігати стовпці AC у таблиці, скопіюйте WZ стовпців у WZ та вставте значення.


Деякі пояснення щодо формули: Формула, яку я представив вище, використовується для використання у стовпці X, що відповідає стовпцю А.   Оскільки я використовував $W2, це абсолютна посилання на стовпець W, і вона стосуватиметься клітини, коли формула перетягується / заповнюється до рядка  n будь-якого стовпця. Навпаки, це абсолютна посилання на рядки 2 до 4, але відносна посилання на стовпець А. Коли формула перетягується на стовпець Y, ця посилання автоматично змінюється на  . Коли формула перетягується на стовпчик Z, ця посилання автоматично зміниться на  .WnA$2:A$4B$2:B$4C$2:C$4


Це виглядає чудово, я думаю, ми спробуємо це.
Ленна
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.