简体   繁体   English

如何在使用 python 时只对 csv 文件中的第一列进行排序而不影响任何其他列

[英]How do you sort only the first column in a csv file and not affect any of the other columns while doing so using python

i am working on a table(csv file) where it has the following data:我正在处理一个表(csv 文件),其中包含以下数据:

roll_no,student_name,grade,email_id  
1,Aarav Gosalia,Grade 11,aarav.gosalia@flag.org.in  
2,Aarav Rawal,Grade 11,aarav.rawal@flag.org.in  
3,Abizar Chitalwala,Grade 11,abizar.chitalwala@flag.org.in  
4,Ahad Motorwala,Grade 11,ahad.motorwala@flag.org.in  
5,Armaan Adenwala,Grade 11,armaan.adenwala@flag.org.in  
6,Aryan Shah,Grade 11,aryan.shah@flag.org.in  
7,Baasit Motorwala,Grade 11,baasit.motorwala@flag.org.in  
16,Caroline Walker,Grade 11,caroline.walker@flag.org.in  
8,Darsshan Kavedia,Grade 11,darsshan.kavedia@flag.org.in  
9,Devanshi Rajgharia,Grade 11,devanshi.rajgharia@flag.org.in  
10,Dhruv Jain,Grade 11,dhruv.jain@flag.org.in  
11,Eisa Patel,Grade 11,eisa.patel@flag.org.in  
12,Esha Khimawat,Grade 11,esha.khimawat@flag.org.in  
13,Fatima Unwala,Grade 11,fatima.unwala@flag.org.in  
14,Hamza Erfan,Grade 11,hamza.erfan@flag.org.in  
15,Harsh Gosar,Grade 11,harsh.gosar@flag.org.in  

so as you can see all of the names are sorted but the roll number of caroline walker is 16. so i want a way to sort only the roll numbers and not affect any of the other columns while doing so.所以你可以看到所有的名字都被排序了,但卡罗琳沃克的卷号是 16。所以我想要一种方法来只对卷号进行排序,而不影响其他任何列。 I want the final table to look like this:我希望决赛桌看起来像这样:

roll_no,student_name,grade,email_id   
1,Aarav Gosalia,Grade 11,aarav.gosalia@flag.org.in  
2,Aarav Rawal,Grade 11,aarav.rawal@flag.org.in  
3,Abizar Chitalwala,Grade 11,abizar.chitalwala@flag.org.in  
4,Ahad Motorwala,Grade 11,ahad.motorwala@flag.org.in  
5,Armaan Adenwala,Grade 11,armaan.adenwala@flag.org.in  
6,Aryan Shah,Grade 11,aryan.shah@flag.org.in  
7,Baasit Motorwala,Grade 11,baasit.motorwala@flag.org.in  
8,Caroline Walker,Grade 11,caroline.walker@flag.org.in  
9,Darsshan Kavedia,Grade 11,darsshan.kavedia@flag.org.in  
10,Devanshi Rajgharia,Grade 11,devanshi.rajgharia@flag.org.in  
11,Dhruv Jain,Grade 11,dhruv.jain@flag.org.in  
12,Eisa Patel,Grade 11,eisa.patel@flag.org.in  
13,Esha Khimawat,Grade 11,esha.khimawat@flag.org.in  
14,Fatima Unwala,Grade 11,fatima.unwala@flag.org.in  
15,Hamza Erfan,Grade 11,hamza.erfan@flag.org.in  
16,Harsh Gosar,Grade 11,harsh.gosar@flag.org.in  

Please help me and keep in mind that i am yet a beginner in python.请帮助我,并记住我还是 Python 的初学者。

just use pandas.只需使用熊猫。 df['roll_no'] = range(1:len(df))

pandas is one way. pandas是一种方式。

import pandas as pd

df = pd.read_csv('file.csv')
df.sort_values(by='roll_no')
df.to_csv('file.csv',index=False)

This will work:这将起作用:

df = pd.DataFrame({'id':[1,3,2,7],
                   'name': ['M', 'r', 'd', 'd']})
df['id'] =  list(df['id'].sort_values())
df

Result:结果:

    id  name
0   1   M
1   2   r
2   3   d
3   7   d

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何使用python对CSV文件的多个列进行排序? - How do you sort multiple columns of a CSV file using python? 如何对 python 中的 CSV 文件进行排序,使其仅返回某些值? - How do I sort through a CSV file in python so that it only returns certain values? 如何使用python将所需的行从一个csv文件复制到另一个csv文件? - How do I copy only the required rows from one csv file to other csv file using python? 如何在Python中将列的第一个元素与CSV文件中的其他元素进行比较? - How to compare first element of a column with other elements in CSV file in Python? Python:如何相对于除第一列以外的列对csv文件进行切片? - Python: how to slice a csv file with respect to a column other than the first? 如何仅排序和存储两个.CSV 文件中的前 3 个位置,然后使用 Python 将它们存储到一个.CSV 文件中的两列? - How to sort and store only the top 3 locations from two .CSV files and then store them into two columns in one .CSV file using Python? 我想读取csv文件中的x列并根据x列中的内容填充其他列? 如何在Python中做到这一点? - I want to read a column x in a csv file and populate other columns based on the content in the column x ? How do i do that in Python? 在python中,如何将两列的CSV文件转换成bigrams? - In python, how do you convert a CSV file of two columns into bigrams? 如何使用特定列使用python对csv文件中的数据进行排序 - how to sort data in csv file using python using particular column 如何对 csv 文件进行排序,以便我的列按降序排列? - How do I sort a csv file so that my columns are in descending order?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM