Категорию: Категории водительских прав: виды, расшифровка :: Autonews

Содержание

Обучение в автошколе — категория B

Стандарт

Автомобили:

Hyundai Solaris | Renault Logan | VW Polo Kia Rio | Ford Focus

Обучение на а/м с МКПП и АКПП

Срок обучения 3.5 месяца


  • Теоретическая часть:

    130 часов очно в аудиториях или дистанционно

  • Практическая часть:

    Включено 30 предоплаченных часов вождения.

Комфорт+

Автомобили:

Класс «Комфорт+»

Обучение на а/м с МКПП и АКПП

Срок обучения 3.5 месяца


  • Теоретическая часть:

    130 часов очно в аудиториях или дистанционно

  • Практическая часть:

    Включено 66 предоплаченных часов вождения

Внимание! Подробную информацию о группах и стоимости обучения можно узнать в разделе «Места обучения»

Если в Ваших планах отказаться от услуг перевозчиков и самостоятельно передвигаться за рулем собственного автомобиля, то для начала следует пройти в автошколе обучение на права категории «B».

Категория «B» — это самая популярная категория по причине того, что ее присвоение предоставляет возможность управления легковыми автомобилями, а также небольшими грузовиками и микроавтобусами.

Что представляет собой эта категория?

Категория «В» предоставляет возможность сесть за руль легкового автомобиля, грузового автомобиля с разрешенной максимальной мощностью до 3,5 тонн, а также микроавтобуса, у которого число посадочных мест, помимо сиденья водителя не превышает 8.

Правила дорожного движения меняются ежегодно, вносятся уточнения, дополнения, новые пункты правил, добавляются новые знаки. Во многом это обусловлено тем, что прогресс на месте не стоит. Появляются новые транспортные средства, для управления которых требуется сдача на права. Теперь сдав экзамены на категорию «B», новоиспеченные водители получают право управлять и ТС, относящимися к В1: квадроциклы, трициклы с автомобильным типом руля и массой более 400 кг, мощностью свыше 15 кВт (20 л.с.)

Кто может обучаться на эту категорию?

Согласно действующему законодательству обучаться на категорию «В» могут граждане достигшие возраста 16 лет. Сдавать экзамены в ГИБДД можно будет только по достижению 17 лет, для этого необходимо предоставить нотариально заверенное согласие от одного или двух родителей (опекунов), ну а получить заветное водительское удостоверение можно только по достижению совершеннолетия, т.е. в 18 лет.

Автошколы: категория «B»

Выбирая автошколу, стоит учитывать требования, которые предъявляются к автошколе, уважающей своих учеников.

Что должна иметь автошкола?

1. Лицензию на предоставление образовательных услуг.

2. Учебную площадку для занятий по вождению.

3. Заключение от ГИБДД о том, что материально-техническая база соответствует требованиям стандартов.

4. Преподавателей ПДД, имеющих соответствующую квалификацию, а также инструкторов с огромным опытом вождения.

5. Гибкое расписание занятий: группы выходного дня, вечерние и дневные группы, а также дистанционное обучение.

6. Оптимальные цены на обучение.

7. Возможность выдачи свидетельства о профессии водитель.

Обучение продолжается несколько месяцев, поэтому выбор конкретной автошколы во многом определит в дальнейшем не только качество полученных знаний, но и уверенность на дороге. Прежде, чем выучиться на права категории «B» в определенной автошколе, почитайте отзывы тех, кто уже прошел обучение. Учитесь на ошибках других, обращая постоянно внимание на мелочи и нюансы.

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

Программа обучения

Программа обучения на категорию «В» для управления легковыми автомобилями объемом 190 часов состоит из двух этапов теоретического и практического.

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

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

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

После сдачи экзамена в школе, присваивается свидетельство о профессии водитель.

Водительское удостоверение на категорию «В» присваивается после того, как ученик успешно сдаст квалификационный экзамен в ГИБДД.

Переименование цветовой категории

Цветовые категории — это отличный способ визуально сгруппировать похожие сообщения, задачи, контакты или события календаря.

  1. Выберите элемент Outlook (сообщение электронной почты, событие календаря, контакт или задачу).

  2. На ленте в группе Теги нажмите кнопку Классифицироватьи выберите все категории.

    Примечание: Для открытых элементов календаря группа Теги отображается на вкладке Встречаили Собрание. Для открытого контакта или задачи группа Теги отображается на вкладке Контакт или Задача.

  3. Выберите категорию и нажмите кнопку

    Переименовать.

  4. Введите новое имя для цветовой категории и нажмите ввод.

  1. На панели инструментов нажмите кнопку Выбрать категорию .

  2. Выберите пункт Все категории.

  3. В списке Имя выберите название цветовой категории и щелкните Переименовать.

  4. В списке Имя введите новое имя для цветовой категории.

    • Чтобы автоматически назначать цветовую категорию для элементов, выбранных в главном окне Microsoft Outlook, в списке Имя выберите цветовую категорию и нажмите кнопку ОК.

    • При первом назначении элементу существующей цветовой категории вам будет предложено переименовать ее.

Как получить категорию B не учась автошколе, если есть «C» или права на управление трактором?

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

Главный вопрос, который интересует автолюбителей — можно ли открыть соответствующую категорию на легковые автомобили, если не проходить для этого обучение в автошколе? Если говорить про стандартную процедуру оформления прав, то она не вызывает вопросов ни у кого из водителей. Для начала необходимо пройти обучение в соответствующей автошколе, а после сдать экзамен, состоящий из теоретической и практической частей. При успешной сдаче автолюбителю остается только получить водительское удостоверение в ГИБДД.

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

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

Известны случаи, когда инспекторы ГИБДД ловили автомобилистов, у которых в правах открыта категория С, а они передвигались на легковом транспортном средстве. При таких обстоятельствах придется нарваться на большой административный штраф. Кроме того, транспортное средство сотрудники полиции заберут на штрафстоянку. Примечательно, что забрать впоследствии машину со спецплощадки сможет только водитель, у которого имеются права с открытой категорией В и он вписан в действующую страховку.

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

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

Категория A

Автошкола очень хорошая, во первых менеджеры всегда позвонят, напомнят, помогут и подскажут, отдельное спасибо преподавателю теории Елене Александровне, очень добрый и позитивный преподаватель, всегда все объяснит и по несколько раз, что б наверняка, благодаря ей теория даётся легчайше, и огромнейшее спасибо инструктору Верташову Виталию, очень рад что попал именно на него, очень хороший инструктор, он учит именно для того, что б ты понял что как происходит, все объясняет, помогает, всегда выручает, даже когда я перепутал время, что бы я не стоял на морозе, приехал и откатал в свой обеденный перерыв). Считаю что это лучший инструктор, и всем советую идти именно к нему, если у него учишься, сдашь все 10000%))) Спасибо вам большое, благодаря вам у меня будут права))))

Марк

Хочу поблагодарить коллектив автошколы, особенно инструктора Дмитриева Яна Николаевича, очень хороший человек, просто замечательный инструктор, сдал с первого раза дром и город, спасибо менеджеру на Бардина Светлане, добрый и отзывчивый человек

Максим

Спасибо автошколе «За рулем» Права получил с 1 раза. Учился у инструктора Язев Владимира. Хорошо обучает вождению на В категорию, все ошибки подробно объясняет.

Владислав

Хочу поблагодарить Верташева Виталю за обучение, все очень понравилось. Чувствуешь себя уверенно когда рядом спокойный инструктор,никуда не торопится, все объясняет, больше спасибо.

Светлана

Как Проходит Обучение На Категорию А

Как получить права категории А

На сегодняшний день диплом мотошколы является обязательным документом для того, чтобы сдать экзамен в ГИБДД. Раньше можно было прийти на экзамен как человек, самостоятельно подготовившийся, сейчас же так не пойдет. В ГИБДД нужно прийти с документом об окончании мотошколы. Поэтому необходимо пройти профессиональное обучение на категорию А у квалифицированных инструкторов, получить соответствующее удостоверение, и тогда с полным правом управлять мотоциклом на законных основаниях.

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

ПДД категории А

Первый этап обучения во всех авто- и мотошколах – это теория. И самое первое – это правила дорожного движения. Без знания правил невозможно ездить по дорогам общего пользования.

Как таковых, отдельных правил дорожного движения (ПДД) для мотоциклистов не существует, но есть ряд пунктов, которые относятся непосредственно к водителям мотоциклов.

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

Сдача площадки на права категории А

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

Например, упражнение «габаритный коридор» – это моделирование движения в междурядье стоящих в пробке автомобилей. Двигаясь между машинами, нужно уметь держать равновесие и маневрировать на минимальной скорости.

Упражнение «скоростное маневрирование» также готовит обучающихся к езде в городе. В этом упражнении нужно последовательно объехать пять конусов по “змейке”, совершить разворот налево на 180 градусов, проехать с разгоном по прямой, проехать габаритные ворота и остановиться на расстоянии, не превышающим 0.5 метра от линии «СТОП». На все упражнение дается 35 секунд. Это упражнение действительно полезное и требует устойчивых навыков вождения и концентрации внимания.

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

Если в этом ключе рассматривать большие, тяжелые мотоциклы, то стоит обратить внимание на то, что у такого мотоцикла по умолчанию скорость на первой передаче будет порядка 10 км/ч. В пробках же часто возникает необходимость ехать медленнее, чем он едет даже «на холостых», и тогда нужно использовать сцепление, слегка поджимать задний тормоз и при этом немного «играть» газом, чтобы двигатель не заглох. Эти навыки прекрасно оттачиваются при упражнении «восьмерка».
При выполнении «восьмерки» важно правильно настраивать свой взгляд, а именно смотреть “на шаг вперед”. Это тоже азы вождения мотоцикла: куда мотоциклист смотрит – туда и едет.

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

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

Чему учат в мотошколе.

Подготовка к экзамену — это не просто формальность. В мотошколе ученик получает азы управления, без которых нечего делать на дорогах. Но с другой стороны, такая программа не даст полный спектр умений, которые нужны для того чтобы полноценно владеть мотоциклом, чтобы чувствовать себя на дороге «как рыба в воде». Поэтому для тех, кто действительно хочет стать профессионалом, рекомендуется брать расширенные курсы. Либо, как минимум, доводить навыки, приобретенные в рамках программы подготовки к экзамену, до совершенства и выполнять все упражнения на разных скоростях.

