<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Data Cleaning - Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</title>
	<atom:link href="https://python.ivan-shamaev.ru/tag/data-cleaning/feed/" rel="self" type="application/rss+xml" />
	<link>https://python.ivan-shamaev.ru/tag/data-cleaning/</link>
	<description>Библиотеки обработки данных. Примеры. Строки, списки, файлы, числа, массивы. Язык программирования Python 3 - скачать</description>
	<lastBuildDate>Sun, 15 Mar 2020 11:52:55 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.1</generator>

<image>
	<url>https://python.ivan-shamaev.ru/wp-content/uploads/2019/04/cropped-data_science_python3_logo-32x32.png</url>
	<title>Data Cleaning - Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</title>
	<link>https://python.ivan-shamaev.ru/tag/data-cleaning/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Очистка данных. Качество данных. Руководство по Data Cleaning</title>
		<link>https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/</link>
					<comments>https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/#respond</comments>
		
		<dc:creator><![CDATA[Шамаев Иван]]></dc:creator>
		<pubDate>Wed, 11 Mar 2020 05:53:41 +0000</pubDate>
				<category><![CDATA[Pandas. Обработка данных]]></category>
		<category><![CDATA[Data Cleaning]]></category>
		<category><![CDATA[Data Profiling]]></category>
		<category><![CDATA[Data Quality]]></category>
		<category><![CDATA[Качество данных]]></category>
		<category><![CDATA[Очистка данных]]></category>
		<category><![CDATA[Руководство по Data Cleaning]]></category>
		<guid isPermaLink="false">https://python.ivan-shamaev.ru/?p=675</guid>

					<description><![CDATA[<p>Введение. Почему в сфере работы с данными важно уделять внимание очистке данных и качеству данных? Независимо от вашего опыта работы с данными и построения отчетности &#8212; плохие данные практически всегда приводят к неверным решениям. Независимо от класса информационных систем, профессиональности специалистов по работе с данными, всегда выполняется условие: Мусор на входе =&#62; мусор на выходе. [&#8230;]</p>
<p>Сообщение <a href="https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/">Очистка данных. Качество данных. Руководство по Data Cleaning</a> появились сначала на <a href="https://python.ivan-shamaev.ru">Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a class="a2a_button_telegram" href="https://www.addtoany.com/add_to/telegram?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Telegram" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_vk" href="https://www.addtoany.com/add_to/vk?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="VK" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&#038;title=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" data-a2a-url="https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/" data-a2a-title="Очистка данных. Качество данных. Руководство по Data Cleaning"></a></p><h2><strong>Введение. Почему в сфере работы с данными важно уделять внимание очистке данных и качеству данных?</strong></h2>
<p>Независимо от вашего опыта работы с данными и построения отчетности &#8212; плохие данные практически всегда приводят к неверным решениям.</p>
<blockquote><p>Независимо от класса информационных систем, профессиональности специалистов по работе с данными, всегда выполняется условие:</p>
<p><strong>Мусор на входе =&gt; мусор на выходе.</strong></p></blockquote>
<p><strong>На качество данных в первую очередь влияют бизнес-процессы</strong>, которые организованы в компании <strong>по занесению бизнес-сущностей в информационную систему</strong>.</p>
<p><em>Например, как вводятся накладные, как разносятся накладные по платежкам, как выставляются счета. Все ли взаимосвязано для расчета дебиторской задолженности в автоматическом режиме и т.д. </em></p>
<p>За все это как раз и отвечают бизнес-процессы. Если компания маленькая, то все можно собрать в ручном режиме и бизнес-процессы (точнее их отсутствие) не оказывают большого влияния на бизнес. Но для среднего и крупного бизнеса бизнес-процессы по занесению и ведению информации &#8212; очень критичный вид деятельности.</p>
<p>Для любого специалиста по работе с данными очень важным &#171;параметром деятельности&#187; является авторитет данных, заработать который зачастую не так-то просто, а вот потерять его можно очень быстро.<br />
Если Вы на основе грязных данных разработаете отчеты, а потом скажете своей компании сделать что-то с этими результатами, которые окажутся неверными, то у Вас будет много неприятностей!</p>
<p>Неверные или противоречивые данные приводят к ложным выводам. То, насколько хорошо вы очищаете и понимаете данные, оказывает большое влияние на качество результатов.</p>
<p>Зачастую простой алгоритм может превзойти сложный алгоритм только потому, что ему были предоставлены более качественные данные.</p>
<blockquote><p><strong>Качество данных превосходит модные алгоритмы.</strong></p></blockquote>
<h2><strong>Что это означает качество данных? Каковы показатели качества данных?</strong></h2>
<p><span>Прежде чем предпринимать какие-либо действия, важно понять Вашу цель. Что Вы пытаетесь достичь, куда Вы хотите попасть в конце пути?</span></p>
<h3><strong>Качество данных &#8212; Data Quality (</strong><strong>Validity, A</strong><strong>ccuracy, </strong><strong>Completeness, </strong><strong>Consistency, </strong><strong>Uniformity)</strong></h3>
<p>Существует много определений качества данных, в общем, <strong>качество данных</strong> &#8212; это оценка того, насколько данные пригодны для использования и соответствуют его контексту обслуживания. Многие факторы помогают измерять качество данных, такие как: Согласованность данных, Точность данных, Уникальность данных, Полнота данных, Своевременность данных, Доступность и т.д.</p>
<h4 id="c093" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Достоверность данных &#8212; Validity</strong></h4>
<p id="4c27" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Степень, в которой данные соответствуют определенным бизнес-правилам или ограничениям.</span></p>
<ul class="">
<li id="4943" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm lj lk ll" data-selectable-paragraph=""><strong class="jd mb"><em class="jn"><span>Ограничения типа данных (Data-Type Constraints):</span></em></strong><span> значения в определенном столбце должны иметь определенный тип данных, например, логическое, числовое, формат даты и т.д.</span></li>
<li id="67a1" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><strong class="jd mb"><em class="jn"><span>Ограничения диапазона (Range Constraints):</span></em></strong><span> как правило, числа или даты должны попадать в определенный диапазон.</span></li>
<li id="c31b" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><strong class="jd mb"><em class="jn"><span>Обязательные ограничения (Mandatory Constraints)</span></em></strong><em class="jn"><span>:</span></em><span> некоторые столбцы не могут быть пустыми.</span></li>
<li id="e57b" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><strong class="jd mb"><em class="jn"><span>Ограничения уникальности (Unique Constraints):</span></em></strong><span> поле или комбинация полей должны быть уникальными в наборе данных.</span></li>
<li id="b2c4" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><strong class="jd mb"><em class="jn"><span>Ограничения Set-Membership</span></em><span>:</span></strong><span> значения столбца происходят из набора дискретных значений, например, пол человека может быть &#171;мужской&#187; или &#171;женский&#187;. Т.е. фиксированный, редко изменяемый набор значений (или никогда не изменяющийся).</span></li>
<li id="1ff7" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><strong class="jd mb"><em class="jn"><span>Ограничения внешнего ключа</span></em><span>:</span></strong><span> как и в реляционных базах данных, столбец внешнего ключа не может иметь значение, которого нет в указанном первичном ключе.</span></li>
<li id="f9b0" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><em><strong class="jd mb">Шаблоны регулярных выражений:</strong></em><span> текстовые поля, которые должны быть в определенном шаблоне. Например, для телефонных номеров может потребоваться шаблон (999) 999–9999.</span></li>
<li id="9ae1" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><em><strong>Проверка</strong></em><span><em><strong> между полями (Cross-field validation):</strong></em> должны выполняться определенные условия, охватывающие несколько полей. Например, дата выписки пациента из больницы не может быть раньше даты госпитализации.</span></li>
</ul>
<h4 id="beed" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Точность &#8212; Accuracy</strong></h4>
<p id="095c" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Степень, в которой данные близки к истинным значениям.</span></p>
<p id="40ab" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Хотя определение всех возможных допустимых значений позволяет легко обнаружить недействительные значения, это не означает, что они являются точными.</span></p>
<p id="d789" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span></span><em class="jn"><span>Действительный</span></em><span> почтовый адрес не может существовать на самом деле. А </span><em class="jn"><span>действительный</span></em><span> цвет глаз человека, скажем, синий, может быть действительным, но не соответствовать реальности.</span></p>
<p id="9883" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Еще одна вещь, которую следует отметить, это разница между достоверностью и точностью. Сказать, что вы живете на земле, на самом деле правда. Но не точно. Где на земле? Точнее сказать, что вы живете по определенному адресу.</span></p>
<h4 id="c93a" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Завершенность &#8212; Completeness</strong></h4>
<p id="e0a7" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Степень, в которой все необходимые данные известны.</span></p>
<p id="999b" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Отсутствие данных случается по разным причинам. Можно смягчить эту проблему, по возможности, задавая вопрос первоисточнику, скажем, повторное интервьюирование человека.</span></p>
<p id="94d1" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Скорее всего, субъект либо даст другой ответ, либо ответ будет трудно снова найти.</span></p>
<h4 id="7b19" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Консистенция &#8212; Consistency</strong></h4>
<p id="74e9" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Степень соответствия данных в одном наборе данных или в нескольких наборах данных.</span></p>
<p id="19e4" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Несоответствие возникает, когда два значения в наборе данных противоречат друг другу.</span></p>
<p id="d3cf" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Допустимый </span><em class="jn"></em><span>возраст, скажем, 10, может не совпадать с семейным положением, скажем, в разводе. Клиент записывается в две разные таблицы с двумя разными адресами.</span></p>
<p id="3201" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Какой из них является правдой?</span></p>
<h4 id="ee31" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Единообразие &#8212; Uniformity</strong></h4>
<p id="7427" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Степень, в которой данные указываются с использованием одной и той же единицы измерения.</span></p>
<p id="2685" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Вес может быть записан в фунтах или килограммах. Дата может соответствовать формату США или европейскому формату. Валюта иногда в долларах, а иногда в иенах.</span></p>
<p id="4306" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>И поэтому данные должны быть преобразованы в одну единицу измерения.</span></p>
<h3 id="dff3" class="lr kr cm ap ao ks fk ls fm lt lu lv lw lx ly lz ma"><strong>Рабочий процесс &#8212; Workflow (inspection, cleaning, verifying, reporting)</strong></h3>
<p id="2c73" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Рабочий процесс представляет собой последовательность из трех этапов, направленных на получение высококачественных данных, с учетом всех критериев, о которых мы говорили.</span></p>
<ol class="">
<li id="a074" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm mc lk ll" data-selectable-paragraph=""><strong class="jd mb"><span>Проверка (Inspection):</span></strong><span> обнаружение неожиданных, неправильных и противоречивых данных.</span></li>
<li id="636d" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm mc lk ll" data-selectable-paragraph=""><strong class="jd mb"><span>Очистка (Cleaning):</span></strong><span> исправить или удалить обнаруженные аномалии.</span></li>
<li id="2a00" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm mc lk ll" data-selectable-paragraph=""><strong class="jd mb"><span>Проверка (Verifying):</span></strong><span> После очистки результаты проверяются для проверки правильности.</span></li>
<li id="4a13" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm mc lk ll" data-selectable-paragraph=""><strong class="jd mb"><span>Отчетность (Reporting):</span></strong><span> записывается отчет об изменениях и качестве сохраненных данных.</span></li>
</ol>
<p id="1fcc" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>То, что вы видите как последовательный процесс, на самом деле является итеративным, бесконечным процессом. Можно переходить от проверки к проверке, когда обнаруживаются новые недостатки в данных.</span></p>
<h4 id="3def" class="lr kr cm ap ao ks fk ls fm lt lu lv lw lx ly lz ma"><strong>Проверка &#8212; Inspection</strong></h4>
<p id="99c3" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Проверка данных занимает много времени и требует использования многих методов для исследования основных данных для обнаружения ошибок. Вот некоторые из них:</span></p>
<h5 id="e545" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Профилирование данных &#8212; Data profiling</strong></h5>
<p id="7486" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span class="jd mb"><strong>Сводные </strong><b>статистические данные</b></span><span> о данных, которые называются профилирование данных, очень полезно, чтобы дать общее представление о качестве данных.</span></p>
<p id="ebc3" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, проверьте, соответствует ли определенный столбец определенным стандартам или образцу. Столбец данных записан в виде строки или числа?</span></p>
<p id="f9ae" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Сколько значений пропущено? Сколько уникальных значений в столбце и какого их распределение? Связан ли этот набор данных с другим набором данных?</span></p>
<h5 id="83d9" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Зрительные &#8212; Visualizations</strong></h5>
<p id="6bd6" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span><strong>Анализируя и визуализируя данные</strong> с использованием статистических методов, таких как среднее значение, стандартное отклонение, диапазон или квантили, можно найти значения, которые являются неожиданными и, наиболее вероятно, ошибочными.</span></p>
<p id="b455" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, визуализируя средний доход по странам, можно увидеть, что есть некоторые </span><strong class="jd mb"><span>выбросы</span></strong><span>. </span></p>
<p data-selectable-paragraph=""><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/some_outliers_data_quality.png"><img fetchpriority="high" decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/some_outliers_data_quality.png" alt="" width="869" height="453" class="aligncenter size-full wp-image-720" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/some_outliers_data_quality.png 869w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/some_outliers_data_quality-300x156.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/some_outliers_data_quality-768x400.png 768w" sizes="(max-width: 869px) 100vw, 869px" /></a></p>
<p class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>В некоторых странах есть люди, которые зарабатывают намного больше, чем кто-либо другой. <strong>Эти выбросы заслуживают изучения, но не обязательно, это это неверные данные.</strong></span><strong class="jd mb"></strong><em class="jn"><span></span></em><span></span></p>
<h5 id="98b3" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Пакеты программ &#8212; Software packages</strong></h5>
<p id="49fe" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Несколько пакетов программного обеспечения или библиотек, доступных на вашем языке, позволят вам указать ограничения и проверить данные на предмет нарушения этих ограничений.</span></p>
<p id="dd97" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Более того, они могут не только создать отчет о том, какие правила были нарушены и сколько раз, но также создать график того, какие столбцы связаны с какими правилами.</span></p>
<p data-selectable-paragraph=""><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality.png" alt="" width="1716" height="768" class="aligncenter size-full wp-image-692" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality.png 1716w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality-300x134.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality-1024x458.png 1024w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality-768x344.png 768w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality-1536x687.png 1536w" sizes="(max-width: 1716px) 100vw, 1716px" /></a> <a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality_2.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality_2.png" alt="" width="1406" height="1202" class="aligncenter size-full wp-image-693" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality_2.png 1406w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality_2-300x256.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality_2-1024x875.png 1024w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/edit_violation_frequency_of_top_10_edits_python_data_quality_2-768x657.png 768w" sizes="(max-width: 1406px) 100vw, 1406px" /></a><span>Возраст, например, не может быть отрицательным, а значит и рост. </span><span>Другие правила могут включать несколько столбцов в одной строке или в наборах данных.</span></p>
<h4 id="b498" class="lr kr cm ap ao ks fk ls fm lt lu lv lw lx ly lz ma"><strong>Очистка &#8212; Cleaning</strong></h4>
<p id="2960" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Очистка данных включает различные методы, основанные на проблемах и типах данных. Различные методы могут быть применены с каждым атрибутом данных, но имеют свои собственные особенности применения.</span></p>
<p id="b575" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>В целом, неверные данные либо удаляются, исправляются, либо присваиваются.</span></p>
<h5 id="d863" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Нерелевантные данные &#8212; Irrelevant data</strong></h5>
<p id="69df" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span><strong>Нерелевантные данные</strong> &#8212; это те, которые на самом деле не нужны и не вписываются в контекст проблемы, которую мы пытаемся решить.</span></p>
<p id="f178" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, если бы мы анализировали данные об общем состоянии здоровья населения, номер телефона не был бы необходим</span><span>.</span></p>
<p id="601f" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Точно так же, если бы вы были заинтересованы только в одной конкретной стране, вы не хотели бы включать в набор данных все другие страны. Или изучать только тех пациентов, которые ходили на операцию, мы бы не включали всех пациентов клиники</span><span>.</span></p>
<p id="c613" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Только если</span></strong><span> вы уверены, что часть данных не важна, вы можете удалить ее. В противном случае изучите матрицу корреляции между атрибутами объекта.</span></p>
<p id="f7cb" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>И даже если вы не заметили никакой корреляции, вы должны спросить кого-то, кто является экспертом в области. Вы никогда не знаете, что функция, которая кажется неактуальной, может быть очень актуальной с точки зрения предметной области, например с клинической точки зрения.</span></p>
<h5 id="dfac" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Дубликаты &#8212; Duplicates</strong></h5>
<p id="f532" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span><strong>Дубликаты</strong> &#8212; это значения, которые повторяются в вашем наборе данных (повторяться могут как транзакции, так и сущности в различных справочниках).</span></p>
<p id="79f7" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong>Дублирование часто случается, когда, например,</strong></p>
<ul class="">
<li id="2e9b" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm lj lk ll" data-selectable-paragraph=""><span>Данные объединены из разных источников</span></li>
<li id="5884" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><span>Пользователь может дважды нажать кнопку «Отправить», думая, что форма фактически не была отправлена.</span></li>
<li id="6872" class="jb jc cm ap jd b gb lm gd ln jg lo ji lp jk lq jm lj lk ll" data-selectable-paragraph=""><span>Запрос на онлайн-бронирование был подан дважды, исправляя неверную информацию, которая была введена случайно в первый раз.</span></li>
</ul>
<p id="d7da" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Распространенным симптомом является случай, когда два пользователя имеют одинаковый идентификационный номер. Или одна и та же статья была отменена дважды.</span></p>
<p id="f906" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>И поэтому они просто должны быть удалены.</span></p>
<h5 id="bc9d" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Тип преобразования &#8212; Type conversion</strong></h5>
<p id="d2d6" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Убедитесь, что числа хранятся в виде числовых типов данных. Дата должна храниться в виде объекта даты или метки времени Unix (количество секунд) и т.д.</span></p>
<p id="3a23" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Категориальные значения могут быть преобразованы в/из чисел при необходимости.</span></p>
<p id="5d2a" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Это можно быстро определить, взглянув на типы данных каждого столбца в сводке (мы обсуждали выше).</span></p>
<p id="bcee" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span><strong>Предупреждение:</strong> значения, которые нельзя преобразовать в указанный тип, следует преобразовать в значение NA (или любое другое) с отображением <strong>предупреждения</strong>. Это указывает на неправильное значение, которое должно быть исправлено.</span></p>
<h5 id="1d29" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Синтаксические ошибки &#8212; Syntax errors</strong></h5>
<p id="3ee0" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Удалить пробелы:</span></strong><span> следует удалить лишние пробелы в начале или конце строки.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">"   hello world  " =&gt; "hello world"</pre>
<p data-selectable-paragraph=""><strong>Строки заполнения:</strong><span> строки могут быть дополнены пробелами или другими символами до определенной ширины. </span><span>Например, некоторые числовые коды часто представлены с предшествующими нулями, чтобы они всегда имели одинаковое количество цифр.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">313 =&gt; 000313 (6 digits)</pre>
<p><strong class="jd mb"><span>Исправьте опечатки:</span></strong><span> строки могут быть введены разными способами, и неудивительно, что могут быть ошибки.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">Gender
m
Male
fem.
FemalE
Femle</pre>
<p><span>Считается, что эта категориальная переменная имеет 5 разных классов, а не 2, как ожидалось: мужской и женский, поскольку каждое значение различно.</span></p>
<blockquote><p>Bar plot полезно визуализировать все уникальные значения. Можно заметить, что некоторые значения различны, но означают одно и то же, то есть <strong>«information_technology» </strong>и<strong> «IT»</strong>. Или, возможно, разница только в заглавных буквах, то есть в <strong>«other»</strong> и <strong>«Other»</strong>.</p></blockquote>
<p id="8cdb" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Следовательно, наша обязанность состоит в том, чтобы по приведенным выше данным определить, является ли каждое значение мужским или женским. Как мы можем сделать это?.</span></p>
<p id="f147" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span><span style="color: #ff6600;"><strong>Первое решение</strong></span> состоит в том, чтобы вручную </span><strong class="jd mb"><span>сопоставить</span></strong><span> каждое значение с «мужской» или «женский».</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">dataframe['gender'].map({'m': 'male', fem.': 'female', ...})</pre>
<p><span><span style="color: #ff6600;"><strong>Второе решение</strong></span> &#8212; использовать </span><strong class="jd mb"><span>сопоставление с образцом</span></strong><span>. Например, мы можем искать вхождение m или M в поле в начале строки.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">re.sub (r "\ ^ m \ $", ' Male ', ' male ', flags = re. IGNORECASE )</pre>
<p><span><span style="color: #ff6600;"><strong>Третье решение</strong></span> заключается в использовании </span><strong class="jd mb"><span>нечеткого сопоставления</span></strong><span>: алгоритм, который определяет расстояние между ожидаемой строкой(-ами) и каждой из заданных. Его базовая реализация подсчитывает, сколько операций необходимо, чтобы превратить одну строку в другую.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">Gender   male  female
m         3      5
Male      1      3
fem.      5      3
FemalE    3      2
Femle     3      1</pre>
<p><span>Кроме того, если у вас есть переменная, такая как название города, вы подозреваете, что опечатки или похожие строки должны обрабатываться одинаково. </span></p>
<p><span>Например, “lisbon” можно ввести как “lisboa”, “lisbona”, “Lisbon”, и т.д.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">City     Distance from "lisbon"
lisbon       0
lisboa       1
Lisbon       1
lisbona      2
london       3
...</pre>
<p id="b3cc" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Если это так, то мы должны заменить все значения, которые означают одно и то же, на одно уникальное значение. В этом случае замените первые 4 строки на «lisbon».</span></p>
<blockquote class="jw jx jy">
<p id="cee5" class="jb jc cm jn jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Следите за значениями, такими как «0», «Не применимо», «NA», «None», «Null» или «INF», они могут означать одно и то же: <strong>значение отсутствует.</strong></span></p>
</blockquote>
<div class="n p">
<div class="z ab ac ae af fg ah ai">
<h5 id="c86b" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Стандартизация данных</strong></h5>
<p id="633b" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Наша обязанность &#8212; не только распознать опечатки, но и поместить каждое значение в один и тот же стандартизированный формат.</span></p>
<p id="4eec" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Для строк убедитесь, что все значения указаны в нижнем или верхнем регистре.</span></p>
<p id="441a" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Для числовых значений убедитесь, что все значения имеют определенную единицу измерения.</span></p>
<p id="45ec" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Высота, например, может быть в метрах и сантиметрах. Разница в 1 метр считается такой же, как разница в 1 сантиметр. Итак, задача здесь состоит в том, чтобы преобразовать высоты в одну единицу.</span></p>
<p id="6829" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Для дат, версия для США отличается от европейской версии. Запись даты в качестве метки времени (количество миллисекунд) не совпадает с записью даты в качестве объекта даты.</span></p>
<h5 id="d078" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Масштабирование / Преобразование &#8212; Scaling / Transformation</strong></h5>
<p id="f9b6" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Масштабирование означает преобразование ваших данных таким образом, чтобы они соответствовали определенному масштабу, например 0–100 или 0–1.</span></p>
<p id="6dc0" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, баллы по экзамену студента могут быть пересчитаны в процентах (0–100) вместо среднего балла (0–5).</span></p>
<p id="bf07" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Это также может помочь </span><span>упростить построение определенных типов данных</span><span>. Например, мы могли бы хотеть уменьшить асимметрию, чтобы помочь в построении графика (когда есть такое большое количество выбросов). Наиболее часто используемые функции &#8212; это log, square root и инверсия.</span></p>
<p id="b075" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Масштабирование также может выполняться для данных, которые имеют разные единицы измерения.</span></p>
<p id="5743" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Счета учеников на разных экзаменах, скажем, SAT и ACT, не могут сравниваться, поскольку эти два экзамена имеют разную шкалу. Разница в 1 балл SAT считается такой же, как разница в 1 балл ACT. В этом случае нам нужно </span><a href="https://medium.com/omarelgabrys-blog/statistics-probability-probability-distribution-35818d301cf4#fbef" class="bm dc ix iy iz ja" target="_blank" rel="noopener noreferrer"><span>изменить шкалу SAT и ACT,</span></a><span> чтобы взять числа, скажем, между 0–1.</span></p>
<blockquote>
<p id="b502" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong>Масштабируя, мы можем построить и сравнить различные оценки.</strong></p>
</blockquote>
<h5 id="4acb" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Нормализация &#8212; Normalization</strong></h5>
<p id="3451" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>В то время как нормализация также изменяет значения в диапазоне от 0 до 1, цель здесь состоит в том, чтобы преобразовать данные так, чтобы они нормально распределялись. </span></p>
<p class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><strong><em class="jn">Почему?</em></strong></p>
<p id="ea74" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>В большинстве случаев мы нормализуем данные, если будем использовать статистические методы, основанные на нормально распределенных данных. </span></p>
<p class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong><em class="jn">Как?</em></strong></p>
<p id="dc5a" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Можно использовать log функцию или, возможно, </span><a href="https://en.wikipedia.org/wiki/Normalization_(statistics)#Examples" class="bm dc ix iy iz ja" target="_blank" rel="noopener nofollow noreferrer"><span>использовать один из этих методов</span></a><span> .</span></p>
<blockquote class="jw jx jy">
<p id="c6d7" class="jb jc cm jn jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>В зависимости от используемого метода масштабирования форма распределения данных может измениться.Например, «</span><a href="https://en.wikipedia.org/wiki/Standard_score" class="bm dc ix iy iz ja" target="_blank" rel="noopener nofollow noreferrer"><span>Стандартная оценка Z</span></a><span>» и «</span><a href="https://en.wikipedia.org/wiki/Student%27s_t-statistic" class="bm dc ix iy iz ja" target="_blank" rel="noopener nofollow noreferrer"><span>t-статистика Стьюдента</span></a><span>» (приведенные в ссылке выше) сохраняют форму, в то время как log функция не может.</span></p>
</blockquote>
<p data-selectable-paragraph=""><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_1.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_1.png" alt="" width="640" height="480" class="aligncenter size-full wp-image-695" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_1.png 640w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_1-300x225.png 300w" sizes="(max-width: 640px) 100vw, 640px" /></a> <a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_2.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_2.png" alt="" width="640" height="480" class="aligncenter size-full wp-image-696" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_2.png 640w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/Normalization_vs_Scaling_using_Feature_scaling_2-300x225.png 300w" sizes="(max-width: 640px) 100vw, 640px" /></a></p>
<h5 id="cbda" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Недостающие значения &#8212; Missing values</strong></h5>
<p id="ccf6" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Учитывая тот факт, что отсутствующие значения неизбежны, возникает вопрос: что делать, когда мы сталкиваемся с ними? <strong>Игнорирование пропущенных данных</strong> &#8212; это то же самое, что создание дыр в лодке &#8212; она будет тонуть.</span></p>
<p id="d84c" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Есть три, или, возможно, больше, способов справиться с ними.</span></p>
<h6 id="8ade" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>&#8212; Первый способ. Удаление &#8212; Drop.</strong></h6>
<p id="b4de" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Если пропущенные значения в столбце встречаются редко и происходят случайным образом, то самое простое и прямое решение &#8212; отбросить наблюдения (строки) с пропущенными значениями.</span></p>
<p id="8b39" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Если большинство значений столбца отсутствуют и встречаются случайным образом, типичным решением является удаление всего столбца.</span></p>
<p id="a930" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Это особенно полезно при проведении статистического анализа, поскольку заполнение пропущенных значений может привести к неожиданным или необъективным результатам.</span></p>
<h6 id="e0af" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>&#8212; Второй способ. Внести значение &#8212; Impute.</strong></h6>
<p id="695f" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Это значит рассчитать недостающее значение на основе других наблюдений. Есть много способов сделать это.</span></p>
<p id="54aa" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>&#8212; Сначала</span></strong><span> используются </span><strong class="jd mb"><span>статистические значения,</span></strong><span> такие как среднее значение, медиана. Тем не менее, ни один из них не гарантирует непредвзятых данных, особенно если есть много пропущенных значений.</span></p>
<p id="51fb" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Среднее значение наиболее полезно, когда исходные данные не </span><span>искажены</span><span>, а </span><span>медиана более устойчива</span><span>, не чувствительна к выбросам и, таким образом, используется при искажении данных.</span></p>
<p id="d499" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>В нормально распределенных данных можно получить все значения, которые находятся в пределах 2 стандартных отклонений от среднего. Затем, заполните пропущенные значения, генерируя случайные числа между </span><code class="im nk nl nm nc b">(mean — 2 * std) &amp; (mean + 2 * std)</code></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">rand = np.random.randint(average_age - 2*std_age, average_age + 2*std_age, size = count_nan_age)
dataframe["age"][np.isnan(dataframe["age"])] = rand</pre>
<p id="d43b" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Второе</span></strong><span>. Используя </span><strong class="jd mb"><span>линейную регрессию</span></strong><span>. На основании существующих данных можно рассчитать линию наилучшего соответствия между двумя переменными, скажем, цена дома против размера м².</span></p>
<p id="9edb" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Стоит отметить, что модели линейной регрессии чувствительны к выбросам.</span></p>
<p id="db08" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>&#8212; в-третьих</span></strong><span>. </span><strong class="jd mb"><span>Hot-deck</span></strong><span>: Копирование значений из других похожих записей. Это полезно, только если у вас достаточно доступных данных. И это может быть применено к числовым и категориальным данным.</span></p>
<p id="ab57" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Можно использовать случайный подход, где мы заполняем отсутствующее значение </span><strong class="jd mb"><span>случайным</span></strong><span> значением. Сделав этот подход еще на шаг вперед, можно сначала разделить набор данных на </span><strong class="jd mb"><span>две группы (страты)</span></strong><span> на основе некоторой характеристики, например, пола, а затем заполнить пропущенные значения для разных полов по отдельности, случайным образом.</span></p>
<p id="2d8d" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>При </span><strong class="jd mb"><span>последовательном</span></strong><span> вменении «горячей колоды» столбец, содержащий пропущенные значения, сортируется в соответствии со </span><span>вспомогательной(-ыми</span><span> ) переменной(-ами), поэтому записи, имеющие похожие вспомогательные элементы, появляются последовательно. Затем каждое пропущенное значение заполняется значением первой следующей доступной записи.</span></p>
<p id="2ad5" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Что еще интереснее, так это то, что </span><strong class="jd mb"><span>вложение ближайшего</span></strong><span> соседа, которое классифицирует похожие записи и объединяет их, также может быть использовано. Пропущенное значение затем заполняется путем нахождения первых ? записей, ближайших к записи с пропущенными значениями. Затем значение выбирается из (или вычисляется из) ? ближайших соседей. В случае вычислений могут использоваться статистические методы, такие как среднее (как обсуждалось ранее).</span></p>
<h6 id="c9d0" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>&#8212; Третье. Flag.</strong></h6>
<p id="f953" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Некоторые утверждают, что заполнение пропущенных значений приводит к потере информации, независимо от того, какой метод вменения мы использовали.</span></p>
<p id="5281" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Это потому, что утверждение о том, что данные отсутствуют, само по себе информативно, и алгоритм должен знать об этом. В противном случае мы просто усиливаем шаблон, уже существующий другими функциями.</span></p>
<p id="1d8b" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Это особенно важно, когда пропущенные данные не случаются случайно. Возьмем, к примеру, проведенный опрос, в котором большинство людей из определенной расы отказываются отвечать на определенный вопрос.</span></p>
<p id="0230" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Пропущенные </span><strong class="jd mb"><span>числовые данные</span></strong><span> можно заполнить, скажем, 0, но эти нули необходимо игнорировать при вычислении любого статистического значения или построении графика распределения.</span></p>
<p id="ff76" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>В то время как </span><strong class="jd mb"><span>категориальные данные</span></strong><span> могут быть заполнены, скажем, «Отсутствует»: новая категория, которая сообщает, что этот фрагмент данных отсутствует.</span></p>
<h6 id="6eb9" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>&#8212; Принимать во внимание …</strong></h6>
<p id="6c2f" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Отсутствующие значения не совпадают со значениями по умолчанию. Например, ноль можно интерпретировать как отсутствующий или по умолчанию, но не оба.</span></p>
<p id="c328" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Отсутствующие значения не являются «неизвестными». Проведенное исследование, в котором некоторые люди не помнят, подвергались ли они издевательствам в школе или нет, должно рассматриваться и обозначаться как неизвестное и не пропущенное.</span></p>
<p id="c575" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Каждый раз, когда мы отбрасываем или приписываем значение, мы теряем информацию. Таким образом, пометка может прийти на помощь.</span></p>
<h5 id="ff4c" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Выпадающие значения &#8212; Outliers</strong></h5>
<p id="567f" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Это значения, которые значительно отличаются от всех других наблюдений. Любое значение данных, которое </span><a href="https://medium.com/omarelgabrys-blog/statistics-probability-exploratory-data-analysis-714f361b43d1#48f7" class="bm dc ix iy iz ja" target="_blank" rel="noopener noreferrer"><span>находится на расстоянии более (1,5 * IQR) от квартилей Q1 и Q3,</span></a><span> считается выбросом.</span></p>
<p id="65aa" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Выбросы невиновны, пока их вина не доказана. С учетом сказанного, их не следует удалять, если для этого нет веских причин.</span></p>
<p id="c610" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, можно заметить некоторые странные, подозрительные значения, которые вряд ли произойдут, и поэтому решает удалить их. Тем не менее, они заслуживают расследования, прежде чем удалить.</span></p>
<p id="50c7" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Стоит также отметить, что некоторые модели, такие как линейная регрессия, очень чувствительны к выбросам. Другими словами, выбросы могут отбросить модель, из которой собрана большая часть данных.</span></p>
<h5 id="f083" class="kq kr cm ap ao ks kt ku kv kw kx ky kz la lb lc ld"><strong>Ошибки в записях и между наборами данных &#8212; In-record &amp; cross-datasets errors</strong></h5>
<p id="4ecd" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Эти ошибки возникают из-за наличия двух или более значений в одной строке или между наборами данных, которые противоречат друг другу.</span></p>
<p id="f197" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, если у нас есть набор данных о стоимости жизни в городах. Общая колонка должна быть эквивалентна сумме арендной платы, транспорта и еды.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">city       rent  transportation food  total
libson     500        20         40    560
paris      750        40         60    850</pre>
<p id="284b" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Точно так же ребенок не может быть женат. Заработная плата работника не может быть меньше рассчитанных налогов.</span></p>
<p id="f319" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Та же идея применима к связанным данным в разных наборах данных.</span></p>
<h4 id="d05b" class="lr kr cm ap ao ks fk ls fm lt lu lv lw lx ly lz ma"><strong>Проверка (Верификация) &#8212; Verifying</strong></h4>
<p id="0cee" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Когда это сделано, следует проверить правильность, повторно проверив данные и убедившись, что они соблюдают правила и ограничения.</span></p>
<p id="10ee" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Например, после заполнения отсутствующих данных они могут нарушить любое из правил и ограничений.</span></p>
<p id="3c6c" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Это может потребовать некоторой ручной коррекции, если не возможно иначе.</span></p>
<h4 id="2380" class="lr kr cm ap ao ks fk ls fm lt lu lv lw lx ly lz ma"><strong>Составление отчетов &#8212; Reporting</strong></h4>
<p id="b8e6" class="jb jc cm ap jd b gb le gd lf jg lg ji lh jk li jm fb" data-selectable-paragraph=""><span>Отчет о том, насколько здоровы данные, одинаково важен для очистки.</span></p>
<p id="d430" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Как упоминалось ранее, программные пакеты или библиотеки могут генерировать отчеты о внесенных изменениях, какие правила были нарушены и сколько раз.</span></p>
<p id="874c" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Помимо регистрации нарушений, следует учитывать причины этих ошибок. Почему они произошли в первую очередь?</span></p>
<h2 id="751c" class="lr kr cm ap ao ks fk ls fm lt lu lv lw lx ly lz ma"><strong>Заключительная часть</strong></h2>
<p id="00ba" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Независимо от того, насколько надежным и сильным является процесс проверки и очистки, он будет страдать по мере поступления новых данных.</span></p>
<p id="fe28" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Лучше защититься от болезни, чем тратить время и силы на ее устранение.</span></p>
<p id="8044" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Эти вопросы помогают оценить и улучшить качество данных:</span></p>
<p id="883d" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Как собираются данные и при каких условиях? </span></strong><span>Среда, в которой были собраны данные, </span><em class="jn"><span>имеет</span></em><span> значение. Окружающая среда включает в себя, помимо прочего, местоположение, время, погодные условия и т.д.</span></p>
<p id="1841" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><span>Опрос субъектов по поводу их мнения относительно </span><em class="jn"><span>независимо</span></em><span>, пока они находятся на пути к работе не то же самое, в то время как они у себя дома. Пациенты в исследовании, которые испытывают трудности с использованием таблеток для ответа на вопросник, могут отбросить результаты.</span></p>
<p id="38d8" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Что представляют собой данные? </span></strong><span>Они включают всех? Только люди в городе? Или, возможно, только те, кто решил ответить, потому что у них было твердое мнение по теме.</span></p>
<p id="09bd" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Какие методы используются для очистки данных и почему? </span></strong><span>Различные методы могут быть лучше в разных ситуациях или с разными типами данных.</span></p>
<p id="7a3c" class="jb jc cm ap jd b gb je gd jf jg jh ji jj jk jl jm fb" data-selectable-paragraph=""><strong class="jd mb"><span>Вы вкладываете время и деньги в улучшение процесса? </span></strong><span>Инвестиции в людей и процесс так же важны, как и инвестиции в технологии.</span></p>
<h2><strong>Профилирование данных в Python 3 с помощью Pandas</strong></h2>
<p><span>Любой, кто работает с данными в Python, знаком с пакетом pandas. </span><span>Если это не так, pandas &#8212; это пакет для большинства данных, отформатированных по строкам и столбцам. </span><span>Если у вас еще нет библиотеки Pandas, обязательно установите ее, используя pip install в предпочитаемом вами терминале:</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="python">pip install pandas</pre>
<p><span>Теперь давайте посмотрим, что может сделать для нас реализация pandas по умолчанию:</span></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_1.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_1.png" alt="" width="790" height="498" class="aligncenter size-full wp-image-744" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_1.png 790w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_1-300x189.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_1-768x484.png 768w" sizes="(max-width: 790px) 100vw, 790px" /></a></p>
<p>Любой &#8216;DataFrame&#8217; в Pandas имеет метод .describe(), который возвращает приведенную выше сводку. Однако обратите внимание, что в выходных данных этого метода категориальные переменные отсутствуют. В приведенном выше примере столбец «method» полностью исключен из вывода!</p>
<h3><strong>Pandas Data Profiling</strong></h3>
<p>В этом разделе будет описана библиотека <strong>&#171;Pandas Profiling&#187;. </strong>Эта библиотека формирует многостраничный отчет (на картинке ниже только небольшая часть этого отчета).</p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_2.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_2.png" alt="" width="843" height="528" class="aligncenter size-full wp-image-747" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_2.png 843w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_2-300x188.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_2-768x481.png 768w" sizes="(max-width: 843px) 100vw, 843px" /></a></p>
<p id="e2c1" class="hw hx dt ar hy b hz ia ib ic id ie if ig ih ii ij dl" data-selectable-paragraph=""><span>Как бы вам понравилось, если бы я сказал вам, что смогу создать следующую статистику всего с 3 строками Python </span><em class="kl"><span>(фактически, только с </span></em><strong class="hy jq"><em class="kl"><span>1 строкой, если мы не посчитаем наш импорт.)</span></em><span> :</span></strong></p>
<ul class="">
<li id="b8c4" class="hw hx dt ar hy b hz ia ib ic id ie if ig ih ii ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span>Основы</span></strong><span> : тип, уникальные значения, пропущенные значения</span></li>
<li id="af4e" class="hw hx dt ar hy b hz kr ib ks id kt if ku ih kv ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span>Квантильная статистика,</span></strong><span> такая как минимальное значение, Q1, медиана, Q3, максимум, диапазон, межквартильный диапазон</span></li>
<li id="5b59" class="hw hx dt ar hy b hz kr ib ks id kt if ku ih kv ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span>Описательные статистические данные,</span></strong><span> такие как среднее значение, мода, стандартное отклонение, сумма, среднее абсолютное отклонение, коэффициент вариации, эксцесс, асимметрия</span></li>
<li id="a9b9" class="hw hx dt ar hy b hz kr ib ks id kt if ku ih kv ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span>Наиболее частые значения</span></strong></li>
<li id="9275" class="hw hx dt ar hy b hz kr ib ks id kt if ku ih kv ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span>Гистограмма</span></strong></li>
<li id="094e" class="hw hx dt ar hy b hz kr ib ks id kt if ku ih kv ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span>Выделение корреляций</span></strong><span> высококоррелированных переменных, матрицы Спирмена, Пирсона и Кендалла</span></li>
<li id="370e" class="hw hx dt ar hy b hz kr ib ks id kt if ku ih kv ij ko kp kq" data-selectable-paragraph=""><strong class="hy jq"><span></span></strong><span>Матрица <strong class="hy jq">отсутствующих значений</strong> , счетчик, тепловая карта и дендрограмма отсутствующих значений</span></li>
</ul>
<p id="f512" class="hw hx dt ar hy b hz ia ib ic id ie if ig ih ii ij dl" data-selectable-paragraph=""><em class="kl"><span>(Список функций прямо из </span></em><a href="https://github.com/pandas-profiling/pandas-profiling" class="cq fx jm jn jo jp" target="_blank" rel="noopener nofollow noreferrer"><em class="kl"><span>GitHub для профилирования Pandas</span></em></a><em class="kl"><span> )</span></em></p>
<p data-selectable-paragraph=""><span>Используя пакет Pandas Profiling!</span><br />
<span>Чтобы установить пакет Pandas Profiling, просто используйте pip install в своем терминале:</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="python">pip install pandas_profiling</pre>
<p><span>Опытные аналитики данных на первый взгляд могут посмеяться над тем, что они пушистые и кричащие, но это, безусловно, может быть полезно для быстрого получения непосредственного представления о ваших данных:</span></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_3.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_3.png" alt="" width="904" height="65" class="aligncenter size-full wp-image-748" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_3.png 904w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_3-300x22.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_3-768x55.png 768w" sizes="(max-width: 904px) 100vw, 904px" /></a></p>
<p id="9fb2" class="hw hx dt ar hy b hz ia ib ic id ie if ig ih ii ij dl" data-selectable-paragraph=""><span>Первое, что вы увидите, это </span><strong class="hy jq"><span>обзор</span></strong><span> (см. Рисунок выше), который дает вам очень высокую статистику ваших данных и переменных, а также </span><strong class="hy jq"><span>предупреждения,</span></strong><span> такие как высокая корреляция между переменными, высокая асимметрия и многое другое.</span></p>
<p id="8418" class="hw hx dt ar hy b hz ia ib ic id ie if ig ih ii ij dl" data-selectable-paragraph=""><span>Но это даже не близко ко всему. Прокручивая вниз, мы обнаруживаем, что этот отчет состоит из нескольких частей. Просто показывать результат этого 1-линейного с картинками не будет справедливо, поэтому я вместо этого сделал GIF:</span></p>
<p data-selectable-paragraph=""><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_4.gif"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/03/data_profiling_python_3_pandas_4.gif" alt="" width="600" height="555" class="aligncenter size-full wp-image-749" /></a></p>
<p data-selectable-paragraph=""><span>Я настоятельно рекомендую вам изучить возможности этого пакета самостоятельно &#8212; в конце концов &#8212; это всего лишь одна строка кода, и вы можете найти ее полезной для дальнейшего анализа данных.</span></p>
<pre class="EnlighterJSRAW" data-enlighter-language="python">import pandas as pd
import pandas_profiling
pd.read_csv('https://raw.githubusercontent.com/mwaskom/seaborn-data/master/planets.csv').profile_report()</pre>
</div>
</div>
<p><a class="a2a_button_telegram" href="https://www.addtoany.com/add_to/telegram?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Telegram" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_vk" href="https://www.addtoany.com/add_to/vk?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="VK" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&amp;linkname=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fdata-cleaning-guide-data-quality%2F&#038;title=%D0%9E%D1%87%D0%B8%D1%81%D1%82%D0%BA%D0%B0%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%9A%D0%B0%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%BE%20Data%20Cleaning" data-a2a-url="https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/" data-a2a-title="Очистка данных. Качество данных. Руководство по Data Cleaning"></a></p><p>Сообщение <a href="https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/">Очистка данных. Качество данных. Руководство по Data Cleaning</a> появились сначала на <a href="https://python.ivan-shamaev.ru">Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://python.ivan-shamaev.ru/data-cleaning-guide-data-quality/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
