我有一个住房数据集,其中既有分类变量,也有数字变量。在这个数据集中,我创建了另一个仅包含数值_属性的数据集,其中数组中包含数值_属性。
数据集-数组值。
数字属性
[卧室数量、价格、年龄]
现在我想先循环数值_属性数组,然后在每个元素中计算每个数值_属性的平均值。
数据集1
Age Price Location
20 56000 ABC
30 58999 XYZ
数据集2(数据帧中的数组)
Numeric_attributes
[Age, Price]
期望输出
Mean(Age) Mean(Price)
25 57000
当前尝试
def minimum_value(df2):
min_value = lambda x: x.min()
for a in df2.collect():
for b in a.collect():
min_udf = F.udf(lambda row: [min_value(x) for x in b])
df2.withColumn('minimum_value', min_udf(F.col('Numerical_attributes').cast("array<int>")))
return df2