Исходный размер 992x1488

Анализ данных о получении виз в США

PROTECT STATUS: not protected

ВВОДНАЯ ЧАСТЬ

Выбор источника данных

В данном проекте проводится исследовательский анализ данных (EDA) на основе датасета Nonimmigrant Visa Issuances by Visa Class and by Nationality. Датасет содержит информацию о заявках и решениях по неиммиграционным визам, включая такие параметры, как тип визы, страна заявителя, а также итоговый статус визового запроса. Данные были получены из открытых официальных источников, публикуемых государственными структурами США, что обеспечивает их достоверность и полноту.

Первоисточник — U.S. Department of Labor (DOL) Office of Foreign Labor Certification (OFLC)

Актуальность анализа

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

Виды графиков

Для визуализации и анализа данных в проекте были использованы различные виды графиков.

Линейные графики — использовались для анализа изменений показателей и выявления общих тенденций, смещены ли данные влево, вправо или имеют нормальное распределение. Столбчатые диаграммы — использовались для сравнения количества выданных виз между различными странами и визовыми категориями. Гистограммы — позволили проанализировать распределение значений и выявить наиболее распространенные диапазоны показателей. Круговые диаграммы — применялись для отображения долей различных категорий в общем объеме данных. Box Plot (ящики с усами) — применялись для анализа распределения числовых переменных и выявления медианы, межквартильного размаха и выбросов. Этот тип графиков особенно полезен для сравнения распределений между несколькими группами. Тепловые карты (Heatmap) — использовались для визуализации корреляций между числовыми признаками. Они позволяют быстро определить силу и направление взаимосвязей между переменными и выявить наиболее значимые зависимости в данных.

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

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

ЭТАПЫ РАБОТЫ

Начало работы

В начале импортируем все нужные библиотеки для работы с данными и визуализацией; отключаем предупреждения и включаем показ графиков в ноутбуке. Я также решила сделать быструю проверку данных. Загружаем CSV-файл в DataFrame и показываем первые 10 строк. После я определила типы данных и сделала краткую выжимку по определению данных (кол-во строк, колонок, типы данных и количество непустых значений).

Исходный размер 1374x238
Исходный размер 1372x55
Исходный размер 596x414

df.info ()

Я также разделила колонки на числовые и категориальные, вывела количество и список числовых и категориальных признаков и после для каждой категориальной колонки показала процентное распределение уникальных значений. Из этого анализа я поняла, что:

  1. Столбец user-id нужно удалить, так как он не несет никакой значимой информации.
  2. В колонке continent видно, что Азия занимает 66%, значит данные смещены. Нужно объединить все остальные континенты в одну категорию.
  3. Столбец unit_of_wage кажется важным, так как большинство значений — годовые контракты.
Исходный размер 1378x148
Исходный размер 1375x100

Графики

Исходный размер 1374x196
Исходный размер 1107x736

Строим линейные графики для каждого числового признака, чтобы посмотреть распределение данных. Сначала создаем сетку 2x2 для графиков, выбираем признаки по которым будут графики (no_of_employees, yr_of_estab, prevailing_wage) и в конце подгоняем, чтобы графики не налезали друг на друга.

На основе предоставленных графиков одномерного анализа числовых признаков можно выделить несколько ключевых инсайтов о распределении данных по трем параметрам:

  1. Количество сотрудников (no_of_employees) Распределение: Плотность резко падает после нуля, что указывает на сильный перекос вправо (правосторонняя асимметрия). Инсайт: Подавляющее большинство компаний в наборе данных имеют очень небольшое количество сотрудников (близкое к нулю). Случаи с большим штатом (100 000+ и далее до 600 000) встречаются крайне редко и представляют собой выбросы или длинный хвост распределения. 2.Год основания (yr_of_estab) Распределение: Распределение имеет один сильный пик и также скошено вправо (в сторону недавних лет). Инсайт: Большинство компаний были основаны недавно, с огромной концентрацией в период с 1990 по 2000 год. Компании, основанные до 1950 года, встречаются значительно реже.
  2. Преобладающая заработная плата (prevailing_wage) Распределение: Плотность имеет бимодальную форму, то есть два основных пика. Инсайт: Существует две основные группы заработных плат: одна сосредоточена в диапазоне $40 000–$50 000, а вторая, более высокая, — около $80 000–$90 000. Зарплаты, превышающие $200 000, встречаются редко.
