pandas 颠倒列顺序的两种解决方案

作者:勤劳的大乐乐 时间:2023-10-30 11:37:22 

在数据预处理过程中可能需要将列的顺序颠倒,有两种方法。


import numpy as np
import pandas as pd
df = pd.DataFrame(np.array(range(20)).reshape(4,5))
print(df)

原始dataframe如下:


 0  1  2  3  4
0  0  1  2  3  4
1  5  6  7  8  9
2 10 11 12 13 14
3 15 16 17 18 19

1. 方法一

手动设置列名列表,应用在dataframe中(适合列名比较少的情况)

我们可以手动来更换列的顺序


cols = [4,3,2,1,0]
df = df.ix[:,cols]
print(df)

输出如下:


 4  3  2  1  0
0  4  3  2  1  0
1  9  8  7  6  5
2 14 13 12 11 10
3 19 18 17 16 15

2. 方法二

pandas提供颠倒列顺序的方式

可以看出当数据的列较多时,方法一会非常繁琐,pandas提供一种非常简便的方式来进行列顺序的颠倒。


df = df.ix[:, ::-1]
print(df)

输出如下:


 4  3  2  1  0
0  4  3  2  1  0
1  9  8  7  6  5
2 14 13 12 11 10
3 19 18 17 16 15

补充:Python列表排序与倒序

python学习笔记

列表排序

1、sort()

2、sorted()

3、reverse()

sort()的使用


letters = ['d','a','e','c','b']
print letters
['d','a','e','c','b']
letters.sort()
print letters
['a','b','c','d','e']

sort()会自动按照字母顺序对字符串由小到大排序,如果数字就由小到大

注:sort()会修改原来的列表他是修改列表,而不是创建新的列表。

不应该


print letters.sort()

而应该


letters.sort()
print letters

还可以用.sorted()函数


# 得到一个有序的副本列表
#而不影响原来列表的顺序
old = ['d','a','e','c','b']
new = sorted(old)
print old
['d','a','e','c','b']
print new
['a','b','c','d','e']

reverse的使用


# 方法1 作为reverse()函数
letters = ['d','a','e','c','b']
letters.sort()
print letters
['a','b','c','d','e']
letters.reverse()
print letters
['e','d','c','b','a']
# 方法2 作为sort()函数参数
letters = ['d','a','e','c','b']
letter.sort(reverse = Ture)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

来源:https://blog.csdn.net/qq_26255311/article/details/90199484

标签:pandas,颠倒,列顺序
0
投稿

猜你喜欢

  • 说说如何遍历Python列表的方法示例

    2023-05-26 14:01:52
  • Python中对象迭代与反迭代的技巧总结

    2023-06-08 04:25:33
  • vue+elementUi图片上传组件使用详解

    2024-05-10 14:14:49
  • 详解Flask前后端分离项目案例

    2022-03-16 02:43:51
  • python绘制规则网络图形实例

    2021-08-31 02:28:28
  • vue + typescript + video.js实现 流媒体播放 视频监控功能

    2024-05-09 15:10:38
  • Perl中的文件读写学习笔记

    2022-07-10 09:13:55
  • spring boot 测试单元修改数据库不成功的解决

    2024-01-21 00:20:14
  • javascript放大镜效果的简单实现

    2024-04-27 15:18:53
  • Python使用docx模块实现刷题功能代码

    2021-03-12 22:28:30
  • anaconda python3.8安装后降级

    2021-09-12 05:28:51
  • Go 实战单队列到优先级队列实现图文示例

    2024-05-22 10:19:03
  • python3实现163邮箱SMTP发送邮件

    2021-02-28 07:59:19
  • Python爬虫Scrapy框架IP代理的配置与调试

    2022-09-19 08:20:26
  • python数据类型_字符串常用操作(详解)

    2023-10-12 05:02:57
  • Python 可迭代对象 iterable的具体使用

    2021-08-28 08:24:32
  • MySQL下海量数据的迁移步骤分享

    2024-01-16 13:13:10
  • 详解python开发环境搭建

    2023-09-17 21:37:25
  • Python序列化模块之pickle与json详解

    2023-07-08 05:48:23
  • Python统计词频的几种方法小结

    2023-10-22 05:35:41
  • asp之家 网络编程 m.aspxhome.com