Вместо данных – ГДЗ Русский язык 11 класс Греков В. Ф. §70 Вопрос 398 Спишите, вставляя вместо точек слова, данные в скобках, и соответствующие предлоги.

Найти и заменить в Excel

Поиск и замена данных – одна из часто применяемых операций в Excel. Используют даже новички. На ленте есть большая кнопка.

Кнопка поиска на ленте

Кнопка поиска на ленте

Команда поиска придумана для автоматического обнаружения ячеек, содержащих искомую комбинацию символов. Поиск данных может производиться в определенном диапазоне, целом листе или даже во всей книге. Если активна только одна ячейка, то по умолчанию поиск происходит на всем листе. Если требуется осуществить поиск значения в диапазоне ячеек Excel, то такой диапазон нужно предварительно выделить.

Далее вызываем Главная → Редактирование → Найти и выделить → Найти (кнопка с рисунка выше). Поиск также можно включить с клавиатуры комбинацией клавиш Сtrl+F. Откроется диалоговое окно под названием Найти и заменить.

Диалоговое окно Найти и Заменить

Диалоговое окно Найти и Заменить

В единственном поле указывается информация (комбинация символов), которую требуется найти. Если не использовать подстановочные символы или т.н. джокеры (см. ниже), то Excel будет искать строгое совпадение заданных символов. Для вывода результатов поиска предлагается два варианта: выводить все результаты сразу – кнопка Найти все; либо выводить по одному найденному значению – кнопка Найти далее.

После запуска поиска программа Excel быстро-быстро просматривает содержимое листа (или указанного диапазона) на предмет наличия искомой комбинации символов. Если такая комбинация обнаружена, то в случае нажатия кнопки Найти все Excel вываливает все найденные ячейки.

Найти все

Найти все

Если в нижней части окна выделить любое значение и затем нажать Ctrl+A, то в диапазоне поиска будут выделены все соответствующие ячейки.

Если же запуск поиска произведен кнопкой Найти далее, то Excel выделяет ближайшую ячейку, соответствующую поисковому запросу. При повторном нажатии клавиши Найти далее (либо Enter с клавиатуры) выделяется следующая ближайшая ячейка (подходящая под параметры поиска) и т.д. После выделения последней ячейки Excel перепрыгивает на самую верхнюю и начинается все заново. На этом познания о поиске данных в Excel у большинства пользователей заканчиваются.

Поиск нестрогого соответствия символов

Иногда пользователь не знает точного сочетания искомых символов что существенно затрудняет поиск. Данные также могут содержать различные опечатки, лишние пробелы, сокращения и пр., что еще больше вносит путаницы и делает поиск практически невозможным. А может случиться и обратная ситуация: заданной комбинации соответствует слишком много ячеек и цель поиска снова не достигается (кому нужны 100500+ найденных ячеек?).

Для решения этих проблем очень хорошо подходят джокеры (подстановочные символы), которые сообщают Excel о сомнительных местах. Под джокерами могут скрываться различные символы, и Excel видит лишь их относительное расположение в поисковой фразе. Таких джокеров два: звездочка «*» (любое количество неизвестных символов) и вопросительный знак «?» (один «?» – один неизвестный символ).

Так, если в большой базе клиентов нужно найти человека по фамилии Иванов, то поиск может выдать несколько десятков значений. Это явно не то, что вам нужно. К поиску можно добавить имя, но оно может быть внесено самым разным способом: И.Иванов, И. Иванов, Иван Иванов, И.И. Иванов и т.д. Используя джокеры, можно задать известную последовательно символов независимо от того, что находится между. В нашем примере достаточно ввести и*иванов и Excel отыщет все выше перечисленные варианты записи имени данного человека, проигнорировав всех П. Ивановых, А. Ивановых и проч. Секрет в том, что символ «*» сообщает Экселю, что под ним могут скрываться любые символы в любом количестве, но искать нужно то, что соответствует символам «и» + что-еще + «иванов». Этот прием значительно повышает эффективность поиска, т.к. позволяет оперировать не точными критериями.

