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()