如何使用列号引用而不是列名删除列或重新排序Python Spark

时间:2019-03-06 10:49:06

标签: python pyspark

我是刚刚开始使用python的python spark的新手,如果这个问题真的很暗淡,我深感歉意

如何使用列号引用而不是列名删除列或对python spark数据框重新排序?我的校名很长,而且校校名很多,使用名称很繁琐

我想转身,例如:

 Data = Data.drop("070_thing", "230_anglething", "152_magnetthing", "200_status_thing", "155_thing")

进入:

  Data = Data.drop(1, 5, 9, 15, 22)

也要重新排序,所以不要:

 df = df.select("id","name","time","city")

我要放:

 df = df.select(4, 3, 2, 1)

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用df.columns:

columns = Data.columns
Data.select(columns[0], columns[1])

或:

  from operators import itemgetter

  df_getter = lambda cols: list(itemgetter(**cols, columns))
  data.select(*df_getter((1, 2, 3)))