0
Исходный размер 1247x631

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

На основе представленных графиков одномерного анализа категориальных признаков можно выделить несколько ключевых инсайтов о распределении данных:

  1. Континент (continent): Подавляющее большинство заявок поступает из Азии (более 14 000 случаев). Остальные континенты имеют значительно меньшее количество заявок: Северная Америка и Европа — около 3000, Южная Америка и Океания — менее 1000.
  2. Образование сотрудника (education_of_employee): Наиболее распространенный уровень образования среди сотрудников — это степень бакалавра (Bachelor's) и магистра (Master's), каждый из которых насчитывает около 9 000 - 10 000 случаев. Высокая школа (High School) имеет около 4000 случаев, а докторантура (Doctorate) — около 2000.
  3. Опыт работы (has_job_experience): Большинство заявителей (более 14 000) имеют опыт работы (Yes). Случаев без опыта работы (No) значительно меньше (около 10 000).
  4. Требуется обучение (requires_job_training): Подавляющее большинство случаев не требует дополнительного обучения (No), что составляет около 20 000 записей. Требуется обучение менее чем в 5000 случаев.
  5. Регион занятости (region_of_employment): Северо-восток (Northeast) и Юг (South) являются лидирующими регионами занятости (около 7 000 случаев в каждом). Запад (West) и Средний Запад (Midwest) следуют за ними, а регион Остров (Island) имеет наименьшее количество случаев.
  6. Единица измерения зарплаты (unit_of_wage): Почти все зарплаты измеряются на годовой (Year) основе (более 20 000 случаев). Измерение по часам (Hour), неделям (Week) или месяцам (Month) встречается крайне редко.
  7. Статус полной занятости (full_time_position): Абсолютное большинство позиций являются полной занятостью (Full time position) — более 20 000 случаев. Частичная занятость (или неполная) встречается редко.
  8. Статус кейса (case_status): Количество сертифицированных (Certified) кейсов несколько превышает количество отклоненных (Denied) кейсов.
0

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

Исходный размер 838x515

sn.heatmap (df.corr (numeric_only=True), annot=True, cmap='Blues')

На основе предоставленной тепловой карты корреляции, которая измеряет силу и направление линейной взаимосвязи между тремя переменными, можно сделать следующие инсайты:

  1. Отсутствие значимых линейных связей: Наиболее важный инсайт заключается в том, что ни одна из пар переменных (no_of_employees, yr_of_estab, prevailing_wage) не имеет сильной или даже умеренной линейной корреляции. Все коэффициенты корреляции, кроме диагональных единиц (которые показывают идеальную корреляцию переменной с самой собой), очень близки к нулю.
  2. Чрезвычайно слабая связь между количеством сотрудников и годом основания: Коэффициент корреляции между no_of_employees и yr_of_estab составляет -0.018. Это указывает на практически полное отсутствие линейной зависимости между возрастом компании и количеством ее сотрудников. Немного отрицательное значение означает, что едва заметная тенденция к меньшему количеству сотрудников может наблюдаться в более старых компаниях, но эта связь настолько слаба, что ею можно пренебречь.
  3. Отсутствие связи между зарплатой и другими параметрами: Коэффициенты, связывающие prevailing_wage (преобладающая заработная плата) с другими переменными, также минимальны:
  • Связь с no_of_employees составляет -0.0095. Это говорит о том, что размер зарплаты не зависит от количества сотрудников в компании.
  • Связь с yr_of_estab составляет 0.012. Это означает, что год основания компании также не оказывает влияния на уровень преобладающей заработной платы.
  1. Визуальное подтверждение слабости связей: Светлые, "холодные" синие оттенки в ячейках (за исключением главной диагонали) наглядно демонстрируют, что значения коэффициентов близки к нулю, подтверждая отсутствие сильных взаимосвязей.

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

Исходный размер 1371x322

Строим boxplot и гистограмму для каждого непрерывного признака, разделяя по 'case_status', чтобы увидеть выбросы и распределение.

Исходный размер 733x731
Анализ данных о получении виз в США
Проект создан 17.01.2026