Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala Spark:如何为一个flattable创建新列,其名称超出列1和列2的值,列3的值作为内容_Scala_Apache Spark_Dataframe_Pivot_Flatten - Fatal编程技术网

Scala Spark:如何为一个flattable创建新列,其名称超出列1和列2的值,列3的值作为内容

Scala Spark:如何为一个flattable创建新列,其名称超出列1和列2的值,列3的值作为内容,scala,apache-spark,dataframe,pivot,flatten,Scala,Apache Spark,Dataframe,Pivot,Flatten,如何使用以下方法转换数据帧 原件: +----+----+----+----+----+ |col0|col1|col2|col3|col4| +----+----+----+----+----+ | #1| A| 1| C3| I4| | #1| A| 2| D3| J4| | #1| A| 3| E3| K4| | #1| B| 1| F3| L4| | #1| B| 2| G3| M4| | #1| B| 3|

如何使用以下方法转换数据帧 原件:

+----+----+----+----+----+
|col0|col1|col2|col3|col4|
+----+----+----+----+----+
|  #1|   A|   1|  C3|  I4|
|  #1|   A|   2|  D3|  J4|
|  #1|   A|   3|  E3|  K4|
|  #1|   B|   1|  F3|  L4|
|  #1|   B|   2|  G3|  M4|
|  #1|   B|   3|  H3|  N4|
|  #2|   A|   1|  O3|  U4|
|  #2|   A|   2|  P3|  V4|
|  #2|   A|   3|  Q3|  W4|
|  #2|   B|   1|  R3|  X4|
|  #2|   B|   2|  S3|  Y4|
|  #2|   B|   3|  T3|  Z4|
+----+----+----+----+----+
到下面的
所需表格:

+----+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+
|col0|col1_A_col2_1_col3|col1_A_col2_2_col3|col1_A_col2_3_col3|col1_B_col2_1_col3|col1_B_col2_2_col3|col1_B_col2_3_col3|col1_A_col2_1_col4|col1_A_col2_2_col4|col1_A_col2_3_col4|col1_B_col2_1_col4|col1_B_col2_2_col4|col1_B_col2_3_col4|
+----+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+
|  #1|        C3        |        D3        |        E3        |        F3        |        G3        |        H3        |        I3        |        J4        |        K4        |        L4        |        M4        |        N4        |
|  #2|        O3        |        P3        |        Q3        |        R3        |        S3        |        T3        |        U3        |        V4        |        W4        |        X4        |        Y4        |        Z4        |
+----+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+------------------+

为了创建一个平板。

看起来像一个轴,但不是经典意义上的轴。有没有可能是1。。4以及1..3?如果col1中的值C意味着我们也会得到一个新的列,我想呢?需要沿着这些线进行协组或其他事情,得到K,V。不确定新的列是否会导致新的列名称,似乎会得到非常广泛的RDD和稀疏的尝试生成功能名称?需要更好的解释吗