создать новый столбец для спарк-фрейма Pyspark - PullRequest
0 голосов
/ 21 июня 2019

У меня есть фрейм данных с именем df:

age height weight
20  178     83
36  182     74
...
Nan  168    Nan

Я хотел бы создать новый фрейм данных, который возобновит для каждого столбца фрейма данных DF количество значений Nan.

Iожидайте, что это результат df1 dataframe:

age  3
height  0
width  29

Для этого я сделал:

df1=spark.createDataFrame(df.columns, "string").toDF("colonnes")
for i in df1.rdd.collect():
    df1['number_missing_values'] = df[df1[i]].isnull().count()

Но я получаю эту ошибку:

u"cannot resolve '`opp_intgid_`' given input columns: [colonnes];;\n'Project ['opp_intgid_]\n+- AnalysisBarrier\n      +- Project [value#2335577 AS colonnes#2335579]\n         +- LogicalRDD [value#2335577], false\n"
Traceback (most recent call last):
  File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/dataframe.py", line 1166, in __getitem__
    return self.select(*item)
  File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/dataframe.py", line 1202, in select
    jdf = self._jdf.select(self._jcols(*cols))
  File "/usr/lib/spark/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", line 1257, in __call__
    answer, self.gateway_client, self.target_id, self.name)
  File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/utils.py", line 69, in deco
    raise AnalysisException(s.split(': ', 1)[1], stackTrace)
AnalysisException: u"cannot resolve '`opp_intgid_`' given input columns: [colonnes];;\n'Project ['opp_intgid_]\n+- AnalysisBarrier\n      +- Project [value#2335577 AS colonnes#2335579]\n         +- LogicalRDD [value#2335577], false\n"

Любая идея, пожалуйста?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...