码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【python数据分析基础】—对列操作:调整DataFrame的列顺序


    文章目录

    • 前言
    • 一、手动调动顺序
    • 二、使用loc[]/iloc[]方法
      • .loc[]
      • .iloc[]
    • 三、特定排序:逆序排序
    • 四、实际应用


    前言

    在数据处理过程中,经常需要将列按照一定的要求进行排序,以方便展示。本文主要几种调整列顺序的常用方法。


    创建测试DataFrame

    import pandas as pd
    data={'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],
          'year':[2000,2001,2002,2001,2002],
          'pop':[1.5,1.7,3.6,2.4,2.9]}
    
    df=pd.DataFrame(data)
    df
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    一、手动调动顺序

    自己手动将列的名称按需要手动进行排序。

    df[['pop','state','year']]
    
    • 1

    在这里插入图片描述

    二、使用loc[]/iloc[]方法

    .loc[]

    df.loc[:,['pop','state','year']]
    
    • 1

    在这里插入图片描述

    .iloc[]

    df.iloc[:,[1,0,2]]
    
    • 1

    在这里插入图片描述

    三、特定排序:逆序排序

    • 方法一
    cols=list(df.columns)
    cols.reverse() #cols.reverse() 是将列表(list)进行逆序排序
    df[cols]
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    • 方法二
    cols=list(df.columns)
    df[cols[::-1]]  ## cols[::-1] 省略开始和结束下标,步长为-1,倒叙取此列表的值
    
    • 1
    • 2

    在这里插入图片描述

    四、实际应用

    数据准备:导入数据

    import os 
    import pandas as pd
    import numpy as np
    
    def read_file(filepath):
        os.chdir(os.path.dirname(filepath))
        return pd.read_csv(os.path.basename(filepath),encoding='utf-8')
    
    file_pos="F:\\python_machine_learing_work\\501_model\\data\\第一次建模用的样本数据\\训练集\\v1_6_feature.csv"
    
    data_pos=read_file(file_pos)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    查看数据情况

    data_pos.shape
    data_pos.dtypes
    
    • 1
    • 2

    在这里插入图片描述
    在这里插入图片描述

    移动最后一列"data_source"放到开头第一列,因为存在列的数量较多,不一定要通过列名称实现排序。

    cols = data_pos.columns.tolist()
    cols = cols[:1] + cols[-1:] + cols[1:-1]  # 将最后一列"data_source"放到开头第一列
    data_pos= data_pos[cols]
    
    • 1
    • 2
    • 3

    在这里插入图片描述


    参考文章:
    https://blog.csdn.net/lemonbit/article/details/119495498

  • 相关阅读:
    openlayers
    向量数据库Weaviate Cloud 和 Milvus Cloud:性能大比拼
    基于 Flutter 和 Firebase 实现的小游戏 I/O Pinball - 谷歌 I / O 2022
    计算机毕业设计django基于python鲜花培育专家系统
    常见数据类型的占用字节数以及类型转换需要注意的事项
    《使用AADL的模型基工程》读书笔记(一)
    【无标题】
    我用 GitHub 9.8k 的 Go 语言 2D 游戏引擎写了个游戏
    计算机毕业设计Java滴答拍摄影项目(源码+系统+mysql数据库+lw文档)
    【云原生丨Docker系列7】Docker的四种网络模式详解
  • 原文地址:https://blog.csdn.net/sodaloveer/article/details/133091264
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号