В нашей мотошколе подход к ученикам очень гибкий: все зависит от того, насколько легко дается обучение человеку. Если ученик взял стандартную программу курса подготовки к сдаче экзамена в ГИБДД и успешно освоил ее за меньшее количество часов, то в рамках оставшихся часов наши инструкторы предлагают к изучению дополнительные, более сложные и интересные элементы вождения.
Еще важно обратить внимание на то, чтобы в выбранной мотошколе была возможность пробовать разные мотоциклы. Для начала с помощью инструктора выбрать наиболее комфортный для себя, а уже потом, освоившись на нем, можно пересаживаться на другие байки и тренировать свои навыки дальше. Сравнить, на каком Вам будет удобнее и легче, возможно, попробовать мотоциклы не одного класса, а разных. Тогда, к концу обучения Вам станет понятно, на выборе какого мотоцикла можно будет остановиться при покупке.

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

Хотелось бы акцентировать внимание на такой момент: когда Вы идете в ГИБДД сдавать на права категории А, попробуйте собраться с духом и настроиться на положительный результат. Постарайтесь создать для себя комфортные условия для сдачи экзамена:

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

Когда Вы создадите для себя более-менее комфортные условия, нервничать не придется, и экзамен будет сдать проще.

Получили права? А что дальше?

Ну что ж, экзамен сдан и права получены… Но даже когда права уже получены, это не значит, что Вы оседлаете сразу своего нового железного коня и смело рванете кататься по городским пробкам. Как показывает практика, к сожалению, каких бы успехов на обучении в мотошколе Вы не достигли, для уверенного и безопасного передвижению по городу этого бывает недостаточно. Применить на деле все то, чему Вас научили в школе, не так просто. Первый выезд на улицы города – это жесткий стресс, даже если вы автолюбитель со стажем. Именно поэтому в нашей мотошколе есть услуга выезда в город в сопровождении инструктора. В чем плюсы? Во время выезда с инструктором, Вы получаете полную поддержку. Конечно, Вы едете на своем мотоцикле, инструктор – на своем. С инструктором всегда поддерживается голосовая связь по блютуз-гарнитуре, и это позволяет быстро скорректировать и избежать потенциально опасных действий. Инструктор дает Вам подсказки в том момент, когда они Вам нужны. Такое занятие будет очень полезно для того, чтобы отработать тактику езды:

  • как взаимодействовать с другими участниками движения,
  • как считывать дорожную обстановку и как реагировать на ее изменения,
  • как прогнозировать опасности,
  • как учитывать наперед свои и чужие ошибки
  • как контролировать «слепые зоны», свои и чужие
  • как безопасно обгонять, опережать
  • как передвигаться в междурядье

и многие моменты, из которых и состоит вся дорожная жизнь.

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

«Я слышу — я забываю. Я вижу — я запоминаю. Я делаю — я понимаю.»

Обучение и переобучение на категорию «С»

Обучение водителей на категорию «С» требуется для управления тяжелыми грузовыми автомобилями. Масса автомобиля этой категории превышает 3500 кг, но вес прицепа должен оставаться в пределах 750 кг. Все автовладельцы, начинающие свой путь в мир грузовых машин, должны начинать именно с водительских прав категории «С».

Как получить права этой категории?

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

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

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

Особенности переобучения

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

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

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

Настройки категорий

Чтобы попасть в настройки категории, наведите курсор на названии категории и нажмите на шестеренку. В контекстном меню нажмите «Настроить категорию».

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

  1. Основные настройки категории
  2. Редактирование адреса категории
  3. Сортировка товаров
  4. Сортировка по популярности
  5. Прочие настройки
  6. Изображение категории
  7. Каналы продаж для категории

Основные настройки категории

 

  1. «Название» – наименование категории. Под этим наименованием категория также видна и на сайте.
  2. «Адрес» – URL категории, под которым она будет доступна на сайте. Данную опцию мы рассмотрим чуть ниже.
  3. «Находится в» – здесь можно выбрать категорию, которая должна являться родителем настраиваемой категории. На примере выше выбрана категория «Каталог», это означает, что иерархия будет такой: «Каталог → Техника». Данный инструмент можно использовать как альтернативу ручному перемещению категории по витрине.
  4. «Скрыть» – данная галочка скрывает категорию с сайта и из файла sitemap.xml.
    При этом категория остается доступной по прямому URL, и переход по адресу не будет приводить к ошибке 404.
    В бэк-офисе категория остается на месте, однако ее название приобретает серый цвет:

    Скрытие категории удобно использовать при редактировании HTML-кода (например, когда необходимо вывести плитки категорий брендов на главной странице, но в то же время не показывать саму категорию «Бренды» в меню).
    Через шаблонизатор Liquid скрытая категория доступна только через пермалинк: {{ collections[‘handle’].title }}
  5. «Содержит все товары из подкатегорий» – если активно, категория будет автоматически «собирать» в себя все товары, которые содержатся во всех вложенных в нее подкатегориях всех уровней. Например, если применить настройку к категории 0 уровня «Каталог», при входе в эту категорию на сайте посетитель увидит абсолютно все товары, которые доступны в магазине.
    Настройки сортировки товаров, примененные во вложенных подкатегориях, системой в этом случае игнорируются и применяются только при входе в соответствующие подкатегории.
  6. «Умная категория» – данная опция идейно похожа на предыдущую, но собирает только товары, удовлетворящие определенным условиям, из всей номенклатуры магазина (в том числе со склада). Подробнее с функционалом умных категорий можно ознакомиться здесь.
  7. «Сортировка товаров» – вариант сортировки товаров, который применяется по умолчанию при входе в категорию. См. ниже.

Редактирование адреса категории

Нажмите на иконку карандаша напротив пункта «Адрес»:

Появится модальное окно следующего содержания:

  1. Впишите в это поле новый пермалинк (идентификатор) категории. Например, если вписать tech, категория станет доступной по адресу /collection/tech.
  2. «Добавление редиректа» – если активно, при смене пермалинка категории система автоматически создаст редирект в разделе «Настройки → Редиректы». Старым адресом будет текущий адрес категории, новым станет /collection/[новый пермалинк].
    Желательно отметить данную галочку, если категория уже индексировалась поисковиками, чтобы при последующих обходах робот поисковика не получил ошибку 404, а попал на новый адрес (в этом случае после нескольких повторных обходов адрес категории поменяется и в результатах поиска).
  3. Кнопка обновления адреса позволяет автоматически проставить в поле 1 тот пермалинк, который был у категории ранее. Актуально, если адрес изменялся несколько раз, и по каким-то причинам вам потребовалось вернуться к изначальному.

! Элемент /collection/ в адресе категории убрать нельзя никаким способом (как и элементы /product/, /blogs/ и /page/ у соответствующих страниц). Это архитектурная особенность платформы.

Сортировка товаров

inSales предлагает множество вариантов сортировки позиций внутри категории:

При сортировке по дате система ориентируется именно на даты создания товаров. Их последующее обновление не повлияет на порядок позиций.

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

Ручная сортировка позволяет перетаскивать товары мышкой, хватаясь за иконку с точками слева от названия товара:

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

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

Сортировка по популярности

Раз в сутки система выбирает заказы, сделанные за последние 30 дней. 

Из каждого заказа берутся уникальные товары (то есть, если в заказе 3 одинаковых товара, в расчет идет только один), и им присваиваются баллы. Один заказ = один балл у товара.

Итоговое количество баллов составляет текущую популярность товара. По сути, баллы являются количеством заказов, в которых присутствовал товар. 

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

Товары, имеющие нулевую популярность, сортируются по ID товара.

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

Прочие настройки

Под секцией с основными настройками, которые мы рассматривали ранее, находятся следующие элементы:

  1. «Описание» – здесь вы можете разместить информацию о товарах, которые находятся в данной категории. Допустим, в категории «Техника» текст может выглядеть так:
    «Техника для кухни и гостиной: комбайны, мультиварки, телевизоры, игровые консоли и многое другое».
    Это абстрактный пример – в каждом случае текст должен быть тщательно продуман с точки зрения SEO, чтобы поисковики и посетители могли быстро найти нужную информацию на вашем сайте.
  2. «Использовать шаблон» – при наличии навыков верстки в редакторе кода вы можете создать свои шаблоны для страниц категорий, товаров, статических страниц, блогов и статей. Как правило, это нужно для индивидуализации дизайна отдельных страниц на сайте (например, превратить одну категорию в галерею, не трогая остальные). При условии, что для категории в редакторе кода созданы дополнительные шаблоны, вы сможете выбрать в этом поле нужный из них. Если не выбрано ничего, используется шаблон collection.liquid, который идет по умолчанию.
  3. «SEO-параметры» – см. соответствующую статью. 
  4. «Доп. описание» – дополнительное описание категории. Как правило, основное описание располагается перед товарами, а дополнительное – под ними. Иногда дополнительное описание и не используется вовсе, это зависит от выбранного дизайна.
  5. «Дополнительные поля» – см. соответствующую статью.
  6. Здесь вы можете сохранить изменения и остаться на текущей странице («Сохранить»), сохранить и перейти на страницу с товарами в данной категории («Сохранить и закрыть») или вовсе удалить категорию («Удалить»). Если при удалении категории в ней есть товары, они останутся на складе, т.е. безвозвратно удалены не будут.
    Восстановить удаленные категории, не создавая их заново вручную, можно только через письменное обращение в техническую поддержку.

Изображение категории

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

Секция находится справа от блока с общими настройками (или под ним) и выглядит так:

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

В отличие от товаров, для категории может быть загружено только одно изображение. Если вам потребуется его заменить, сначала кликните по кнопке «Удалить изображение» и затем загрузите новое:

Каналы продаж для категории

В карточке категории доступна возможность выбрать, в какой выгрузке необходимо выгружать товары из данной категории:

Если выбрать выгрузку в карточке категории в данном блоке, то после этого категория отобразится выбранной в настройках выгрузки:

На данный момент в блоке доступны для выбора только выгрузки в Одноклассники, ВКонтакте и OZON.

определение категории по The Free Dictionary

