The UNIX and Linux Forums  
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.

Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Найти общий объем колонки с использованием AWK ironhead3fan Shell программирование и сценарии 8 01-30-2009 06:59 AM
Как проверить Null значения в файле колонка колонки, если колонка не NULLs Mandab Shell программирование и сценарии 7 03-15-2008 09:57 AM
найти дубликаты файлов по размеру и найти соответствие шаблону и его кол Джером Сукумар Shell программирование и сценарии 2 12-01-2006 04:20 AM
Заменить 10 колонка с новой колонке --- Terriblly торопиться ahmedwaseem2000 Shell программирование и сценарии 2 09-06-2005 02:10 AM
Нахождение в колонке Flatfile peter.herlihy UNIX для чайников Вопросы И Ответы 3 01-07-2002 08:08 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 11-21-2007
Donkey25 Donkey25 is offline
Зарегистрированный пользователь
  
 

Регистрация: Nov 2007
Сообщений: 36
Нахождение наиболее распространенный элемент в колонке

Привет,

У меня есть файл с 3 колонок в нем, которые, разделенных запятыми, и насчитывает около 5000 линий. То, что я хочу сделать, это найти наиболее распространенные значения в колонке 3, используя AWK или скрипт или как работает! Я абсолютно застряли на том, как это сделать.

например

значение1, значение2, Боб
значение1, значение2, Боб
значение1, значение2, Боб
значение1, значение2, Дейв
значение1, значение2, Джеймс

Очевидно в приведенном выше примере самых популярных стоимостью в column3 является "Bob", но каким образом я мог бы написать скрипт, чтобы эту проблему?

Большое спасибо
Old 11-21-2007
vgersh99's Avatar
vgersh99 vgersh99 is offline Forum Staff  
Модератор
  
 

Регистрация: Февраль 2005
Место: Boston, MA
Сообщения: 5122
nawk-F don.awk MyFile

don.awk:
Код:
BEGIN {
  FS=","
}
{a[$3]++; if (a[$3] > comV) { comN=$3; comV=a[$3]} }
END {
    printf("Most Common Name: [%s] = [%d]\n", comN, comV)
}

Последний раз редактировалось vgersh99; на 11-21-2007 12:08 PM..
Old 11-21-2007
summer_cherry summer_cherry is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Июнь 2007
Месторасположение: Пекин Китай
Сообщения: 1088
AWK

Привет,
Это должно быть хорошо для вас. Собственно, этот случай был связан persormance вопрос, поскольку ваш файл имеет thousound и hunderds линий. Поэтому трудно логики будет иметь различные результаты.

Чтобы быть честным, я только знаю, как получить результат, но я понятия не имею, выдать высокоэффективный код. Так вы лучше спросите некоторых экспертов, за помощью.

А вот мои код:

Код:
awk 'BEGIN{
FS=","
n=0
}
{
sum[$3]++
if (sum[$3]>n)
{
	n=sum[$3]
	m=$3
}
}
END{
print m
}' filename
Old 11-21-2007
drl's Avatar
ДРЛ drl is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Apr 2007
Место проведения: Санкт-Пол, Миннесота США / BSD, CentOS, Debian, OS X, Solaris
Сообщений: 712
Привет.

Так вы готовы согласиться с (более или менее) случайным результатом какого-либо из победителей, если есть галстук между двумя или несколькими именами? ... Cheers, ДХО
Old 11-22-2007
radoulov's Avatar
radoulov radoulov is online now Forum Staff  
наркоман
  
 

Регистрация: Январь 2007
Местоположение: Варна, България / Милан, Италия
Сообщения: 2877
Она будет достаточно, чтобы включить comN / м в массиве.
Old 11-22-2007
Donkey25 Donkey25 is offline
Зарегистрированный пользователь
  
 

Регистрация: Nov 2007
Сообщений: 36
Спасибо, ребята,

У меня оба указанных выше для моей работы, но использование процессора хит 100% LOL! Любые идеи, как сделать на этом более эффективными или ограничение количества процессоров, что этот сценарий может AWK свинья?

Еще раз спасибо
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 10:49 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0