代码之家  ›  专栏  ›  技术社区  ›  HISI

如何透视Spark dataframe表?[副本]

  •  1
  • HISI  · 技术社区  · 6 年前

    这张表有三列:

    +---+----+----+
    | id|type| val|
    +---+----+----+
    |  1|   A|   0|
    |  2|   A|   0|
    |  4|   A|   0|
    |  2|   B|   1|
    |  4|   B|   1|
    +---+----+----+
    

    我想把它转变成:

    +---+----+----+
    |   |   A|   B|
    +---+----+----+
    |  1|   0|   -|
    |  2|   1|   1|
    |  4|   0|   1|
    +---+----+----+
    

    我试过了,但没有成功:

    val data_array = data.pivot(cols=['type'],rows=['id'],values='val')
    
    1 回复  |  直到 6 年前
        1
  •  3
  •   HISI    6 年前
    df.groupBy("id").pivot("type").agg(first("value")).na.fill("-").show
    

    df是从测试数据文件创建的数据帧