Ко второму разряду Пьер причислял себя и себе подобных, ищущих и колеблющихся, не нашедших еще в масонстве прямого и понятного пути, но надеющихся найти. категория отношения; «на рынке», «в лицее», под названием «место»; «вчера», «в прошлом году» под временем. К первой категории, вообще говоря, относятся люди консервативные по темпераменту и законопослушные; они живут под контролем и любят, чтобы их контролировали.Наблюдатель, незнакомый с его историей, вряд ли отнес бы его к разряду «домов с привидениями», однако во всей округе такова его репутация. категория отчетности; в то время как свободное крыло романиста позволяет ему подняться на такие высоты воображения, на которые он способен; и первые три основы литературного искусства — это воображение, воображение и воображение.Например, под французской критикой экономических функций денег писали «отчуждение человечества», под французской критикой буржуазного государства писали «низложение категории всеобщего» и т. д. Дарья Александровна заметила: что в этом месте своего объяснения он сконфузился, и она не совсем поняла этого отступления, но чувствовала, что, начав однажды говорить о том, что близко к его сердцу, о чем он не мог говорить с Анной, он теперь делает чистую сердце всего, и что вопрос о его занятиях в деревне относился к тому же разряду дел близких его сердцу, что и вопрос об отношениях его с Анной.Нынешняя попытка Беттереджа переписываться со мной подпадает под эту категорию. Г-н Покровитель «Молодой Амелии» предложил в качестве места высадки остров Монте-Кристо, который, будучи совершенно безлюдным и не имеющим ни солдат, ни налоговых чиновников, казалось, находился посреди океана со времен язычников. Олимп через Меркурия, бога торговцев и разбойников, классы человечества, которые мы в новое время разделили, если не разделили, но которые древность, по-видимому, включила в одну и ту же категорию.При упоминании Монте-Кристо Дантес вздрогнул от радости; он встал, чтобы скрыть свое волнение, и прошелся по прокуренной таверне, где все языки известного мира смешались в lingua franca. буфетчицы, которая сразу ставит тебя в один ряд с районными пройдохами и шлюхами. (правда, ценой унижений, когда их заставили осознать свою ошибку!), а также возможно, что Он будет жалок тем, у кого не было возможности узнать истину, — это было достаточно разумно, хотя такова была деятельность Миссионерского общества, таких могло быть немного, — но если бы у них был шанс и они им пренебрегли (в эту категорию, очевидно, входили католики и несогласные), наказание было верным и заслуженным.Вы не входите в категорию «Молитвенник» среди «несчастных грешников».

Категория Определение и значение | Британский словарь

категория /ˈkætəˌгори/ Брит /ˈkætəgri/ существительное

множественное число категории

/ˈkætəˌгори/ Брит /ˈkætəgri/

существительное

множественное число категории

Определение CATEGORY в британском словаре

[считать]

: группа людей или вещей, которые чем-то похожи
  • Автомобили относятся к одной категории .

  • Налогоплательщики относятся к одной из нескольких категорий .

  • Она боролась за награду в своей возрастной категории .

Иммиграция на основе трудоустройства: первое предпочтение EB-1

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

Критерии приемлемости
Категории Описание Доказательства
Необычайная Способность Вы должны быть в состоянии продемонстрировать выдающиеся способности в науке, искусстве, образовании, бизнесе или спорте, получив устойчивое национальное или международное признание. Вы должны соответствовать как минимум 3 из 10 критериев* ниже или предоставить подтверждение разового достижения (т.э., Пулитцеровской премии, Оскара, олимпийской медали), а также доказательства того, что вы продолжите работать в сфере своей компетенции. Предложение о трудоустройстве или трудовая сертификация не требуются.
Выдающиеся профессора и исследователи Вы должны продемонстрировать международное признание своих выдающихся достижений в определенной академической области. Вы должны иметь не менее 3 лет опыта преподавания или исследований в этой академической области. Вы должны въехать в Соединенные Штаты, чтобы продолжить преподавание на постоянной или постоянной основе или на сопоставимую исследовательскую должность в университете, высшем учебном заведении или частном работодателе. Вы должны соответствовать как минимум 2 из 6 критериев, перечисленных ниже**, и предоставить предложение о работе от потенциального работодателя в США. Частный работодатель должен продемонстрировать документально подтвержденные достижения и что он нанимает не менее 3 штатных исследователей. Трудовая сертификация не требуется.

Определенный
Многонациональный менеджер или руководитель

Вы должны были работать за пределами Соединенных Штатов не менее 1 года за 3 года, предшествовавших подаче петиции, или последнему законному въезду в страну для неиммигрантов, если вы уже работаете в США.С. Ходатайство работодателя. Заявитель из США должен заниматься бизнесом не менее 1 года, иметь соответствующие отношения с организацией, на которую вы работали за пределами США, и иметь намерение нанять вас на руководящую или исполнительную должность. Ваш работодатель, подающий петицию, должен быть работодателем в США и иметь намерение нанять вас на руководящую или исполнительную должность. Заявитель должен вести бизнес в США не менее 1 года в качестве юридического лица, имеющего квалификационные отношения с организацией, которая наняла вас за границей на руководящие или исполнительные должности.

Трудовая сертификация не требуется.

* Критерии демонстрации экстраординарных способностей

Чтобы продемонстрировать, что вы получили устойчивое национальное или международное признание и что ваши достижения были признаны в вашей области знаний, вы должны либо предоставить доказательства разового достижения (крупная международно-признанная награда), либо 3 из 10 перечисленных критериев. ниже (или сопоставимые доказательства, если какой-либо из критериев неприменим):

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

Для получения дополнительной информации об экстраординарных способностях ознакомьтесь с нашей политикой в ​​томе 6, части F, главы 2 Руководства по политике USCIS.

** Примеры документальных подтверждений того, что лицо является выдающимся профессором или научным сотрудником

Чтобы продемонстрировать, что вы являетесь выдающимся профессором или исследователем, вы должны предоставить подтверждение 2 из 6 перечисленных ниже критериев (или сопоставимые доказательства, если какой-либо из критериев неприменим):

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

Для получения дополнительной информации о выдающихся профессорах и исследователях ознакомьтесь с нашей политикой в ​​томе 6, части F, главы 3 Руководства по политике USCIS.

Для получения дополнительной информации о международных руководителях или менеджерах ознакомьтесь с нашей политикой в ​​томе 6, части F, главы 4 Руководства по политике USCIS.

Процесс подачи заявки

  • Экстраординарные способности: Вы можете подать заявление от своего имени, заполнив форму I-140 «Петиция для иностранного работника».
  • Выдающиеся профессора и исследователи: Ваш работодатель в США должен подать форму I-140 «Петиция для иностранного работника». В рамках процесса подачи заявки ваш работодатель должен быть в состоянии продемонстрировать постоянную способность выплачивать предлагаемую заработную плату на дату приоритета.Ваш работодатель может использовать годовой отчет, декларацию по федеральному подоходному налогу или проверенный финансовый отчет, чтобы продемонстрировать постоянную способность выплачивать вам заработную плату.
  • Многонациональный менеджер или руководитель: Ваш работодатель в США должен подать форму I-140 Службы гражданства и иммиграции США (USCIS) «Петиция для иностранного работника». В рамках процесса подачи заявки ваш работодатель должен быть в состоянии продемонстрировать постоянную способность выплачивать предлагаемую заработную плату на дату приоритета. Ваш работодатель может использовать годовой отчет, декларацию по федеральному подоходному налогу или проверенный финансовый отчет, чтобы продемонстрировать постоянную способность выплачивать вам заработную плату.
  • Для получения дополнительной информации о сборах за подачу заявки см. «Подача моего заявления онлайн»

Семья владельцев визы EB-1

  • Если ваша петиция I-140 будет одобрена, ваш супруг и не состоящие в браке дети в возрасте до 21 года могут иметь право подать заявление на въезд в Соединенные Штаты со статусом иммигранта E-14 или E-15 соответственно.

Дополнительная информация

Категориальные данные — документация pandas 1.4.2

Это введение в категориальный тип данных pandas, включая краткое сравнение с коэффициентом R .

Категориалы — это тип данных pandas, соответствующий категориальным переменным в статистика. Категориальная переменная принимает ограниченное и обычно фиксированное значение. количество возможных значений ( категорий ; уровней в R). Примеры: пол, социальный класс, группа крови, принадлежность к стране, время наблюдения или рейтинг через шкалы Лайкерта.

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

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

Категориальный тип данных полезен в следующих случаях:

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

  • Лексический порядок переменной не совпадает с логическим («один», «два», «три»). Путем преобразования в категориальный и указания порядка категорий, сортировки и min/max будет использовать логический порядок вместо лексического, см. здесь.

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

См. также документацию API по категориям.

Создание объекта

Создание серии

Категориальный Серия или столбцы в DataFrame могут быть созданы несколькими способами:

Путем указания dtype="category" при построении серии :

 В [1]: s = pd.Series(["a", "b", "c", "a"], dtype="category")

В [2]: с
Выход[2]:
0 а
1 б
2 с
3 часа
тип: категория
Категории (3, объект): ['a', 'b', 'c']
 

Путем преобразования существующей серии или столбца в категорию dtype:

 В [3]: df = pd.DataFrame({"A": ["a", "b", "c", "a"]})

В [4]: ​​df["B"] = df["A"].astype("категория")

В [5]: дф
Выход[5]:
   А Б
0 а а
1 б б
2 с с
3 а а
 

С помощью специальных функций, таких как cut() , которая группирует данные в дискретные бункеры. См. пример тайлинга в документации.

 В [6]: df = pd.DataFrame({"value": np.random.randint(0, 100, 20)})

В [7]: labels = ["{0} - {1}".format(i, i + 9) для i в диапазоне (0, 100, 10)]

В [8]: df["group"] = pd.cut(df.value, range(0, 105, 10), right=False, labels=labels)

В [9]: ф.р.голова(10)
Выход[9]:
   группа значений
0 65 60 - 69
1 49 40 - 49
2 56 50 - 59
3 43 40 - 49
4 43 40 - 49
5 91 90 - 99
6 32 30 - 39
7 87 80 - 89
8 36 30 - 39
9 8 0 - 9
 

Передав объект pandas.Categorical серии или назначив его DataFrame .

 В [10]: raw_cat = pd.Categorical(
   ....: ["a", "b", "c", "a"], Categories=["b", "c", "d"], order=False
   .... :)
   ....:

В [11]: s = pd.Series(raw_cat)

