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

如何将数据帧数组转换为单个数据帧?[副本]

  •  0
  • LeeFernan  · 技术社区  · 7 年前

    我有一个 array 被称为“的数据帧数” dataFrames “看起来像这样:

    dataFrames(0)
    +----------+--------------------+---------+-------------+
    |Periodo   |              frutas|freq     |prods_qty    |
    +----------+--------------------+---------+-------------+
    |         1|Apple, Watermelon   |        1|            2|
    |         1|Banana, StrawBerry  |        2|            2|
    +----------+--------------------+---------+-------------+
    
    dataFrames(1)
    +----------+--------------------+---------+-------------+
    |Periodo   |              frutas|freq     |prods_qty    |
    +----------+--------------------+---------+-------------+
    |         2|Naranjas, Fresas    |        7|            2|
    |         2|Pineapple, Apples   |        9|            2|
    +----------+--------------------+---------+-------------+
    

    嗯,我需要一个单人间 dataframe 像这样:

    +----------+--------------------+---------+-------------+
    |Periodo   |              frutas|freq     |prods_qty    |
    +----------+--------------------+---------+-------------+
    |         1|Apple, Watermelon   |        1|            2|
    |         1|Banana, StrawBerry  |        2|            2|
    |         2|Naranjas, Fresas    |        7|            2|
    |         2|Pineapple, Apples   |        9|            2|
    +----------+--------------------+---------+-------------+
    

    对于本例,数组的长度为1,但数组可以是任意大小。

    有可能做到这一点。。。或者我需要将数据帧存储到配置单元表中?

    提前感谢

    1 回复  |  直到 7 年前
        1
  •  0
  •   DNA    7 年前

    你可以 reduce 数据帧的序列或数组,使用 unionAll :

    val dfs = Array(df1, df2, df3)
    
    val all = dfs.reduce(_ unionAll _)