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

scala:用zipwithindex左折叠

  •  1
  • Jake  · 技术社区  · 7 年前

    作品

    likertRoundDfSeq:Seq[DataFrame] =    ......
    likertRoundDfSeq match
      {
    
        case head :: tail => tail.foldLeft(head){(dforg,df1)=>
          DataFrameUtils.join(dforg,devianceFromAverageOneRound(df1),"A_RowId")
        }
      }
    

    devianceFromAverageOneRound

    我想用这个 zipWithIndex

     likertRoundDfSeq match
      {
    
        case head :: tail => tail.zipWithIndex.foldLeft(head){(dforg,df1)=>
          DataFrameUtils.join(dforg,devianceFromAverageOneRound(df1,*myzipindex*),"A_RowId" )
        }
      }
    

    但在这种情况下,我不确定如何分解数据帧和IDX。Intellij似乎没有指导我,所以我有点迷路了。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Leo C    7 年前

    df-seq的尾部现在是tuple2[dataframe,long]的列表,因此 foldLeft

    case head :: tail => tail.zipWithIndex.foldLeft(head){ (dforg, df1) =>
      DataFrameUtils.join(dforg, devianceFromAverageOneRound(df1._1, df1._2), "A_RowId")
    

    这假设您的新 devianceFromAverageOneRound(DataFrame, Long) DataFrame (而不是 Tuple2[DataFrame, Long]

    推荐文章