В [12]: с
Выход[12]:
0 NaN
1 б
2 с
3 NaN
тип: категория
Категории (3, объект): ['b', 'c', 'd']

В [13]: df = pd.DataFrame({"A": ["a", "b", "c", "a"]})

В [14]: df["B"] = raw_cat

В [15]: дф
Исход[15]:
   А Б
0 NaN
1 б б
2 с с
3 NaN
 

Категориальные данные имеют определенную категорию dtype:

 В [16]: df.dtypes
Вышли[16]:
Объект
категория Б
тип: объект
 

Создание кадра данных

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

Это можно сделать во время построения, указав dtype="category" в конструкторе DataFrame :

 В [17]: df = pd.DataFrame({"A": list("abca"), "B": list("bccd")}, dtype="category")

В [18]: df.dtypes
Вышли[18]:
Категория
категория Б
тип: объект
 

Обратите внимание, что категории в каждом столбце различаются; преобразование выполняется столбец за столбцом, поэтому только ярлыки, присутствующие в данном столбце, являются категориями:

 В [19]: df["A"]
Вышли[19]:
0 а
1 б
2 с
3 часа
Имя: A, dtype: категория
Категории (3, объект): ['a', 'b', 'c']

В [20]: df["B"]
Исход[20]:
0 б
1 с
2 с
3 д
Имя: B, dtype: категория
Категории (3, объект): ['b', 'c', 'd']
 

Аналогично, все столбцы в существующем DataFrame могут быть преобразованы в пакетном режиме с использованием DataFrame.astype() :

 В [21]: df = pd.DataFrame({"A": list("abca"), "B": list("bccd")})

В [22]: df_cat = df.astype("категория")

В [23]: df_cat.dtypes
Вышли[23]:
Категория
категория Б
тип: объект
 

Это преобразование также выполняется столбец за столбцом:

 В [24]: df_cat["A"]
Вышли[24]:
0 а
1 б
2 с
3 часа
Имя: A, dtype: категория
Категории (3, объект): ['a', 'b', 'c']

В [25]: df_cat["B"]
Вышли[25]:
0 б
1 с
2 с
3 д
Имя: B, dtype: категория
Категории (3, объект): ['b', 'c', 'd']
 

Управление поведением

В приведенных выше примерах, где мы передали dtype='category' , мы использовали значение по умолчанию поведение:

  1. Категории выводятся из данных.

  2. Категории неупорядочены.

Чтобы управлять этим поведением, вместо передачи «категории» используйте экземпляр из КатегориальныйDтип .

 В [26]: из pandas.api.types импортировать CategoricalDtype

В [27]: s = pd.Series(["a", "b", "c", "a"])

В [28]: cat_type = CategoricalDtype(categories=["b", "c", "d"], order=True)

В [29]: s_cat = s.astype(cat_type)

В [30]: s_cat
Исход[30]:
0 NaN
1 б
2 с
3 NaN
тип: категория
Категории (3, объект): ['b' < 'c' < 'd']
 

Аналогично, CategoricalDtype можно использовать с DataFrame , чтобы гарантировать, что категории согласованы между всеми столбцами.

 В [31]: из pandas.api.types импортировать CategoricalDtype

В [32]: df = pd.DataFrame({"A": list("abca"), "B": list("bccd")})

В [33]: cat_type = CategoricalDtype(categories=list("abcd"), order=True)

В [34]: df_cat = df.astype(cat_type)

В [35]: df_cat["A"]
Вышли[35]:
0 а
1 б
2 с
3 часа
Имя: A, dtype: категория
Категории (4, объект): ['a' < 'b' < 'c' < 'd']

В [36]: df_cat["B"]
Вышел[36]:
0 б
1 с
2 с
3 д
Имя: B, dtype: категория
Категории (4, объект): ['a' < 'b' < 'c' < 'd']
 

Примечание

Для выполнения табличного преобразования, когда все метки во всем DataFrame используются как категории для каждого столбца, параметр категорий может быть определен программно путем категорий = pd.уникальный(df.to_numpy().ravel()) .

Если у вас уже есть коды и категории , вы можете использовать from_codes() конструктор для сохранения шага факторизации в обычном режиме конструктора:

 В [37]: splitter = np.random.choice([0, 1], 5, p=[0,5, 0,5])

В [38]: s = pd.Series(pd.Categorical.from_codes(splitter, category=["train", "test"]))
 

Восстановление исходных данных

Чтобы вернуться к исходному массиву серии или NumPy, используйте Серия .astype(original_dtype) или np.asarray(категориальный) :

 В [39]: s = pd.Series(["a", "b", "c", "a"])

В [40]: с.
Вышли[40]:
0 а
1 б
2 с
3 часа
тип: объект

В [41]: s2 = s.astype("категория")

В [42]: s2
Вышел[42]:
0 а
1 б
2 с
3 часа
тип: категория
Категории (3, объект): ['a', 'b', 'c']

В [43]: s2.astype(str)
Вышел[43]:
0 а
1 б
2 с
3 часа
тип: объект

В [44]: np.asarray(s2)
Out[44]: массив(['a', 'b', 'c', 'a'], dtype=object)
 

Примечание

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

Примечание

В отличие от функции R factor , в настоящее время нет возможности назначать/изменять метки в время создания. Используйте категорий для изменения категорий после времени создания.

КатегориальныйDтип

Категориальный тип полностью описан

  1. категории : последовательность уникальных значений без пропущенных значений

  2. заказанный : логическое значение

Эта информация может храниться в CategoricalDtype .Аргумент категорий является необязательным, что означает, что фактические категории должны быть выведены из того, что присутствует в данных, когда pandas.Categorical создан. Предполагается, что категории неупорядочены. по умолчанию.

 В [45]: из pandas.api.types импортировать CategoricalDtype

В [46]: CategoricalDtype(["a", "b", "c"])
Out[46]: CategoricalDtype(categories=['a', 'b', 'c'], order=False)

В [47]: CategoricalDtype(["a", "b", "c"], order=True)
Out[47]: CategoricalDtype(categories=['a', 'b', 'c'], order=True)

В [48]: КатегориальныйDtype()
Out[48]: CategoricalDtype(categories=None, order=False)
 

A CategoricalDtype можно использовать в любом месте pandas ожидает dtype .Например, pandas.read_csv() , pandas.DataFrame.astype() или в конструкторе серии .

Примечание

Для удобства вы можете использовать строку 'категория' вместо CategoricalDtype , если вы хотите, чтобы поведение по умолчанию категории неупорядочены и равны установленным значениям, присутствующим в множество. Другими словами, dtype='category' эквивалентно dtype=CategoricalDtype() .

Семантика равенства

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

 В [49]: c1 = CategoricalDtype(["a", "b", "c"], order=False)

# Равно, так как порядок не учитывается, если order=False
В [50]: c1 == CategoricalDtype(["b", "c", "a"], order=False)
Выход[50]: Верно

# Неравно, так как второй CategoricalDtype упорядочен
В [51]: c1 == CategoricalDtype(["a", "b", "c"], order=True)
Исход[51]: Ложь
 

Все экземпляры CategoricalDtype сравниваются со строкой 'category' .

 В [52]: c1 == "категория"
Исход[52]: Верно
 

Предупреждение

Поскольку dtype='category' по сути является CategoricalDtype(None, False) , и поскольку все экземпляры CategoricalDtype сравниваются равными 'category' , все экземпляры CategoricalDtype сравниваются равными CategoricalDtype(None, False) , независимо от категорий или заказал .

Описание

Использование описать() для категориальных данных даст аналогичный результат. вывод в Series или DataFrame типа string .

 В [53]: cat = pd.Categorical(["a", "c", "c", np.nan], Categories=["b", "a", "c"])

В [54]: df = pd.DataFrame({"cat": cat, "s": ["a", "c", "c", np.nan]})

В [55]: df.describe()
Вышел[55]:
       кот с
считать 3 3
уникальный 2 2
топ с с
частота 2 2

В [56]: df["cat"].describe()
Вышел[56]:
считать 3
уникальный 2
топ с
частота 2
Имя: кошка, dtype: объект
 

Работа с категориями

Категориальные данные имеют категории и упорядоченное свойство , в которых перечислены их возможных значений и имеет ли значение порядок или нет.Эти свойства выставлены как s.cat.categories и s.cat.ordered . Если вы не вручную укажите категории и порядок, они выводятся из переданных аргументов.

 В [57]: s = pd.Series(["a", "b", "c", "a"], dtype="category")

В [58]: s.cat.categories
Out[58]: Index(['a', 'b', 'c'], dtype='object')

В [59]: s.cat.ordered
Исход[59]: Ложь
 

Также возможно проходить категории в определенном порядке:

 В [60]: s = pd.Series(pd.Категориальный(["а", "б", "в", "а"], категории=["в", "б", "а"]))

В [61]: s.cat.categories
Out[61]: Index(['c', 'b', 'a'], dtype='object')

В [62]: s.cat.ordered
Исход[62]: Ложь
 

Примечание

Новые категориальные данные , а не упорядочиваются автоматически. Вы должны явно pass ordered=True для обозначения упорядоченного Категориального .

Примечание

Результат unique() не всегда совпадает с Series.cat.categories , потому что серия .unique() имеет несколько гарантий, а именно то, что он возвращает категории в порядке появления и включает только те значения, которые действительно присутствуют.

 В [63]: s = pd.Series(list("babc")).astype(CategoricalDtype(list("abcd")))

В [64]: с
Вышел[64]:
0 б
1 год
2 б
3 с
тип: категория
Категории (4, объект): ['a', 'b', 'c', 'd']

# категории
В [65]: s.cat.categories
Out[65]: Index(['a', 'b', 'c', 'd'], dtype='object')

# уникальные
В [66]: s.unique()
Вышел[66]:
['б', 'а', 'в']
Категории (4, объект): ['a', 'b', 'c', 'd']
 

Переименование категорий

Переименование категорий осуществляется путем присвоения новых значений Серия .cat.categories свойство или с помощью rename_categories() метод:

 В [67]: s = pd.Series(["a", "b", "c", "a"], dtype="category")

В [68]: с
Вышел[68]:
0 а
1 б
2 с
3 часа
тип: категория
Категории (3, объект): ['a', 'b', 'c']

В [69]: s.cat.categories = ["Группа %s" % g для g в s.cat.categories]

