如何在Python Pandas中按条件对列进行排序

时间:2019-04-16 09:35:26

标签: python-3.x pandas csv

我目前在对熊猫排序时遇到问题。这就是我所拥有的:一个具有4列的 table.csv 文件

     A                       B        C        D
~/dir1/dir2/dir3/dir6        25      Bred     true
~/dir1/dir8/dir12/dir13      45      Alvin    true
~/dir1/dir4/dir5             95      Mary     true
~/dir1/dir2/dir7            125      Bred     false
~/dir1/dir8/dir9/dir11       45      Alvin    true
~/dir1/dir10/dir0            35      Alvin    false
...

我想同时对2列C和A进行排序。 C的优先级较高,升序排列,A的排序方式是:哪个字符串的首字母和字母首字母大“ /”(闪屏)

这是我从结果中期望的结果:

     A                       B        C        D
~/dir1/dir8/dir9/dir11       45      Alvin    true
~/dir1/dir8/dir12/dir13      45      Alvin    true
~/dir1/dir10/dir0            35      Alvin    false
~/dir1/dir2/dir3/dir6        25      Bred     true
~/dir1/dir2/dir7            125      Bred     false
~/dir1/dir4/dir5             95      Mary     true

...

我尝试了

df = pd.read_csv('table.csv')
df.sort_values(['C','A'])

仅返回 C 列的字母排序顺序,但不返回第二个条件。 我有什么办法可以满足要求?

0 个答案:

没有答案