相关矩阵pyspark中的NaN值

时间:2020-03-23 19:20:51

标签: apache-spark pyspark pyspark-sql pyspark-dataframes

我有一个同时包含数字和分类值的数据框 所以我将数值拆分并归入缺失值

from pyspark.ml.feature import Imputer
imputer = Imputer(strategy='mean',inputCols=data.columns, 
    outputCols=["{}_imputed".format(c) for c in data.columns]
)
impdf = imputer.fit(data).transform(data)

import pandas as pd
import numpy as np

condition = lambda col: '_imputed' in col
new_df = impdf.select(*filter(condition, impdf.columns))

我正在使用“均值”估算值。然后,我使用下面的代码查看是否仍然存在空值

from pyspark.sql.functions import isnan, when, count, col
new_df.select([count(when(col(c).isNull(), c)).alias(c) for c in new_df.columns]).show(truncate = False, vertical = True)

列显示为0,表示没有缺失值

但是,当我计算相关性时,我得到的是NaN值

corr_matrix = numeric_data.corr().abs()

# Select upper triangle of correlation matrix
upper = corr_matrix.where(np.triu(np.ones(corr_matrix.shape), k=1).astype(np.bool))

是什么原因引起的问题

0 个答案:

没有答案