Если с пониманием искомой информации совсем туго, то можно использовать сразу несколько звездочек. Так, в списке из 1000 позиций по поисковой фразе мол*с*м*уход я быстро нахожу позицию «Мол-ко д/сн мак. ГАРНЬЕР Осн.уход д/сух/чув.к. 200мл» (это сокращенное название от «Молочко для снятия макияжа Гараньер Основной уход….»). При этом очевидно, что по фразе «молочко» или «снятие макияжа» поиск ничего бы не дал. Часто достаточно ввести первые буквы искомых слов (которые наверняка присутствуют), разделяя их звездочками, чтобы Excel показал чудеса поиска. Главное, чтобы последовательность символов была правильной.

Есть еще один джокер – знак «?». Под ним может скрываться только один неизвестный символ. К примеру, указав для поиска критерий 1?6, Excel найдет все ячейки содержащие последовательность 106, 116, 126, 136 и т.д. А если указать 1??6, то будут найдены ячейки, содержащие 1006, 1016, 1106, 1236, 1486 и т.д. Таким образом, джокер «?» накладывает более жесткие ограничения на поиск, который учитывает количество пропущенных знаков (равный количеству проставленных вопросиков «?»).

В случае неудачи можно попробовать изменить поисковую фразу, поменяв местами известные символы, сократив их, добавить новые подстановочные знаки и др. Однако это еще не все нюансы поиска. Бывают ситуации, когда в упор наблюдаешь искомую ячейку, но поиск почему-то ее не находит.

Продвинутый поиск

Мало, кто обращается к кнопке Параметры в диалоговом окне Найти и заменить. А зря. В ней скрыто много полезностей, которые помогают решить проблемы поиска. После нажатия кнопки Параметры добавляются дополнительные поля, которые еще больше углубляют и расширяют условия поиска.

Параметры в поиске

Параметры в поиске

С помощью дополнительных параметров поиск в Excel может заиграть новыми красками в прямом смысле слова. Так, искать можно не только заданное число или текст, но и формат ячейки (залитые определенным цветом, имеющие заданные границы и т.д.).

Поиск форматов

Поиск форматов

После нажатия кнопки Формат выскакивает знакомое диалоговое окно формата ячеек, только в этот раз мы не создаем, а ищем нужный формат. Формат также можно не задавать вручную, а выбрать из имеющегося, воспользовавшись специальной командой Выбрать формат из ячейки:

Выбрать формат

Выбрать формат

Таким образом можно отыскать, к примеру, все объединенные ячейки, что другим способом сделать весьма проблематично.

Поиск формата – это хорошо, но чаще искать приходится конкретные значения. И тут Excel предоставляет дополнительные возможности для расширения и уточнения параметров поиска.

Первый выпадающий список Искать предлагает ограничить поиск одним листом или расширить его до целой книги.

Искать на листе

Искать на листе

По умолчанию (если не лезть в параметры) поиск происходит только на активном листе. Для повторения поиска на другом листе все действия нужно проделать еще раз. А если таких листов много, то поиск данных может отнять немало времени. Однако если выбрать пункт Книга, то поиск произойдет сразу по всем листам активной книги. Выгода очевидна.

Список Просматривать с выпадающими вариантами по строкам или столбцам, видимо, сохранился от старых версий, когда поиск требовал много ресурсов и времени. Сейчас это не актуально. В общем, я не пользуюсь.

В следующем выпадающем списке находится замечательная возможность поиска по формулам, значениям, а также примечаниям. По умолчанию Excel производит поиск в формулах либо, если их нет, в содержимом ячейки. Например, если искать фамилию Иванов, а фамилия эта есть результат формулы (копируется из соседнего листа), то поиск нечего не даст, т.к. в ячейке нет искомого перечня символов. По той же причине не удастся отыскать число, являющееся результатом работы какой-либо функции. Поэтому бывает смотришь в упор на ячейку, видишь искомое значение, а Excel его почему-то не видит. Это не глюк, это настройка поиска. Измените данный параметр на Значения и поиск будет осуществляться по тому, что отражено в ячейке, независимо от содержимого. Например, если в ячейке содержится результат вычисления 1/6 (как значение, а не формула) и при этом формат отражает только 3 знака после запятой (т.е 0,167), то поиск символов «167» при выборе параметра Формулы эту ячейку не обнаружит (реальное содержимое ячейки — это 0,166666…), а при выборе Значения поиск увенчается успехом (искомые символы совпадают с тем, что отражается в ячейке). И последний пункт в данном списке – Примечания. Поиск осуществляется только в примечаниях. Очень может помочь, т.к. примечания часто скрыты.

