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