# Инвертировать по

Инвертирует с группировкой по значениям lodash _.invertBy

> Каноническая страница: https://elysiatools.com/ru/tools/invert-by

- **Категория:** Data Processing

- **Ключевые слова:** инвертировать, объект, lodash, группа, ключи

## Обзор

Группирует ключи по значениям или преобразованным значениям.

**Особенности:**
- Использует lodash `_.invertBy`
- Группирует ключи в массивы
- Необязательный путь итератора

**Пример:**
- Объект: `{"a":"x","b":"x","c":"y"}`
- Результат: `{"x":["a","b"],"y":["c"]}`

## Входные данные

- **Объект** (textarea): Введите JSON объект
- **Путь итератора** (text): Необязательный путь свойства для преобразования

## Когда использовать

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

## Как это работает

- Введите исходный JSON-объект в поле ввода.
- При необходимости укажите путь итератора, чтобы сгруппировать данные по вложенным свойствам.
- Нажмите кнопку обработки, чтобы получить объект, где значения стали ключами, а исходные ключи — массивами значений.

## Сценарии использования

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

## Частые вопросы

### Что делает этот инструмент?

Он меняет местами ключи и значения в объекте, объединяя исходные ключи в массивы, если они имеют одинаковые значения.

### Можно ли группировать по вложенным свойствам?

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

### Какой формат данных на выходе?

Результатом является JSON-объект, где ключи — это уникальные значения из исходного объекта, а значения — массивы соответствующих им ключей.

### Используется ли какая-то библиотека?

Да, инструмент основан на функции _.invertBy из библиотеки lodash.

### Что произойдет, если значения не уникальны?

Инструмент соберет все ключи с одинаковыми значениями в один массив для каждого такого значения.

## Связанные инструменты

- [Счет по ключу](https://elysiatools.com/ru/tools/count-by): Считает элементы по ключу с lodash _.countBy
- [Глубокие значения по умолчанию](https://elysiatools.com/ru/tools/defaults-deep): Применяет глубокие значения по умолчанию с lodash _.defaultsDeep
- [Группировка по ключу](https://elysiatools.com/ru/tools/group-by): Группирует элементы по ключу с lodash _.groupBy
- [Инвертировать объект](https://elysiatools.com/ru/tools/invert-object): Инвертирует ключи и значения с lodash _.invert
- [Список унаследованных ключей](https://elysiatools.com/ru/tools/keys-in-list): Список собственных и унаследованных ключей с lodash _.keysIn
- [Список ключей](https://elysiatools.com/ru/tools/keys-list): Список собственных ключей с lodash _.keys
- [Unzip массивов](https://elysiatools.com/ru/tools/unzip-arrays): Разделяет сгруппированные массивы с lodash _.unzip
- [Zip массивов](https://elysiatools.com/ru/tools/zip-arrays): Объединяет массивы по индексу с lodash _.zip

## Примеры

- [Примеры Расширенного Применения Grafana](https://elysiatools.com/ru/samples/grafana-samples): Комплексные примеры Grafana, охватывающие продвинутый дизайн дашбордов, конфигурацию оповещений, интеграцию источников данных и разработку плагинов
- [Примеры QR-кодов](https://elysiatools.com/ru/samples/qrcode-samples): Примерные изображения QR-кодов для тестирования инструментов чтения и генерации QR-кодов
- [Примеры D3.js Визуализации Данных](https://elysiatools.com/ru/samples/d3js-data-visualization): Комплексные примеры визуализации данных D3.js, включая диаграммы, карты, анимации и интерактивные визуализации
- [Примеры JavaScript Toolchain Rome](https://elysiatools.com/ru/samples/rome): Примеры JavaScript toolchain Rome, включая конфигурацию, линтинг, форматирование, сборку и управление проектами

## Связанные материалы

- [Инструменты JSON-обмена и перевода форматов](https://elysiatools.com/ru/hubs/json-convert): Сравните инструменты преобразования JSON для CSV, YAML, TOML, GraphQL, XML, Markdown, Excel, BSON, EDN и других структурированных форматов в одном хабе.
- [Инструменты для проверки, diff и преобразования JSON](https://elysiatools.com/ru/hubs/json-utility): Соберите в одном хабе инструменты для форматирования JSON, сравнения версий, проверки путей, валидации схем, объединения файлов и преобразования данных для API и data workflows.
- [Генераторы JSON-схем, mock-данных и API-fixture](https://elysiatools.com/ru/hubs/json-generate): Подборка инструментов для генерации JSON-схем, сборки mock-payload и подготовки API-fixture в одном хабе.
- [Инструменты форматирования, diff и нормализации JSON](https://elysiatools.com/ru/hubs/json-format): Сравните инструменты форматирования JSON, diff, анализа логов, сравнения конфигураций и нормализации данных в одном хабе для удобной проверки JSON.