В диалоговом окне поиска есть еще две галочки Учитывать регистр и Ячейка целиком. По умолчанию Excel игнорирует регистр, но можно сделать так, чтобы «иванов» и «Иванов» отличались. Галочка Ячейка целиком также может оказаться весьма полезной, если ищется ячейка не с указанным фрагментом, а полностью состоящая из искомых символов. К примеру, как найти ячейки, содержащие только 0? Обычный поиск не подойдет, т.к. будут выдаваться и 10, и 100. Зато, если установить галочку Ячейка целиком, то все пойдет, как по маслу.

Поиск и замена данных

Данные обычно ищутся не просто так, а для каких-то целей. Такой целью часто является замена искомой комбинации (или формата) на другую. Чтобы найти и заменить в выделенном диапазоне Excel одни значения на другие, в окне Найти и заменить необходимо выбрать вкладку Замена. Либо сразу выбрать на ленте команду Главная → Редактирование → Найти и выделить → Заменить.

Заменить

Заменить

Еще удобнее применить сочетание горячих клавиш найти и заменить в Excel – Ctrl+H.

Диалоговое окно увеличится на одно поле, в котором указываются новые символы, которые будут вставлены вместо найденных.

Диалоговое окно Заменить

Диалоговое окно Заменить

По аналогии с простым поиском, менять можно и формат.

Заменить формат

Заменить формат

Кнопка Заменить все позволяет одним махом заменить одни символы на другие. После замены Excel показывается информационное окно с количеством произведенных замен. Кнопка Заменить позволяет производить замену по одной ячейке после каждого нажатия. Если найти и заменить в Excel не работает, попробуйте изменить параметры поиска.

Напоследок рассмотрим один классный трюк с поиском и заменой. Многие знают, что в ячейку можно вставить разрыв строк с помощью комбинации Alt+Enter.
Разделение строк в ячейке

Разделение строк в ячейке
А как быстро удалить все разрывы строк? Обычно это делают вручную. Однако ловкое использование поиска и замены сэкономит много времени. Вызываем команду поиска и замены с помощью комбинации Ctrl+H. Теперь в строке поиска нажимаем Ctrl+J — это символ разрыва строки — на экране появится точка. В строке замены указываем, например, пробел.

Поиск и замена разрывов строк в ячейке

Поиск и замена разрывов строк в ячейке

Жмем Ok. Все переносы строк заменились пробелами.

Замена разделителей строк пробелами

Замена разделителей строк пробелами

Функция поиска и замены при правильном использовании заменяет часы работы неопытного пользователя. Настоятельно рекомендую использовать все вышеизложенное. Если что-то не ищется в ваших данных или наоборот, выдает слишком много лишних ячеек, то попробуйте уточнить поиск с помощью подстановочных символов «*» и «?» или настраиваемых параметров поиска. Важно понимать, что если вы ничего не нашли, это еще не значит, что там этого нет.

Теперь вы знаете, как в эксель сделать поиск по столбцу, строке, любому диапазону, листу или даже книге.

Поделиться в социальных сетях:

statanaliz.info

как Китай строит цифровую альтернативу демократии

«Большой брат» в Китае не просто собирает море информации о гражданах самой населенной страны мира. Игры в демократию кончились, и теперь системы наблюдения и социального скоринга подменяют одну из важнейших ее функций — предоставляют обратную связь, которую авторитарным режимам обычно сложно получить.

В западной прессе китайская система тотальной слежки за гражданами чаще всего упоминается как непременная часть сценария по воплощению тоталитарной антиутопии в стране, где проживает 1,3 млрд человек. Обозреватель MIT Technology Review Кристина Ларсон обращает внимание на другой аспект: сбор и обобщение огромного количества данных о жизни граждан для властей подменяет одну из самых ценных черт демократии — обратную связь.

