Tôi có khung sau dữ liệu:Làm thế nào để sắp xếp khung dữ liệu gấu trúc bằng cách sử dụng các giá trị từ một số cột?
df = pandas.DataFrame([{'c1':3,'c2':10},{'c1':2, 'c2':30},{'c1':1,'c2':20},{'c1':2,'c2':15},{'c1':2,'c2':100}])
Hoặc, ở dạng có thể đọc được con người:
c1 c2
0 3 10
1 2 30
2 1 20
3 2 15
4 2 100
Sau đây công trình sắp xếp-lệnh như mong đợi:
df.sort(['c1','c2'], ascending=False)
Output:
c1 c2
0 3 10
4 2 100
1 2 30
3 2 15
2 1 20
Nhưng lệnh sau:
df.sort(['c1','c2'], ascending=[False,True])
kết quả trong
c1 c2
2 1 20
3 2 15
1 2 30
4 2 100
0 3 10
và đây không phải là những gì tôi mong đợi. Tôi hy vọng có các giá trị trong cột đầu tiên được sắp xếp từ lớn nhất đến nhỏ nhất, và nếu có giá trị giống nhau trong cột đầu tiên, theo thứ tự các giá trị tăng dần từ cột thứ hai.
Có ai biết tại sao nó không hoạt động như mong đợi không?
THÊM
Đây là copy-paste:
>>> df.sort(['c1','c2'], ascending=[False,True])
c1 c2
2 1 20
3 2 15
1 2 30
4 2 100
0 3 10
Bạn đang sử dụng phiên bản gấu trúc và vón cục nào? –