В [70]: с.
Вышли[70]:
0 Группа А
1 группа б
2 Группа с
3 Группа А
тип: категория
Категории (3, объект): ['Группа a', 'Группа b', 'Группа c']

В [71]: s = s.cat.rename_categories([1, 2, 3])

В [72]: с
Вышел[72]:
0 1
1 2
2 3
3 1
тип: категория
Категории (3, int64): [1, 2, 3]

# Вы также можете передать объект, похожий на словарь, чтобы сопоставить переименование
В [73]: s = s.cat.rename_categories({1: "x", 2: "y", 3: "z"})

В [74]: с
Вышел[74]:
0 х
1 год
2 з
3 х
тип: категория
Категории (3, объект): ['x', 'y', 'z']
 

Примечание

В отличие от R фактор , категориальные данные могут иметь категории других типов, кроме строки.

Примечание

Имейте в виду, что назначение новых категорий является операцией на месте, в то время как большинство других операций под Series.cat по умолчанию возвращает новый Series dtype категории .

Категории должны быть уникальными, иначе возникает ошибка ValueError :

 В [75]: попробуйте:
   ....: s.cat.categories = [1, 1, 1]
   ....: кроме ValueError как e:
   ....: print("ValueError:", str(e))
   ....:
ValueError: Категориальные категории должны быть уникальными
 

Категории также не должны быть NaN или возникает ошибка ValueError :

 В [76]: попробуйте:
   ....: s.cat.categories = [1, 2, np.nan]
   ....: кроме ValueError как e:
   ....: print("ValueError:", str(e))
   ....:
ValueError: категориальные категории не могут быть нулевыми
 

Добавление новых категорий

Добавление категорий может быть выполнено с помощью метод add_categories() :

 В [77]: s = s.cat.add_categories([4])

В [78]: s.cat.categories
Out[78]: Index(['x', 'y', 'z', 4], dtype='object')

В [79]: с
Вышел[79]:
0 х
1 год
2 з
3 х
тип: категория
Категории (4, объект): ['x', 'y', 'z', 4]
 

Удаление категорий

Удаление категорий можно выполнить с помощью метод remove_categories() .Ценности, которые удаляются заменены на нп.нан .:

 В [80]: s = s.cat.remove_categories([4])

В [81]: с
Вышел[81]:
0 х
1 год
2 з
3 х
тип: категория
Категории (3, объект): ['x', 'y', 'z']
 

Удаление неиспользуемых категорий

Также можно удалить неиспользуемые категории:

 В [82]: s = pd.Series(pd.Categorical(["a", "b", "a"], Categories=["a", "b", "c", "d"]) )

В [83]: с
Вышел[83]:
0 а
1 б
2 часа
тип: категория
Категории (4, объект): ['a', 'b', 'c', 'd']

В [84]: с.cat.remove_unused_categories()
Вышел[84]:
0 а
1 б
2 часа
тип: категория
Категории (2, объект): ['a', 'b']
 

Категории настроек

Если вы хотите удалить и добавить новые категории за один шаг (который имеет некоторые преимущество в скорости) или просто установите категории в предопределенный масштаб, используйте set_categories() .

 В [85]: s = pd.Series(["один", "два", "четыре", "-"], dtype="category")

В [86]: с
Вышел[86]:
0 один
1 два
2 четыре
3 -
тип: категория
Категории (4, объект): ['-', 'четыре', 'один', 'два']

В [87]: s = s.cat.set_categories(["один", "два", "три", "четыре"])

В [88]: с
Вышел[88]:
0 один
1 два
2 четыре
3 NaN
тип: категория
Категории (4, объект): ['один', 'два', 'три', 'четыре']
 

Примечание

Имейте в виду, что Categorical.set_categories() не может знать, пропущена ли какая-либо категория преднамеренно или потому, что в нем написана ошибка, или (в Python3) из-за различия типов (например, NumPy S1 dtype и строки Python). Это может привести к неожиданному поведению!

Сортировка и заказ

Если упорядочены категориальные данные ( с.cat.ordered == True ), то порядок категорий имеет значение и определенные операции возможны. Если категориальное неупорядочено, .min()/.max() вызовет TypeError .

 В [89]: s = pd.Series(pd.Categorical(["a", "b", "c", "a"], order=False))

В [90]: s.sort_values(inplace=True)

В [91]: s = pd.Series(["a", "b", "c", "a"]).astype(CategoricalDtype(ordered=True))

В [92]: s.sort_values(inplace=True)

В [93]: с
Вышел[93]:
0 а
3 часа
1 б
2 с
тип: категория
Категории (3, объект): ['a' < 'b' < 'c']

В [94]: с.мин(), с.макс()
Исход[94]: ('а', 'с')
 

Вы можете сделать категориальные данные упорядоченными с помощью as_ordered() или неупорядоченными с помощью as_unordered() . Это будет по умолчанию возвращает новый объект .

 В [95]: s.cat.as_ordered()
Вышел[95]:
0 а
3 часа
1 б
2 с
тип: категория
Категории (3, объект): ['a' < 'b' < 'c']

В [96]: s.cat.as_unordered()
Вышел[96]:
0 а
3 часа
1 б
2 с
тип: категория
Категории (3, объект): ['a', 'b', 'c']
 

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

 В [97]: s = pd.Series([1, 2, 3, 1], dtype="category")

В [98]: s = s.cat.set_categories([2, 3, 1], order=True)

В [99]: с
Вышли[99]:
0 1
1 2
2 3
3 1
тип: категория
Категории (3, int64): [2 < 3 < 1]

В [100]: s.sort_values(inplace=True)

В [101]: с
Выход[101]:
1 2
2 3
0 1
3 1
тип: категория
Категории (3, int64): [2 < 3 < 1]

В [102]: s.min(), s.max()
Исход[102]: (2, 1)
 

Повторный заказ

Переупорядочивание категорий возможно через Категориал.reorder_categories() и методов Categorical.set_categories() . Для Categorical.reorder_categories() все старые категории должны быть включены в новые категории, и никакие новые категории не допускаются. Это будет обязательно сделайте порядок сортировки таким же, как порядок категорий.

 В [103]: s = pd.Series([1, 2, 3, 1], dtype="category")

В [104]: s = s.cat.reorder_categories([2, 3, 1], order=True)

В [105]: с
Выход[105]:
0 1
1 2
2 3
3 1
тип: категория
Категории (3, int64): [2 < 3 < 1]

В [106]: с.sort_values ​​(на месте = Истина)

В [107]: с
Выход[107]:
1 2
2 3
0 1
3 1
тип: категория
Категории (3, int64): [2 < 3 < 1]

В [108]: s.min(), s.max()
Исход[108]: (2, 1)
 

Примечание

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

Примечание

Если Категориальный не заказан, Series.min() и Series.max() поднимут Ошибка типа . Числовые операции типа +, -, *, / и операции на их основе (например, Series.median() , который должен был бы вычислить среднее между двумя значениями, если длина массива четные) не работают и вызывают TypeError .

Сортировка по нескольким столбцам

Категориальный столбец dtyped будет участвовать в многостолбцовой сортировке аналогично другим столбцам.Порядок категориального определяется категориями этого столбца.

 В [109]: dfs = pd.DataFrame(
   .....: {
   .....: "A": pd.Категорический(
   .....: список("ббиббаа"),
   .....: категории=["е", "а", "б"],
   .....: заказано=Истина,
   .....: ),
   .....: "В": [1, 2, 1, 2, 2, 1, 2, 1],
   .....: }
   .....: )
   .....:

В [110]: dfs.sort_values(by=["A", "B"])
Выход[110]:
   А Б
2 е 1
3 е 2
7 в 1
6 в 2
0 б 1
5 б 1
1 б 2
4 б 2
 

Изменение порядка категорий изменяет будущую сортировку.

 В [111]: dfs["A"] = dfs["A"].cat.reorder_categories(["a", "b", "e"])

В [112]: dfs.sort_values(by=["A", "B"])
Выход[112]:
   А Б
7 в 1
6 в 2
0 б 1
5 б 1
1 б 2
4 б 2
2 е 1
3 е 2
 

Сравнения

Сравнение категорийных данных с другими объектами возможно в трех случаях:

  • Сравнение равенства ( == и != ) с объектом, подобным списку (список, серия, массив, …) той же длины, что и категориальные данные.

  • Все сравнения ( == , != , > , >= , < и <= ) категориальных данных с другой категориальный ряд, когда заказал == Правда и категории одинаковы.

  • Все сравнения категориальных данных со скалярными.

Все другие сравнения, особенно сравнения «не на равенство» двух категорий с разными category или категориальный с любым объектом, подобным списку, вызовет TypeError .

Примечание

Любые «неравенские» сравнения категориальных данных с Series , np.array , list или категориальные данные с разными категориями или порядком вызовут TypeError , потому что пользовательские порядок категорий можно интерпретировать двояко: один с учетом заказ и один без.

 В [113]: cat = pd.Series([1, 2, 3]).astype(CategoricalDtype([3, 2, 1], order=True))

В [114]: cat_base = pd.Series([2, 2, 2]).astype(CategoricalDtype([3, 2, 1], order=True))

В [115]: cat_base2 = pd.Series([2, 2, 2]).astype(CategoricalDtype(ordered=True))

В [116]: кошка
Выход[116]:
0 1
1 2
2 3
тип: категория
Категории (3, int64): [3 < 2 < 1]

В [117]: cat_base
Выход[117]:
0 2
1 2
2 2
тип: категория
Категории (3, int64): [3 < 2 < 1]

В [118]: cat_base2
Выход[118]:
0 2
1 2
2 2
тип: категория
Категории (1, int64): [2]
 

Сравнение с категориальным с теми же категориями и порядком или со скалярным работает:

 В [119]: кошка > cat_base
Выход[119]:
0 Верно
1 Ложь
2 Ложь
тип: логический

В [120]: кошка > 2
Выход[120]:
0 Верно
1 Ложь
2 Ложь
тип: логический
 

Сравнения на равенство работают с любым спискообразным объектом одинаковой длины и скаляров:

 В [121]: cat == cat_base
Выход[121]:
0 Ложь
1 правда
2 Ложь
тип: логический

В [122]: cat == np.массив([1, 2, 3])
Выход[122]:
0 Верно
1 правда
2 Правда
тип: логический