Одна из основных проблем авторитарного режима — это получение достоверной информации о происходящем. Запретив свободные СМИ, общественные дискуссии и посадив в тюрьмы оппозиционеров, вы укрепите властную вертикаль. Но придется придумать, как сориентироваться в происходящем и собрать необходимые для принятия управленческих решений данные.

Предыдущий председатель КНР Ху Цзиньтао пытался осторожно внедрять демократические механизмы. Си Цзиньпин, который управляет страной с 2012 года, опирается на высокие технологии: тотальную видеослежку, ИИ-алгоритмы и большие данные.

В мае на встрече в Китайской академии наук Си Цзиньпин назвал технологии ключом к «достижению великой цели создания социалистического и современного общества». При Ху Цзиньтао вы могли надеяться доставить гневную петицию в Пекин. При Си Цзиньпине система социального рейтинга просто не продаст вам билет на поезд.

Китай стремится стать мировым лидером в области ИИ к 2030 году и выделяет на реализацию этой цели $146,6 млрд — и лидерство это должно быть не только технологическим. Эксперт из вашингтонского Института Петерсона Мартин Шорземпа подчеркивает: «Ни у одного правительства в мире больше нет таких амбициозных и далеко идущих планов по использованию данных для того, чтобы изменить методы государственного управления».

Однако пока единой системы нет, а информация об эффективности отдельных опытов, которые проводят по всей стране, крайне ограничена. Каковы критерии оценки, как долго храниться персональной информации и какие ведомства могут ею воспользоваться — все это тайна. На фоне закрытости системы наибольшую огласку получают различные черные списки, на основании которых ограничивают права граждан. Результат их действия, по крайней мере, нагляден.

Значительная часть публикации посвящена использованию новых механизмов слежки в Синьцзян-Уйгурском автономном районе, где живут преимущественно мусульмане. Там на смартфоны граждан принудительно требуют установить приложение, которое распознает исламский контент и сообщает об этом в полицию. Обмен запрещенными материалами и подозрительные звонки жестко караются. По оценкам опрошенных MITTR экспертов, в спецлагерях содержат до 10% уйгуров, а усеянные камерами улицы крупнейших городов опустели.

Точные критерии оценки благонадежности неизвестны, по некоторым данным, система может присвоить повышенный ранг риска после получения емейла из-за рубежа или покупки слишком большого числа книг.

Тотальная слежка — один из пяти пугающих прогнозов о развитии ИИ, и в Китае он уже воплощается в жизнь.

hightech.plus

Изучаем pandas. Урок 4. Работа с пропусками в данных

Очень часто большие объемы данных, которые подготавливаются для последующего анализа, имеют пропуски. Для того, чтобы можно было использовать алгоритмы машинного обучения, строящие модели по этим данным, в большинстве случаев, необходимо эти пропуски чем-то и как-то заполнить. На вопрос “чем заполнять?” мы не будем отвечать в рамках данного урока, а вот на вопрос “как заполнять?” ответим.

  1. pandas и отсутствующие данные
  2. Замена отсутствующих данных
  3. Удаление объектов/столбцов с отсутствующими данными

Для начала, хочется сказать, что в документации по библиотеке pandas есть целый раздел, посвященный данной тематике. 

Для наших экспериментов создадим структуру DataFrame, которая будет содержать пропуски. Для этого импортируем необходимые нам библиотеки.

In [1]: import pandas as pd
In [2]: from io import StringIO

После этого создадим объект в формате csv. CSV – это один из наиболее простых и распространенных форматов хранения данных, в котором элементы отделяются друг от друга запятыми, более подробно о нем можете прочитать здесь.

In [3]: data = 'price,count,percent\n1,10,\n2,20,51\n3,30,'
In [4]: df = pd.read_csv(StringIO(data))

Полученный объект df – это DataFrame с пропусками.

In [5]: df
Out[5]:
  price count percent
0     1    10     NaN
1     2    20    51.0
2     3    30     NaN

В нашем примере, у объектов с индексами 0 и 2 отсутствуют данные в поле percent. Отсутствующие данные помечаются как NaN. Добавим к существующей структуре еще один объект (запись), у которого будет отсутствовать значение в поле count.

In [6]: df.loc[3] = {'price':4, 'count':None, 'percent':26.3}

