代码之家  ›  专栏  ›  技术社区  ›  Laurent Cesaro

pyspark:选择特定列及其位置

  •  4
  • Laurent Cesaro  · 技术社区  · 7 年前

    我想知道如何选择一个特定的列,它的编号是多少,而不是数据帧中的名称?

    在熊猫身上是这样的:

    df = df.iloc[:,2]
    

    有可能吗?

    1 回复  |  直到 7 年前
        1
  •  8
  •   akuiper    7 年前

    df.columns[n] 然后 select

    df = spark.createDataFrame([[1,2], [3,4]], ['a', 'b'])
    

    n

    n = 1
    df.select(df.columns[n]).show()
    +---+                                                                           
    |  b|
    +---+
    |  2|
    |  4|
    +---+
    

    选择除列以外的所有列 以下内容:

    n = 1
    

    drop

    df.drop(df.columns[n]).show()
    +---+
    |  a|
    +---+
    |  1|
    |  3|
    +---+
    

    df.select(df.columns[:n] + df.columns[n+1:]).show()
    +---+
    |  a|
    +---+
    |  1|
    |  3|
    +---+