В [123]: кошка == 2
Выход[123]:
0 Ложь
1 правда
2 Ложь
тип: логический
 

Это не работает, потому что категории не совпадают:

 В [124]: попробуйте:
   .....: кошка > cat_base2
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: Категориалы можно сравнивать только в том случае, если «категории» одинаковы.
 

Если вы хотите выполнить сравнение «неравенства» категориального ряда со спископодобным объектом которые не являются категориальными данными, вам нужно быть явным и преобразовать категориальные данные обратно в исходные значения:

 В [125]: основание = np.массив([1, 2, 3])

В [126]: попробуйте:
   .....: кошка > база
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: невозможно сравнить категориальное для op __gt__ с типом .
Если вы хотите сравнить значения, используйте «np.asarray(cat)  other».

В [127]: np.asarray(cat) > base
Выход[127]: массив([Ложь, Ложь, Ложь])
 

При сравнении двух неупорядоченных категорий с одинаковыми категориями порядок не учитывается:

 В [128]: c1 = pd.Категориальный(["a", "b"], Categories=["a", "b"], order=False)

В [129]: c2 = pd.Categorical(["a", "b"], Categories=["b", "a"], order=False)

В [130]: с1 == с2
Выход[130]: массив([Истина, Истина])
 

Операции

Помимо Series.min() , Series.max() и Series.mode() , следующие операции возможны с категориальными данными:

Методы Series , такие как Series.value_counts() , будут использовать все категории, даже если некоторые категории отсутствуют в данных:

 В [131]: s = pd.Series(pd.Categorical(["a", "b", "c", "c"], Categories=["c", "a", "b", "d"]))

В [132]: s.value_counts()
Выход[132]:
с 2
1
б 1
д 0
тип: int64
 

Методы DataFrame , такие как DataFrame.sum() , также показывают «неиспользуемые» категории.

 В [133]: columns = pd.Categorical(
   .....: ["Один", "Один", "Два"], category=["Один", "Два", "Три"], order=True
   .....: )
   .....:

В [134]: df = pd.DataFrame(
   .....: данные=[[1, 2, 3], [4, 5, 6]],
   .....: columns=pd.MultiIndex.from_arrays([["A", "B", "B"], столбцы]),
   .....: )
   .....:

В [135]: df.groupby(ось=1, уровень=1).sum()
Выход[135]:
   Раз два три
0 3 3 0
1 9 6 0
 

Groupby также покажет «неиспользуемые» категории:

 В [136]: кошки = pd.Categorical(
   .....: ["a", "b", "b", "b", "c", "c", "c"], category=["a", "b", "c" , "д"]
   .....: )
   .....:

В [137]: df = pd.DataFrame({"кошки": кошки, "значения": [1, 2, 2, 2, 3, 4, 5]})

В [138]: df.groupby("кошки").mean()
Исход[138]:
      ценности
кошки
1,0
б 2.0
с 4.0
г NaN

В [139]:cats2 = pd.Categorical(["a", "a", "b", "b"], Categories=["a", "b", "c"])

В [140]: df2 = pd.DataFrame(
   .....: {
   .....: "коты": коты2,
   .....: "В": ["в", "д", "в", "д"],
   .....: "значения": [1, 2, 3, 4],
   .....: }
   .....: )
   .....:

В [141]: df2.groupby(["кошки", "B"]).mean()
Выход[141]:
        ценности
кошки Б
а в 1.0
     д 2.0
б в 3,0
     д 4,0
в в NaN
     г NaN
 

Сводные таблицы:

 В [142]: raw_cat = pd.Categorical(["a", "a", "b", "b"], Categories=["a", "b", "c"])

В [143]: df = pd.DataFrame({"A": raw_cat, "B": ["c", "d", "c", "d"], "values": [1, 2, 3 , 4]})

В [144]: pd.pivot_table(df, values="values", index=["A", "B"])
Исход[144]:
     ценности
А Б
а с 1
  д 2
б в 3
  д 4
 

Фальсификация данных

Оптимизированные методы доступа к данным pandas .loc , .iloc , .at и .iat , работать как обычно. Единственная разница заключается в типе возврата (для получения) и что могут быть назначены только значения, уже находящиеся в категориях .

Получение

Если операция среза возвращает либо DataFrame , либо столбец типа Серия , категория dtype сохранена.

 В [145]: idx = pd.Index(["h", "i", "j", "k", "l", "m", "n"])

В [146]: кошки = pd.Series(["a", "b", "b", "b", "c", "c", "c"], dtype="category", index=idx)

В [147]: значения = [1, 2, 2, 2, 3, 4, 5]

В [148]: df = pd.DataFrame({"кошки": кошки, "значения": значения}, index=idx)

В [149]: df.iloc[2:4, :]
Исход[149]:
  кошачьи ценности
дж б 2
к б 2

В [150]: df.iloc[2:4, :].dtypes
Выход[150]:
категория кошек
значения int64
тип: объект

В [151]: df.loc["h":"j", "кошки"]
Выход[151]:
ч а
я б
дж б
Имя: кошки, dtype: категория
Категории (3, объект): ['a', 'b', 'c']

В [152]: df[df["кошки"] == "b"]
Выход[152]:
  кошачьи ценности
я б 2
дж б 2
к б 2
 

Пример, когда тип категории не сохраняется, если взять один единственный строка: результирующий Series имеет тип объекта :

 # получить полную строку "h" в виде серии
В [153]: df.лок["ч", :]
Исход[153]:
кошки а
значения 1
Имя: h, dtype: объект
 

При возврате одного элемента из категориальных данных также будет возвращено значение, а не категориальный длины «1».

 В [154]: df.iat[0, 0]
Ушел[154]: 'а'

В [155]: df["cats"].cat.categories = ["x", "y", "z"]

В [156]: df.at["h", "cats"] # возвращает строку
Выход[156]: 'x'
 

Примечание

В отличие от функции R factor , где factor(c(1,2,3))[1] возвращает одно значение фактор .

Чтобы получить одно значение Series типа категории , вы передаете список с одно значение:

 В [157]: df.loc[["h"], "кошки"]
Вышли[157]:
ч х
Имя: кошки, dtype: категория
Категории (3, объект): ['x', 'y', 'z']
 

Средства доступа к строке и дате/времени

Аксессоры .dt и .str будут работать, если s.cat.categories имеют соответствующий тип:

 В [158]: str_s = pd.Series(list("aabb"))

В [159]: str_cat = str_s.тип ("категория")

В [160]: str_cat
Выход[160]:
0 а
1 год
2 б
3 б
тип: категория
Категории (2, объект): ['a', 'b']

В [161]: str_cat.str.contains("a")
Исход[161]:
0 Верно
1 правда
2 Ложь
3 Ложь
тип: логический

В [162]: date_s = pd.Series(pd.date_range("1/1/2015", периоды=5))

В [163]: date_cat = date_s.astype("категория")

В [164]: date_cat
Исход[164]:
0 01.01.2015
1 2015-01-02
2 2015-01-03
3 2015-01-04
4 2015-01-05
тип: категория
Категории (5, datetime64[ns]): [2015-01-01, 2015-01-02, 2015-01-03, 2015-01-04, 2015-01-05]

В [165]: date_cat.день дня
Исход[165]:
0 1
1 2
2 3
3 4
4 5
тип: int64
 

Примечание

Возвращенный Series (или DataFrame ) имеет тот же тип, как если бы вы использовали .str.<метод> / .dt.<метод> на серии этого типа (а не тип категория !).

Это означает, что возвращаемые значения из методов и свойств методов доступа Серия и возвращаемые значения из методов и свойств средств доступа этого Серия , преобразованная в одну из категорий типа , будет равна:

 В [166]: ret_s = str_s.ул.содержит("а")

В [167]: ret_cat = str_cat.str.contains("a")

В [168]: ret_s.dtype == ret_cat.dtype
Выход[168]: Верно

В [169]: ret_s == ret_cat
Вышли[169]:
0 Верно
1 правда
2 Правда
3 Правда
тип: логический
 

Примечание

Работа выполнена на категории , а затем построена новая серия . Это имеет некоторое влияние на производительность, если у вас есть серия типа строки, где много элементов повторяются (т. е. количество уникальных элементов в серии намного меньше, чем в длина серии ).В этом случае можно быстрее преобразовать исходную серию в серию . к одному из типов категории и используйте для этого .str.<метод> или .dt.<свойство> .

Настройка

Установка значений в категориальном столбце (или Series ) работает до тех пор, пока значение включено в категории :

 В [170]: idx = pd.Index(["h", "i", "j", "k", "l", "m", "n"])

В [171]: кошки = pd.Categorical(["а", "а", "а", "а", "а", "а", "а"], категории = ["а", "б "])

В [172]: значения = [1, 1, 1, 1, 1, 1, 1]

В [173]: df = pd.DataFrame({"кошки": кошки, "значения": значения}, индекс = idx)

В [174]: df.iloc[2:4, :] = [["b", 2], ["b", 2]]

В [175]: дф
Вышли[175]:
  кошачьи ценности
ч а 1
я 1
дж б 2
к б 2
л а 1
м а 1
п а 1

В [176]: попробуйте:
   .....: df.iloc[2:4, :] = [["c", 3], ["c", 3]]
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: невозможно установить элемент в категориальном с новой категорией, сначала установите категории
 

Установка значений путем присвоения категориальных данных также проверяет соответствие категорий :

 В [177]: прим.loc["j":"k", "кошки"] = pd.Categorical(["a", "a"], Categories=["a", "b"])

В [178]: дф
Вышли[178]:
  кошачьи ценности
ч а 1
я 1
Дж а 2
к а 2
л а 1
м а 1
п а 1

В [179]: попробуйте:
   .....: df.loc["j":"k", "кошки"] = pd.Categorical(["b", "b"], Categories=["a", "b", "c "])
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: невозможно установить категориальный с другим, без идентичных категорий
 

При присвоении Категориального частям столбца других типов будут использоваться значения:

 В [180]: df = pd.DataFrame({"a": [1, 1, 1, 1, 1], "b": ["a", "a", "a", "a", "a"]})

В [181]: df.loc[1:2, "a"] = pd.Categorical(["b", "b"], Categories=["a", "b"])

В [182]: df.loc[2:3, "b"] = pd.Categorical(["b", "b"], Categories=["a", "b"])

