计算给定列的成对频率表。 也称为应变表。 每行的第一列将是非重复值 col1 ,列名将是非重复值 col2。 第一列的名称将为 $col1_$col2。 没有匹配项的对的计数为零。
DataFrame.crosstab 是 DataFrameStatFunctions.crosstab 别名。
Syntax
crosstab(col1: str, col2: str)
参数
| 参数 | 类型 | 说明 |
|---|---|---|
col1 |
str | 第一列的名称。 不同的项将使每行的第一项。 |
col2 |
str | 第二列的名称。 不同的项将生成 DataFrame 的列名称。 |
退货
DataFrame:两列的频率矩阵。
示例
df = spark.createDataFrame([(1, 11), (1, 11), (3, 10), (4, 8), (4, 8)], ["c1", "c2"])
df.crosstab("c1", "c2").sort("c1_c2").show()
# +-----+---+---+---+
# |c1_c2| 10| 11| 8|
# +-----+---+---+---+
# | 1| 0| 2| 0|
# | 3| 1| 0| 0|
# | 4| 0| 0| 2|
# +-----+---+---+---+