Skip to content

regr_intercept(y, x)

Описание

Функция regr_intercept() вычисляет точку пересечения линии регрессии с осью Y для пары числовых столбцов. Это агрегатная функция, которая должна использоваться с groupBy().

Параметры

  • y: Column - зависимая переменная (ордината)
  • x: Column - независимая переменная (абсцисса)

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

Double - точка пересечения линии регрессии с осью Y

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

from pyspark.sql.functions import regr_intercept
from pyspark.sql import SparkSession

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

# Создаем DataFrame
data = [
    ("A", 1, 2),
    ("A", 2, 4),
    ("A", 3, 6),
    ("B", 1, 3),
    ("B", 2, 5),
    ("B", 3, 7)
]
df = spark.createDataFrame(data, ["group", "x", "y"])

# Вычисляем точку пересечения для каждой группы
result = df.groupBy("group").agg(
    regr_intercept("y", "x").alias("intercept")
).show()

# Результат:
# +-----+---------+
# |group|intercept|
# +-----+---------+
# |A    |0.0      |
# |B    |1.0      |
# +-----+---------+

Примечания

  • NULL значения в любом из столбцов игнорируются
  • Для вычисления коэффициента корреляции используйте corr()
  • Для вычисления наклона линии регрессии используйте regr_slope()
  • Для вычисления среднего значения используйте avg()