В [183]: дф
Исход[183]:
   а б
0 1 а
1 б а
2 б б
3 1 б
4 1 а

В [184]: df.dtypes
Исход[184]:
объект
б объект
тип: объект
 

Слияние/объединение

По умолчанию объединение Series или DataFrames , содержащих одинаковые категории приводит к категории dtype, в противном случае результаты будут зависеть от dtype базовых категорий.Слияния, которые приводят к некатегоричности dtypes, вероятно, будут использовать больше памяти. Используйте .astype или union_categoricals для обеспечения результатов категории .

 В [185]: из pandas.api.types import union_categoricals

# те же категории
В [186]: s1 = pd.Series(["a", "b"], dtype="category")

В [187]: s2 = pd.Series(["a", "b", "a"], dtype="category")

В [188]: pd.concat([s1, s2])
Вышли[188]:
0 а
1 б
0 а
1 б
2 часа
тип: категория
Категории (2, объект): ['a', 'b']

# разные категории
В [189]: s3 = pd.Серия(["b", "c"], dtype="категория")

В [190]: pd.concat([s1, s3])
Выход[190]:
0 а
1 б
0 б
1 с
тип: объект

# Выходной dtype выводится на основе значений категорий
В [191]: int_cats = pd.Series([1, 2], dtype="category")

В [192]: float_cats = pd.Series([3.0, 4.0], dtype="category")

В [193]: pd.concat([int_cats, float_cats])
Исход[193]:
0 1,0
1 2,0
0 3,0
1 4,0
тип: float64

В [194]: pd.concat([s1, s3]).astype("категория")
Исход[194]:
0 а
1 б
0 б
1 с
тип: категория
Категории (3, объект): ['a', 'b', 'c']

В [195]: union_categoricals([s1.массив, s3.массив])
Вышли[195]:
['а', 'б', 'б', 'в']
Категории (3, объект): ['a', 'b', 'c']
 

В следующей таблице приведены результаты объединения категорий :

арг1

аргумент2

идентичный

результат

категория

категория

Правда

категория

категория (объект)

категория (объект)

Ложь

объект (выводится dtype)

категория (внутренняя)

категория (плавающая)

Ложь

с плавающей запятой (предполагается dtype)

См. также раздел о типах слияния для заметок о сохранение типов слияния и производительности.

Соединение

Если вы хотите объединить категории, которые не обязательно имеют одинаковые категории, функция union_categoricals() будет объединить список подобных категорий. Новые категории будут представлять собой объединение категории объединяются.

 В [196]: из pandas.api.types import union_categoricals

В [197]: a = pd.Categorical(["b", "c"])

В [198]: b = pd.Categorical(["a", "b"])

В [199]: union_categoricals([a, b])
Вышли[199]:
['б', 'в', 'а', 'б']
Категории (3, объект): ['b', 'c', 'a']
 

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

 В [200]: union_categoricals([a, b], sort_categories=True)
Выход[200]:
['б', 'в', 'а', 'б']
Категории (3, объект): ['a', 'b', 'c']
 

union_categoricals также работает с «простым» случаем объединения двух категории тех же категорий и информация о заказе (например, для чего вы также можете добавить к ).

 В [201]: a = pd.Categorical(["a", "b"], order=True)

В [202]: b = pd.Категориальный(["a", "b", "a"], order=True)

В [203]: union_categoricals([a, b])
Выход[203]:
['а', 'б', 'а', 'б', 'а']
Категории (2, объект): ['a' < 'b']
 

Приведенное ниже вызывает TypeError , поскольку категории упорядочены и не идентичны.

 В [1]: a = pd.Categorical(["a", "b"], order=True)
В [2]: b = pd.Categorical(["a", "b", "c"], order=True)
В [3]: union_categoricals([a, b])
Выход[3]:
TypeError: для объединения упорядоченных категорий все категории должны быть одинаковыми
 

Упорядоченные категориальные элементы с разными категориями или порядками можно комбинировать с помощью используя аргумент ignore_ordered=True .

 В [204]: a = pd.Categorical(["a", "b", "c"], order=True)

В [205]: b = pd.Categorical(["c", "b", "a"], order=True)

В [206]: union_categoricals([a, b], ignore_order=True)
Исход[206]:
['а', 'б', 'в', 'в', 'б', 'а']
Категории (3, объект): ['a', 'b', 'c']
 

union_categoricals() также работает с CategoricalIndex или Series , содержащие категориальные данные, но обратите внимание, что результирующий массив всегда будет простым Категориальный :

 В [207]: а = pd.Серия(["b", "c"], dtype="категория")

В [208]: b = pd.Series(["a", "b"], dtype="category")

В [209]: union_categoricals([a, b])
Исход[209]:
['б', 'в', 'а', 'б']
Категории (3, объект): ['b', 'c', 'a']
 

Примечание

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

 В [210]: c1 = pd.Categorical(["b", "c"])

В [211]: c2 = pd.Категориальный(["а", "б"])

В [212]: с1
Выход[212]:
['до н.э']
Категории (2, объект): ['b', 'c']

# "b" кодируется как 0
В [213]: c1.codes
Выход[213]: массив([0, 1], dtype=int8)

В [214]: с2
Выход[214]:
['а', 'б']
Категории (2, объект): ['a', 'b']

# "b" кодируется как 1
В [215]: c2.codes
Выход[215]: массив([0, 1], dtype=int8)

В [216]: c = union_categoricals([c1, c2])

В [217]: в
Выход[217]:
['б', 'в', 'а', 'б']
Категории (3, объект): ['b', 'c', 'a']

# "b" везде кодируется как 0, так же, как c1, но отличается от c2
В [218]: с.коды
Выход[218]: массив([0, 1, 2, 0], dtype=int8)
 

Получение/вывод данных

Вы можете записать данные, содержащие категорий dtypes, в хранилище HDFStore . См. здесь пример и предостережения.

Также можно записывать данные и считывать данные из файлов формата Stata . См. здесь пример и предостережения.

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

 В [219]: импорт io

В [220]: s = pd.Series(pd.Categorical(["a", "b", "b", "a", "a", "d"]))

# переименовать категории
В [221]: s.cat.categories = ["очень хорошо", "хорошо", "плохо"]

# изменить порядок категорий и добавить недостающие категории
В [222]: s = s.cat.set_categories(["очень плохо", "плохо", "средне", "хорошо", "очень хорошо"])

В [223]: df = pd.DataFrame({"cats": s, "vals": [1, 2, 3, 4, 5, 6]})

В [224]: csv = io.StringIO()

В [225]: df.to_csv(csv)

В [226]: df2 = pd.read_csv(io.StringIO(csv.getvalue()))

В [227]: df2.dtypes
Выход[227]:
Безымянный: 0 int64
объект кошек
валы int64
тип: объект

В [228]: df2["кошки"]
Выход[228]:
0 очень хорошо
1 хорошо
2 хорошо
3 очень хорошо
4 очень хорошо
5 плохо
Имя: кошки, dtype: объект

# Переделать категорию
В [229]: df2["кошки"] = df2["кошки"].astype("категория")

В [230]: df2["кошки"].cat.set_categories(
   .....: ["очень плохо", "плохо", "средне", "хорошо", "очень хорошо"], inplace=True
   .....: )
   .....:

В [231]: df2.dtypes
Выход[231]:
Безымянный: 0 int64
категория кошек
валы int64
тип: объект

В [232]: df2["кошки"]
Выход[232]:
0 очень хорошо
1 хорошо
2 хорошо
3 очень хорошо
4 очень хорошо
5 плохо
Имя: кошки, dtype: категория
Категории (5, объект): ['очень плохо', 'плохо', 'средне', 'хорошо', 'очень хорошо']
 

То же самое верно для записи в базу данных SQL с to_sql .

Отсутствуют данные

pandas в основном использует значение np.nan для представления отсутствующих данных. Это по по умолчанию не включены в расчеты. См. раздел «Отсутствующие данные».

Отсутствующие значения должны быть включены , а не в категории категории , только в значения . Вместо этого понятно, что NaN отличается и всегда возможен. При работе с категориальными кодами пропущенные значения всегда будут иметь код -1 .

 В [233]: s = pd.Series(["a", "b", np.nan, "a"], dtype="category")

# только две категории
В [234]: с
Выход[234]:
0 а
1 б
2 NaN
3 часа
тип: категория
Категории (2, объект): ['a', 'b']

В [235]: s.cat.codes
Выход[235]:
0 0
1 1
2 -1
3 0
тип: int8
 

Методы работы с отсутствующими данными, т.е. исна() , заполнение() , dropna() , все работает нормально:

 В [236]: s = pd.Series(["a", "b", np.nan], dtype="category")

В [237]: с
Исход[237]:
0 а
1 б
2 NaN
тип: категория
Категории (2, объект): ['a', 'b']

В [238]: с.Исна (ы)
Исход[238]:
0 Ложь
1 Ложь
2 Правда
тип: логический

В [239]: s.fillna("a")
Исход[239]:
0 а
1 б
2 часа
тип: категория
Категории (2, объект): ['a', 'b']
 

Отличия от фактора R

Можно наблюдать следующие отличия функций фактора R:

  • R's уровни названы категориями .

  • Уровни R всегда имеют строковый тип, а категории в pandas могут быть любого типа dtype.

  • Невозможно указать метки во время создания. Используйте s.cat.rename_categories(new_labels) после.

  • В отличие от функции R factor , использование категориальных данных в качестве единственного входа для создания новый категориальный ряд , а не удалит неиспользуемые категории, но создаст новый категориальный ряд что равно переданному за единицу!

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

Попался

Использование памяти

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

 В [240]: s = pd.Series(["foo", "bar"] * 1000)

# тип объекта
В [241]: s.nbytes
Выход[241]: 16000

# категория dtype
В [242]: с.astype("категория").nbytes
Вышло[242]: 2016 г.
 

Примечание

Если количество категорий приближается к длине данных, Категориальный будет использовать почти то же самое или больше памяти, чем эквивалентное представление объекта dtype.

 В [243]: s = pd.Series(["foo%04d" % i для i в диапазоне (2000)])

# тип объекта
В [244]: s.nbytes
Выход[244]: 16000

# категория dtype
В [245]: s.astype("category").nbytes
Выход[245]: 20000
 

