[英]Python CSV reading. Sort by 2 columns using ascending and descending order
csv 文件( https://www.kaggle.com/blitzr/movehub-city-rankings ->> movehubqualityoflife.csv)
我需要返回前五条记录,按 movehub 评分最高和医疗保健评分最差的城市排序
请帮助我,朋友。
下面看一下我当前的代码:
import pandas as pd
df = pd.read_csv("movehubqualityoflife.csv", delimiter=',')
df.sort_values(by='Movehub Rating', ascending=False)
df1 = pd.read_csv("movehubqualityoflife.csv", delimiter=',')
df1.sort_values(by='Health Care', ascending=True)
您应该可以通过对相同的 dataframe 进行两次排序来做到这一点,如下所示:
import pandas as pd
df = pd.read_csv("movehubqualityoflife.csv", delimiter=',')
df.sort_values(by='Movehub Rating', ascending=False)
df.sort_values(by='Health Care', ascending=True)
这样,您的 dataframe 将首先按“医疗保健升序”排序,然后按“movehub 评级降序”排序。 dataframe 对象中的排序操作是永久性的。
为了保存您设置的新订单,您需要就地使用,因此您的更改将永久生效。 您可以使用 head(5) 获得前 5 个
df.sort_values(by='Movehub Rating', ascending=False, inplace=True)
df1=df.head(5)
然后你可以为“医疗保健”再做一次。 如果您想对它们进行排序(首先按“Movehub Rating”,然后按“Health Care”),您可以执行以下操作:
df.sort_values(by=['Movehub Rating','Health Care'], ascending=[False,True], inplace=True)
df1=df.head(5)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.