移到尾列

借助新DataFrame

  1. import pandas as pd
  2. import numpy as np
  3. cols = ['A','B','C','D','E','date','G','H','F','I']
  4. df = pd.DataFrame([np.arange(len(cols))],
  5. columns=cols)
  6. df_last = df.loc[:,df.columns!='date']
  7. df_last['date']=df['date']

image.png

使用已有顺序列表

  1. import pandas as pd
  2. import numpy as np
  3. cols = ['A','B','C','D','E','date','G','H','F','I']
  4. df = pd.DataFrame([np.arange(len(cols))],
  5. columns=cols)
  6. df=df[['A','B','C','D','E','G','H','F','I','date']]
  7. df

image.png

移动首列

  1. import pandas as pd
  2. import numpy as np
  3. cols = ['A','B','C','D','E','date','G','H','F','I']
  4. df = pd.DataFrame([np.arange(len(cols))],
  5. columns=cols)
  6. df_mid=df.loc[:,df.columns!='date']
  7. df_first=pd.DataFrame(df['date'])
  8. for item in df_mid.columns:
  9. df_first[item]=df.loc[:,item]
  10. df_first

image.png

批量移动到首列

  1. import pandas as pd
  2. import numpy as np
  3. cols = ['A','B','C','D','E','G','H','F','I','date1','date2']
  4. df = pd.DataFrame([np.arange(len(cols))],
  5. columns=cols)
  6. # 要放到首列的多个列名
  7. add_columns = ['date1','date2']
  8. # 正式要用的列名列表,初始值与all_columns的值相同
  9. columns_list = ['date1','date2']
  10. for item in df.columns:
  11. if item not in add_columns:
  12. columns_list.append(item)
  13. df = df[columns_list]
  14. df

image.png