bitmap_bit_position(bitmap, bit)
Описание
Функция bitmap_bit_position() возвращает позицию указанного бита в битовой карте.
Параметры
bitmap: Column - битовая картаbit: Column - бит, позицию которого нужно найти
Возвращаемое значение
Column - позиция бита в битовой карте (тип Integer)
Пример использования
from pyspark.sql.functions import bitmap_bit_position, lit
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("bitmap_bit_position_example").getOrCreate()
# Создаем DataFrame с битовыми картами
data = [
    (0b1010,),  # 10 в двоичном виде
    (0b1100,)   # 12 в двоичном виде
]
df = spark.createDataFrame(data, ["bitmap"])
# Находим позиции битов
result = df.withColumn(
    "bit_1_position",
    bitmap_bit_position("bitmap", lit(1))
).withColumn(
    "bit_0_position",
    bitmap_bit_position("bitmap", lit(0))
)
result.show(truncate=False)
# Результат:
# +------+---------------+---------------+
# |bitmap|bit_1_position|bit_0_position|
# +------+---------------+---------------+
# |10    |1             |0             |
# |12    |2             |0             |
# +------+---------------+---------------+
 Примечания
- Возвращает NULL, если битовая карта NULL
 - Позиции нумеруются с 0
 - Полезно для:
 - Анализа битовых карт
 - Поиска установленных битов
 - Работы с битовыми масками
 - Связанные функции:
 bitmap_bucket_number()- номер корзины битовой картыbitmap_count()- подсчет установленных битов