regr_slope(y, x)
Описание
Функция regr_slope()
вычисляет наклон линии регрессии для пары числовых столбцов. Это агрегатная функция, которая должна использоваться с groupBy()
.
Параметры
y
: Column - зависимая переменная (ордината)x
: Column - независимая переменная (абсцисса)
Возвращаемое значение
Double - наклон линии регрессии
Пример использования
from pyspark.sql.functions import regr_slope
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("regr_slope_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_slope("y", "x").alias("slope")
).show()
# Результат:
# +-----+-----+
# |group|slope|
# +-----+-----+
# |A |2.0 |
# |B |2.0 |
# +-----+-----+
Примечания
- NULL значения в любом из столбцов игнорируются
- Для вычисления коэффициента корреляции используйте
corr()
- Для вычисления точки пересечения линии регрессии используйте
regr_intercept()
- Для вычисления среднего значения используйте
avg()