Skip to content

bitwiseAND(column1, column2)

Описание

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

Параметры

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

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

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

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

from pyspark.sql import SparkSession
from pyspark.sql.functions import bitwiseAND

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

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

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

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

Примечания

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