Skip to content

bitwiseOR(column1, column2)

Описание

Функция bitwiseOR() выполняет побитовую операцию ИЛИ (OR) между двумя числами. Каждый бит результата равен 1, если хотя бы один из соответствующих битов операндов равен 1, иначе 0.

Параметры

  • column1: Column - первый числовой столбец
  • column2: Column - второй числовой столбец

Возвращаемое значение

Integer - результат побитовой операции ИЛИ

Пример использования

from pyspark.sql import SparkSession
from pyspark.sql.functions import bitwiseOR

# Создаем SparkSession
spark = SparkSession.builder.appName("bitwiseOR_example").getOrCreate()

# Создаем DataFrame с числами
data = [
    (5, 3),   # 0101 | 0011 = 0111
    (10, 6),  # 1010 | 0110 = 1110
    (15, 7)   # 1111 | 0111 = 1111
]
df = spark.createDataFrame(data, ["number1", "number2"])

# Выполняем побитовую операцию ИЛИ
result = df.select(
    "number1",
    "number2",
    bitwiseOR("number1", "number2").alias("result")
).show()

# Результат:
# +-------+-------+------+
# |number1|number2|result|
# +-------+-------+------+
# |      5|      3|     7|
# |     10|      6|    14|
# |     15|      7|    15|
# +-------+-------+------+

Примечания

  • Функция работает только с целыми числами
  • Для отрицательных чисел операция выполняется над их двоичным представлением
  • Для других побитовых операций используйте bitwiseAND() и bitwiseXOR()
  • Для работы с отдельными битами используйте bit_get(), bit_set() и bit_count()