описывать методы printSchema и DataFrame - PullRequest
2 голосов
/ 21 апреля 2020

Я запускаю этот код в pyspark, и разница в выводе между описанием и printSchema сбивает с толку. пожалуйста, взгляните на код ниже.

Описание () дает столбец оценки в виде строки, где, когда я описываю без скобок или использую printSchema (), тогда он дает столбец оценки в виде int - который он на самом деле.

Это мой фрейм данных.

>>> df.show()
+-------+------+-----+
|   name|course|score|
+-------+------+-----+
| fsdhfu|     a|   56|
| sdjjfd|     a|   57|
|kljsjlk|     b|   23|
|  udjkx|     b|   89|
|    ias|     c|   36|
| jksdkj|     c|   37|
|  usdkj|     d|   48|
+-------+------+-----+

Использование description:

>>> df2.describe()
DataFrame[summary: string, name: string, course: string, score: string]
>>> df2.describe
<bound method DataFrame.describe of DataFrame[name: string, course: string, score: int]>

Использование printSchema:

>>> df2.printSchema()
root
 |-- name: string (nullable = true)
 |-- course: string (nullable = true)
 |-- score: integer (nullable = true)

1 Ответ

0 голосов
/ 21 апреля 2020

Разница между ними заключается в том, что схема предлагает вам информацию о столбцах, например, имя столбцов и их тип данных, тогда как метод description предоставляет статистику по набору данных. Следующее является взятием из документов в отношении описания:

/**
   * Computes basic statistics for numeric and string columns, including count, mean, stddev, min,
   * and max. If no columns are given, this function computes statistics for all numerical or
   * string columns.
   *
   * This function is meant for exploratory data analysis, as we make no guarantee about the
   * backward compatibility of the schema of the resulting Dataset. If you want to
   * programmatically compute summary statistics, use the `agg` function instead.
   *
   * {{{
   *   ds.describe("age", "height").show()
   *
   *   // output:
   *   // summary age   height
   *   // count   10.0  10.0
   *   // mean    53.3  178.05
   *   // stddev  11.6  15.7
   *   // min     18.0  163.0
   *   // max     92.0  192.0
   * }}}
   *
   * Use [[summary]] for expanded statistics and control over which statistics to compute.
   *
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...