pandas.io.formats.style.Styler.hide#
- Styler.скрыть(subset=None, ось=0, уровень=None, names=False)[источник]#
Скрыть весь индекс / заголовки столбцов или определенные строки / столбцы при отображении.
Добавлено в версии 1.4.0.
- Параметры:
- subsetметка, массивоподобный, IndexSlice, необязательный
Допустимые одномерные входные данные или одиночный ключ вдоль оси в пределах DataFrame.loc[<подмножество>, :] или DataFrame.loc[:,
] в зависимости отaxis, чтобы ограничитьdataдля выбора скрытых строк / столбцов.- ось{“index”, 0, “columns”, 1}
Применить к индексу или столбцам.
- уровеньint, str, list
Уровень(и) для скрытия в MultiIndex, если скрываются все заголовки индекса/столбцов. Нельзя использовать одновременно с
subset.- namesbool
Скрывать ли имя(имена) уровня(ей) заголовков индекса/столбцов в случае, если он (или хотя бы один из уровней) остается видимым.
- Возвращает:
- Styler
Примечания
Предупреждение
Этот метод работает только с выходными методами
to_html,to_stringиto_latex.Другие методы вывода, включая
to_excel, игнорируйте этот метод скрытия и будут отображены все данные.Этот метод имеет несколько функций в зависимости от комбинации
subset,levelиnamesаргументы (см. примеры).axisаргумент используется только для контроля применения метода к заголовкам строк или столбцов:Комбинации аргументов# subsetlevelnamesЭффект
None
None
False
Индекс оси полностью скрыт.
None
None
True
Скрыты только имена индексов оси.
None
Int, Str, List
False
Указанные уровни MultiIndex по оси полностью скрыты.
None
Int, Str, List
True
Указанные уровни MultiIndex оси полностью скрыты, и отображаются имена оставшихся уровней MultiIndex оси.
Подмножество
None
False
Указанные строки/столбцы данных скрыты, но сам индекс оси, и имена остаются неизменными.
Подмножество
None
True
Указанные строки/столбцы данных и имена индексов оси скрыты, но сам индекс оси остается неизменным.
Подмножество
Int, Str, List
Логический
ValueError: нельзя передать
subsetиlevelодновременно.Обратите внимание, что этот метод только скрывает указанные элементы, поэтому его можно объединять в цепочку для скрытия нескольких элементов последовательно.
Примеры
Простое приложение, скрывающее определенные строки:
>>> df = pd.DataFrame([[1,2], [3,4], [5,6]], index=["a", "b", "c"]) >>> df.style.hide(["a", "b"]) 0 1 c 5 6
Скрыть индекс и сохранить значения данных:
>>> midx = pd.MultiIndex.from_product([["x", "y"], ["a", "b", "c"]]) >>> df = pd.DataFrame(np.random.randn(6,6), index=midx, columns=midx) >>> df.style.format("{:.1f}").hide() x y a b c a b c 0.1 0.0 0.4 1.3 0.6 -1.4 0.7 1.0 1.3 1.5 -0.0 -0.2 1.4 -0.8 1.6 -0.2 -0.4 -0.3 0.4 1.0 -0.2 -0.8 -1.2 1.1 -0.6 1.2 1.8 1.9 0.3 0.3 0.8 0.5 -0.3 1.2 2.2 -0.8
Скрыть определённые строки в MultiIndex, но сохранить индекс:
>>> df.style.format("{:.1f}").hide(subset=(slice(None), ["a", "c"])) ... x y a b c a b c x b 0.7 1.0 1.3 1.5 -0.0 -0.2 y b -0.6 1.2 1.8 1.9 0.3 0.3
Скрыть определенные строки и индекс через цепочку:
>>> df.style.format("{:.1f}").hide(subset=(slice(None), ["a", "c"])).hide() ... x y a b c a b c 0.7 1.0 1.3 1.5 -0.0 -0.2 -0.6 1.2 1.8 1.9 0.3 0.3
Скрыть определённый уровень:
>>> df.style.format("{:,.1f}").hide(level=1) x y a b c a b c x 0.1 0.0 0.4 1.3 0.6 -1.4 0.7 1.0 1.3 1.5 -0.0 -0.2 1.4 -0.8 1.6 -0.2 -0.4 -0.3 y 0.4 1.0 -0.2 -0.8 -1.2 1.1 -0.6 1.2 1.8 1.9 0.3 0.3 0.8 0.5 -0.3 1.2 2.2 -0.8
Скрытие только имен уровней индекса:
>>> df.index.names = ["lev0", "lev1"] >>> df.style.format("{:,.1f}").hide(names=True) x y a b c a b c x a 0.1 0.0 0.4 1.3 0.6 -1.4 b 0.7 1.0 1.3 1.5 -0.0 -0.2 c 1.4 -0.8 1.6 -0.2 -0.4 -0.3 y a 0.4 1.0 -0.2 -0.8 -1.2 1.1 b -0.6 1.2 1.8 1.9 0.3 0.3 c 0.8 0.5 -0.3 1.2 2.2 -0.8
Примеры все производят эквивалентные транспонированные эффекты с
axis="columns".