In [7]: df
Out[7]:
  price count percent
0   1.0  10.0     NaN
1   2.0  20.0    51.0
2   3.0  30.0     NaN
3   4.0   NaN    26.3

Для начала обратимся к методам из библиотеки pandas, которые позволяют быстро определить наличие элементов NaN в структурах. Если таблица небольшая, то можно использовать библиотечный метод isnull. Выглядит это так.

In [8]: pd.isnull(df)
Out[8]:
  price count percent
0 False False    True
1 False False   False
2 False False    True
3 False True    False

Таким образом мы получаем таблицу того же размера, но на месте реальных данных в ней находятся логические переменные, которые принимают значение False, если значение поля у объекта есть, или True, если значение в данном поле – это NaN. В дополнение к этому можно посмотреть подробную информацию об объекте, для этого можно воспользоваться методом info().

In [9]: df.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 4 entries, 0 to 3
Data columns (total 3 columns):
price 4 non-null float64
count 3 non-null float64
percent 2 non-null float64
dtypes: float64(3)
memory usage: 128.0 bytes

В нашем примере видно, что объект df имеет три столбца (count, percent и price), при этом в столбце price все объекты значимы – не NaN, в столбце count – один NaN объект, в поле percent – два NaN объекта. Можно воспользоваться следующим подходом для получения количества NaN элементов в записях.

In [10]: df.isnull().sum()
Out[10]:
price 0
count 1
percent 2
dtype: int64

Отсутствующие данные объектов можно заменить на конкретные числовые значения, для этого можно использовать метод fillna(). Для экспериментов будем использовать структуру df, созданную в предыдущем разделе.

In [11]: df.isnull().sum()
Out[11]:
price 0
count 1
percent 2
dtype: int64

In [12]: df
Out[12]:
  price count percent
0   1.0  10.0     NaN
1   2.0  20.0    51.0
2   3.0  30.0     NaN
3   4.0   NaN    26.3

In [13]: df.fillna(0)
Out[13]:
  price count percent
0   1.0  10.0     0.0
1   2.0  20.0    51.0
2   3.0  30.0     0.0
3   4.0   0.0    26.3

Этот метод не изменяет текущую структуру, он возвращает структуру DataFrame, созданную на базе существующей, с заменой NaN значений на те, что переданы в метод в качестве аргумента. Данные можно заполнить средним значением по столбцу.

In [14]: df.fillna(df.mean())
Out[14]:
  price count percent
0   1.0  10.0   38.65
1   2.0  20.0   51.00
2   3.0  30.0   38.65
3   4.0  20.0   26.30

В зависимости от задачи используется тот или иной метод заполнения отсутствующих элементов, это может быть нулевое значение, математическое ожидание, медиана и т.п. Для замены NaN элементов на конкретные значения, можно использовать интерполяцию, которая реализована в методе interpolate(), алгоритм интерполяции задается через аргументы метода.

Довольно часто используемый подход при работе с отсутствующими данными – это удаление записей (строк) или полей (столбцов), в которых встречаются пропуски. Для того, чтобы удалить все объекты, которые содержат значения NaN воспользуйтесь методом dropna() без аргументов.

In [15]: df.dropna()
Out[15]:
  price count percent
1   2.0  20.0   51.0

Вместо записей, можно удалить поля, для этого нужно вызвать метод dropna с аргументом axis=1.

In [16]: df.dropna()
Out[16]:
  price count percent
1   2.0  20.0    51.0
In [17]: df.dropna(axis=1)
Out[17]:
  price
0   1.0
1   2.0
2   3.0
3   4.0

pandas позволяет задать порог на количество не-NaN элементов. В приведенном ниже примере будут удалены все столбцы, в которых количество не-NaN элементов меньше трех.

In [18]: df.dropna(axis = 1, thresh=3)
Out[18]:
  price count
0   1.0  10.0
1   2.0  20.0
2   3.0  30.0
3   4.0   NaN

P.S.

Все уроки по библиотеке Pandas собраны в книге “Pandas. Работа с данными”.

Книга: Pandas. Работа с данными

<<< Урок 3. Доступ к данным в структурах pandas

devpractice.ru

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *