灌篮少年 发表于 2023-8-2 17:46:55

【pandas小技巧】--反转行列顺序

反转pandas DataFrame的行列顺序是一种非常实用的操作。
在实际应用中,当我们需要对数据进行排列或者排序时,通常会使用到Pandas的行列反转功能。
这个过程可以帮助我们更好地理解数据集,发现其中的规律和趋势。同时,行列反转还可以帮助我们将数据可视化,使得图表更加易于理解。
除了常规的数据分析外,行列反转还可以用来进行数据的透视。通过将某一行或者列作为透视点,我们可以将数据按照不同的维度进行组合和汇总,从而得到更加全面的数据分析结果。
本篇介绍几种pandas中常用的反转行列顺序的方法。
1. 反转行顺序

1.1. loc函数

通过loc函数反转行顺序:
import pandas as pd

fp = "population1.csv"
df = pd.read_csv(fp)
dfhttps://cdn.nlark.com/yuque/0/2023/png/2235414/1683776395938-6bb464f5-d121-4459-8909-b639922053fc.png#averageHue=%23e5e5e5&clientId=ue9186d80-f86c-4&from=paste&height=190&id=u18dc3992&originHeight=190&originWidth=338&originalType=binary&ratio=1&rotation=0&showTitle=false&size=13461&status=done&style=stroke&taskId=u41b1f791-5708-41ec-b177-8577b3d0e8d&title=&width=338
df.loc[::-1]https://cdn.nlark.com/yuque/0/2023/png/2235414/1683776839637-d0673940-c907-46ca-b17a-a95de6027c1f.png#averageHue=%23e8e5e5&clientId=ue9186d80-f86c-4&from=paste&height=220&id=u3c588d39&originHeight=220&originWidth=802&originalType=binary&ratio=1&rotation=0&showTitle=false&size=84706&status=done&style=stroke&taskId=ucf290318-c75b-45b8-a731-67cd5c8de28&title=&width=802
1.2. reversed函数

通过reversed方法反转索引:
df.reindex(reversed(df.index))https://cdn.nlark.com/yuque/0/2023/png/2235414/1683776839637-d0673940-c907-46ca-b17a-a95de6027c1f.png#averageHue=%23e8e5e5&clientId=ue9186d80-f86c-4&from=paste&height=220&id=FwSch&originHeight=220&originWidth=802&originalType=binary&ratio=1&rotation=0&showTitle=false&size=84706&status=done&style=stroke&taskId=ucf290318-c75b-45b8-a731-67cd5c8de28&title=&width=802
注意:使用reversed方法时,索引不能重复,如果有重复的索引,请使用loc函数,使用reversed方法会报错。
2. 反转列顺序

2.1. loc函数

通过loc函数反转列顺序:
df.loc[:, ::-1]https://cdn.nlark.com/yuque/0/2023/png/2235414/1683776879295-e9232bea-019a-45c1-89ec-50b4436ad0d3.png#averageHue=%23e9e3e3&clientId=ue9186d80-f86c-4&from=paste&height=229&id=u4befb45c&originHeight=229&originWidth=805&originalType=binary&ratio=1&rotation=0&showTitle=false&size=84611&status=done&style=stroke&taskId=ub2cf7f1a-cd28-4ff3-95b4-d9e36235856&title=&width=805
2.2. reversed函数

dfhttps://cdn.nlark.com/yuque/0/2023/png/2235414/1683776879295-e9232bea-019a-45c1-89ec-50b4436ad0d3.png#averageHue=%23e9e3e3&clientId=ue9186d80-f86c-4&from=paste&height=229&id=slQ32&originHeight=229&originWidth=805&originalType=binary&ratio=1&rotation=0&showTitle=false&size=84611&status=done&style=stroke&taskId=ub2cf7f1a-cd28-4ff3-95b4-d9e36235856&title=&width=805
注意:当列名有重复的时候,还是建议使用loc函数,使用reversed虽然不会报错,但是会导致每个相同列名的列会多一份相同的数据出来。
3. 附录

测试数据下载地址:
population1.csv:http://databook.top:8888/pandas-tricks/population1.csv

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 【pandas小技巧】--反转行列顺序