Категориальный не является массивом numpy

В настоящее время категориальные данные и базовый категориальный реализованы как Python объект, а не как низкоуровневый массив NumPy dtype.Это приводит к некоторым проблемам.

Сам NumPy не знает о новом dtype :

 В [246]: попробуйте:
   .....: np.dtype ("категория")
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: тип данных «категория» не понят

В [247]: dtype = pd.Categorical(["a"]).dtype

В [248]: попробуйте:
   .....: np.dtype(dtype)
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: невозможно интерпретировать «CategoricalDtype (categories = ['a'], Ordered = False)» как тип данных
 

Сравнения Dtype работают:

 В [249]: dtype == np.ул_
Выход[249]: Ложь

В [250]: np.str_ == dtype
Выход[250]: Ложь
 

Чтобы проверить, содержит ли серия категориальные данные, используйте hasattr(s, 'cat') :

 В [251]: hasattr(pd.Series(["a"], dtype="category"), "cat")
Выход[251]: Истина

В [252]: hasattr(pd.Series(["a"]), "cat")
Выход[252]: Ложь
 

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

 В [253]: s = pd.Series(pd.Categorical([1, 2, 3, 4]))

В [254]: попробуйте:
   .....: np.sum(s)
   .....: кроме TypeError как e:
   .....: print("TypeError:", str(e))
   .....:
TypeError: «Категория» с категорией dtype не поддерживает сокращение «сумма»
 

dtype в приложении

pandas в настоящее время не сохраняет dtype в функциях применения: если вы применяете вдоль строк, вы получаете a Series of object dtype (так же, как получение строки -> получение одного элемента вернет базовый тип) и применение вдоль столбцов также преобразуется в объект. NaN Значения не изменяются. Вы можете использовать fillna для обработки пропущенных значений перед применением функции.

 В [255]: df = pd.DataFrame(
   .....: {
   .....: "а": [1, 2, 3, 4],
   .....: "б": ["а", "б", "в", "д"],
   .....: "кошки": pd.Categorical([1, 2, 3, 2]),
   .....: }
   .....: )
   .....:

В [256]: df.apply(лямбда-строка: тип(строка["кошки"]), ось=1)
Исход[256]:
0 <класс 'целое число'>
1 <класс 'целое число'>
2 <класс 'целое число'>
3 <класс 'целое число'>
тип: объект

В [257]: df.применить (лямбда-столбец: col.dtype, ось = 0)
Исход[257]:
int64
б объект
категория кошек
тип: объект
 

Категориальный индекс

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

Установка индекса создаст CategoricalIndex :

 В [258]: коты = pd.Категориальный ([1, 2, 3, 4], категории = [4, 2, 3, 1])

В [259]: strings = ["a", "b", "c", "d"]

В [260]: значения = [4, 2, 3, 1]

В [261]: df = pd.DataFrame({"strings": строки, "values": значения}, index=cats)

В [262]: df.index
Out[262]: CategoricalIndex([1, 2, 3, 4], Categories=[4, 2, 3, 1], Ordered=False, dtype='category')

# Теперь это сортируется по порядку категорий
В [263]: df.sort_index()
Исход[263]:
  строковые значения
4 д 1
2 б 2
3 с 3
1 а 4
 

Побочные эффекты

Создание серии из Категорий не будет копировать ввод Категориальный .Это означает, что изменения в серии в большинстве случаев изменить исходный Категориальный :

 В [264]: cat = pd.Categorical([1, 2, 3, 10], Categories=[1, 2, 3, 4, 10])

В [265]: s = pd.Series(cat, name="cat")

В [266]: кошка
Исход[266]:
[1, 2, 3, 10]
Категории (5, int64): [1, 2, 3, 4, 10]

В [267]: s.iloc[0:2] = 10

В [268]: кошка
Исход[268]:
[10, 10, 3, 10]
Категории (5, int64): [1, 2, 3, 4, 10]

В [269]: df = pd.DataFrame(s)

В [270]: df["cat"].cat.categories = [1, 2, 3, 4, 5]

В [271]: кошка
Исход[271]:
[10, 10, 3, 10]
Категории (5, int64): [1, 2, 3, 4, 10]
 

Используйте copy=True , чтобы предотвратить такое поведение, или просто не используйте повторно Категориалы :

 В [272]: cat = pd.Категориальный ([1, 2, 3, 10], категории = [1, 2, 3, 4, 10])

В [273]: s = pd.Series(cat, name="cat", copy=True)

В [274]: кошка
Исход[274]:
[1, 2, 3, 10]
Категории (5, int64): [1, 2, 3, 4, 10]

В [275]: s.iloc[0:2] = 10

В [276]: кошка
Исход[276]:
[1, 2, 3, 10]
Категории (5, int64): [1, 2, 3, 4, 10]
 

Примечание

Это также происходит в некоторых случаях, когда вы предоставляете массив NumPy вместо категориального : использование массива int (например, np.array([1,2,3,4]) ) будет демонстрировать такое же поведение при использовании массив строк (т.грамм. np.array(["a","b","c","a"]) ) не будет.

Категории и доступность — App Store

Медицина

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

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

Музыка

Приложения, предназначенные для поиска, прослушивания, записи, исполнения или сочинения музыки и являющиеся интерактивными по своей природе.

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

Навигация

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

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

Новости

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

Например: телевидение, видео, радио или онлайн-выпуски новостей или программы, программы для чтения RSS.

Фото и видео

Приложения, которые помогают снимать, редактировать, управлять, хранить или обмениваться фотографиями и видео.

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

Производительность

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

Например: управление задачами, управление календарем, перевод, ведение заметок, печать, управление паролями, облачное хранилище, почтовые клиенты, генераторы блок-схем, аудиодиктовка, моделирование, просмотр данных.

Артикул

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

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

Расширения Safari (только для macOS)

Приложения, предлагающие расширения, помогающие улучшить и настроить возможности просмотра веб-страниц в Safari.

Например: закладки контента, менеджеры паролей, блокировщики рекламы, средства поиска сбережений.

Покупки

Приложения, которые поддерживают покупку потребительских товаров или существенно улучшают процесс совершения покупок.

Например: коммерция, торговая площадка, купон, обзор продукта, приложения с Apple Pay.

Социальные сети

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

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

Спорт

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

Например: партнеры по фэнтези-спорту, студенческие команды/конференции, профессиональные команды/лиги, спортсмены, трекеры результатов, инструкции, спортивные новости.

Путешествия

Приложения, которые помогают пользователю в любом аспекте путешествия, таком как планирование, покупка или отслеживание.

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

Коммунальные услуги

Приложения, которые позволяют пользователю решить проблему или выполнить определенную задачу.

Например: калькуляторы (стандартные, чаевые, финансовые), часы, измерения, время, просмотр веб-страниц, фонарики, блокировка экрана, сканеры штрих-кода, инструменты преобразования единиц измерения, управление паролями, пульты дистанционного управления.

Погода

Приложения, предоставляющие прогнозы, оповещения и информацию о погодных условиях.

Например: радар, прогноз, штормы, приливы, суровая погода, местная погода.

Категории семинаров - Международный бакалавриат®

Международный бакалавриат® (IB) имеет три категории семинаров в зависимости от вашего уровня опыта, обстоятельств и профессиональных целей.

  • Категория 1 фокусируется на философии и реализации IB
  • Категория 2 охватывает четыре образовательные программы IB
  • Категория 3 основывается на портфолио профессионального развития и расширяет его

Изучите все семинары по каждой из этих трех категорий в нашем последнем каталоге семинаров и услуг IB.

Какая категория мастерских мне подходит?

Выберите семинары категории 1 , если вы новичок в IB:  

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

Выберите семинары категории 2 , чтобы развить свой опыт в реализации программы IB и:

  • Установление связи между рамками программы и практикой в ​​классе,
  • Улучшите свое понимание оценивания в программах IB,
  • Обсуждайте и анализируйте стандарты и практики.

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

Варианты поставки в мастерскую

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

Узнайте больше о вариантах доставки в мастерскую.

Просмотреть все формы по категориям

Выберите категориюУсыновлениеАльтернативное разрешение споровАппеляционная жалобаПривязанностьРождение, брак, смертьCLETCУправление деламиГражданское правоПредотвращение гражданских домогательствИск и вручениеСудебные протоколыУголовное делоДоступ к инвалидностиСудебные разбирательстваОткрытиеПредотвращение домашнего насилия — английский Предотвращение домашнего насилия — китайский Предотвращение домашнего насилия — корейскийПредотвращение домашнего насилия — испанский Предотвращение домашнего насилия — вьетнамскийПредотвращение насилия в семье несовершеннолетнихЭкстренный охранный судебный приказПриведение в исполнение судебного решенияУскоренный суд присяжныхСемейное право — расторжение брака, раздельное жительство и аннулирование закона FL-100 — 199Семейное право — иски отцовства FL-200 — 299Семейное право — Ходатайства и приложения FL-300 — 399Семейное право — Приведение в исполнение FL-400 — 499Семейное право — Межгосударственные иски FL-500 — 599 Семейное право — Государственная поддержка детей FL-600 — 699 Семейное право — Расторжение брака в упрощенном порядке FL-800 — 899 Семейное право — Разное FL-900 — 99 9Fee WaiverGuardianships и ConservatorshipsGun Насилие PreventionHabeas CorpusIgnition блокиратор DeviceIndian Child Welfare ActInterpreterJuvenileJudgmentJury SelectionLanguage AccessMenacing DogMilitary ServiceMiscellaneousName ChangesNotice Казаться и связанный с ними FormsPleading - GeneralPleading - ContractPleading - Травмы, повреждение имущества, неправомерное DeathPleading - Незаконное DetainerProbate - ушедшее EstatesProof из ServiceRemote AppearanceReceivershipsSafe в HomeSchool насилие PreventionSmall ClaimsSubpoenaSummonsTraffic InfractionsTransitional Неправомерное поведение в жилищном сектореПереведенные формы на китайский языкПереведенные формы на корейскийПереведенные формы на испанскийПереведенные формы на вьетнамскийПереведенные формы на другой языкНезаконный задержанный (арендодатель/квартиросъемщик)Досадные тяжбыНаложение заработной платы Предотвращение насилия на рабочем месте

См.

Добавить комментарий

Ваш адрес email не будет опубликован.