Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.10.2014, 19:15   #1
MrKeLevra
 
Регистрация: 10.05.2014
Сообщений: 3
По умолчанию Дубликаты excel

Здравствуйте. Имеется массив 1 столбца с 1-2к слов. Дубликаты 1 к 1 удалить не сложно, просто нажав "удалить дубликаты". Но вот есть задача посложнее. Количество слов в документе - 10к. Остаются к примеру такие вот огрызки:

машина
машины
машиной
квартира
квартиры
квартирой

и тд...

Хочется как-то или сразу удалить все дубликаты, чтобы осталось только 1 слово, или как-то отфильтровать. К примеру, если в слове подряд идут 3 одинаковые буквы, одно из этих слов удаляется.
Заранее спасибо!
MrKeLevra вне форума Ответить с цитированием
Старый 11.10.2014, 19:26   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
чтобы осталось только 1 слово
морфологический анализ - это очень сложно
если требуется сделать это один раз - гораздо проще вручную

Цитата:
если в слове подряд идут 3 одинаковые буквы, одно из этих слов удаляется
плохая идея - будет много ошибок
EducatedFool вне форума Ответить с цитированием
Старый 11.10.2014, 19:30   #3
RAN.
Форумчанин
 
Аватар для RAN.
 
Регистрация: 05.07.2011
Сообщений: 208
По умолчанию

найти машин*
заменить все на машина
и т.д.
удалить дубликаты
при необходимости повторить
RAN. вне форума Ответить с цитированием
Старый 11.10.2014, 19:51   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

если совершенно не важно что будет на выходе, то можно и по 3-м одинаковым...

легко решить что делать с машинами

а с этой парой будет сложнее:
адреналин
адрес
тут даже 4 буквы совпадают, откройте любой словарь и взгляните, что Ваш ждет
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 11.10.2014, 20:12   #5
Gekan
Пользователь
 
Регистрация: 29.06.2012
Сообщений: 39
По умолчанию

Как вариант, можно скопировать в файл словарь русского языка, порядка 100 000 слов будет достаточно. Дальше просто искать ваши слова в словаре, все огрызки тогда пойдут в корзину.
Gekan вне форума Ответить с цитированием
Старый 15.10.2014, 10:47   #6
MrKeLevra
 
Регистрация: 10.05.2014
Сообщений: 3
По умолчанию

Всем спасибо за участие)

Цитата:
Сообщение от Gekan Посмотреть сообщение
Как вариант, можно скопировать в файл словарь русского языка, порядка 100 000 слов будет достаточно. Дальше просто искать ваши слова в словаре, все огрызки тогда пойдут в корзину.
какой объём работы необходимо выполнить и сколько времени у excel займёт прогнать 3000 слов по словарю, скажем, как вы и предлагаете, 100к слов?
MrKeLevra вне форума Ответить с цитированием
Старый 15.10.2014, 10:54   #7
GAS1979
Пользователь
 
Регистрация: 22.04.2013
Сообщений: 17
По умолчанию

Как я понимаю, обычной функцией ВПР() можно прогнать с точным совпадением. Потом удалить ошибки.
GAS1979 вне форума Ответить с цитированием
Старый 16.10.2014, 20:40   #8
Gekan
Пользователь
 
Регистрация: 29.06.2012
Сообщений: 39
По умолчанию

Цитата:
Сообщение от MrKeLevra Посмотреть сообщение
какой объём работы необходимо выполнить и сколько времени у excel займёт прогнать 3000 слов по словарю, скажем, как вы и предлагаете, 100к слов?
Время зависит от машины.
А ещё больше - от того, как будет реализовано.
Я не специалист, но кажется есть там инструменты типа Dictionary, возможно придётся применить алгоритмы быстрого поиска и скорее всего они уже разработаны, надо просто их найти .
Gekan вне форума Ответить с цитированием
Старый 17.10.2014, 13:38   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Заполнить словарь на 100к ключей - секунд 5.
Проверить по словарю 3к слов и вывести результат - секунда, может 2.
Итого на всё 10 секунд, скорее всего меньше.
Если конечно использовать dictionary и массивы.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
дубликаты в коде alimov7 Помощь студентам 9 23.10.2012 22:05
убрать дубликаты Nasten'ka7 Microsoft Office Excel 1 21.03.2011 18:49
окрасить дубликаты Romuald Microsoft Office Excel 5 07.03.2011 16:33
матрица и дубликаты... xakkkkker Помощь студентам 3 05.12.2010 20:11