如何在 Python 中按列对 CSV 文件中的数据进行排序?
原文:https://www . geesforgeks . org/如何按 python 中的 csv 文件中的列对数据进行排序/
在本文中,我们将讨论如何使用 Python 按列对 CSV 进行排序。
方法一:使用sort _ values()
我们可以按照自己的要求取表头名称,轴可以是 0 也可以是 1,其中 0 表示“行”,“1”表示“列”。升序可以是真/假,如果是真,则按升序排列,如果是假,则按降序排列。
语法: 数据框. sort_values(by,axis=0,升序=True,inplace=False,kind='quicksort ',na_position='last')
使用的 CSV 文件:
以下是描述 CSV 数据集排序的各种方法。
例 1: 根据薪资对数据集进行降序排序
Python 3
# importing pandas package
import pandas as pandasForSortingCSV
# assign dataset
csvData = pandasForSortingCSV.read_csv("sample.csv")
# displaying unsorted data frame
print("\nBefore sorting:")
print(csvData)
# sort data frame
csvData.sort_values(["Salary"],
axis=0,
ascending=[False],
inplace=True)
# displaying sorted data frame
print("\nAfter sorting:")
print(csvData)
输出:
例 2: 根据薪资对数据集进行默认(升序)排序。
Python 3
# importing pandas package
import pandas as pandasForSortingCSV
# assign dataset
csvData = pandasForSortingCSV.read_csv("sample.csv")
# displaying unsorted data frame
print("\nBefore sorting:")
print(csvData)
# sort data frame
csvData.sort_values(csvData.columns[4],
axis=0,
inplace=True)
# displaying sorted data frame
print("\nAfter sorting:")
print(csvData)
输出:
示例 3: 按照姓名、年龄和身高的升序对数据集进行排序。
Python 3
# importing pandas package
import pandas as pandasForSortingCSV
# assign dataset
csvData = pandasForSortingCSV.read_csv("sample.csv")
# displaying unsorted data frame
print("\nBefore sorting:")
print(csvData)
# sort data frame
csvData.sort_values(["Name", "Age", "Height"],
axis=0,
ascending=[True, True, True],
inplace=True)
# displaying sorted data frame
print("\nAfter sorting:")
print(csvData)
输出:
例 4: 按照薪资降序、年龄升序对数据集进行排序。
Python 3
# importing pandas package
import pandas as pandasForSortingCSV
# assign dataset
csvData = pandasForSortingCSV.read_csv("sample.csv")
# displaying unsorted data frame
print("\nBefore sorting:")
print(csvData)
# sort data frame
csvData.sort_values([csvData.columns[4], csvData.columns[2]],
axis=0,
ascending=[False, True],
inplace=True)
# displaying sorted data frame
print("\nAfter sorting:")
print(csvData)
输出:
方法二:使用 排序()
CSV 文件的另一种排序方式是通过在 CSV 模块对象上使用 (已排序) 方法。但是,它只能基于一列对 CSV 文件进行排序。
语法:
已排序(可迭代、关键、反向)
以下是描述 CSV 数据集排序的各种方法。
例 1: 在年龄的基础上对数据集进行升序排序。
Python 3
# import modules
import csv ,operator
# load csv file
data = csv.reader(open('sample.csv'),delimiter=',')
# sort data on the basis of age
data = sorted(data, key=operator.itemgetter(2))
# displaying sorted data
print('After sorting:')
display(data)
输出:
例 2: 根据年龄降序对数据集进行排序。
Python 3
# import modules
import csv ,operator
# load csv file
data = csv.reader(open('sample.csv'),delimiter=',')
# sort data on the basis of age
data = sorted(data, key=operator.itemgetter(2), reverse=True)
# displaying sorted data
print('After sorting:')
display(data)
输出:
版权属于:月萌API www.moonapi.com,转载请注明出处