gpt4 book ai didi

python - 过滤 Excel 文件并将结果输出到另一个 Excel

转载 作者:行者123 更新时间:2023-12-01 04:23:24 27 4
gpt4 key购买 nike

我目前正在为学校的一个俱乐部做一个小项目。其想法是,如果学生的 GPA 高于类(class)(新生、大二、大三和大四)的截止点,则对其进行过滤。

这是一个简单的例子;假设我有以下 .xlsx 文件:

GPA1

因此,根据他们的学分,他们属于某个类(class)的一部分。如果他们有x < 30他们是新生,x =< 59 && x >= 30他们是大二学生,x =< 89 && x >= 60他们是大三学生,如果他们有x >= 90学分他们是高年级学生。

所以每个类(class)的 GPA 分数线是不同的。这些是截止点:

  • ( x < 30 )新生:1.5
  • ( x =< 59 && x >= 30 )大二:2.0
  • ( x =< 89 && x >= 60 )初级:2.5
  • ( x >= 90 )高级:3.0

因此,在我们的例子中,如果我们要过滤这些数据,我们的输出将是:

GPA2

我一直在学习如何使用 xlsxwriter,但我不确定是否有更简单的方法来过滤如此简单的内容。

我只需要了解如何从这个输入的 Excel 文件中读取数据并读取正确的列进行过滤。

我相信这是一种可以用于过滤的方法(只是我模拟的伪代码):

 for row_line in credits_column:
grade_level = column_line[1] #This would be our Credits Column
#check the grade level
#Check if they're a Senior
if grade_level >= 90:
if gpa_level >= 3.0:
#Keep this row!
else:
#Hide/Delete this row!
#Check if they're a Junior
elif grade_level =< 89 && grade_level >= 60:
if gpa_level >= 2.5:
#Keep this row!
else:
#Hide/Delete this row!

elif grade_level =< 59 && grade_level >= 30:
if gpa_level >= 2.0:
#Keep this row!
else:
#Hide/Delete this row!

elif grade_level < 30:
if gpa_level >= 1.5:
#Keep this row!
else:
#Hide/Delete this row.
# Move on to the next worksheet row.
row += 1

如何正确获取 Credit 栏和 GPA 栏上的信息,然后进行过滤?

最佳答案

您可以使用名为 xlrd 的模块。您可以使用以下命令安装 xldd:

pip install xlrd

以下是从 xlsx 文件读取数据的步骤。我假设您知道文件中列的索引。对于本练习,我假设它们位于 A、B 和 C 列中:

 import xlrd

#First open the workbook
wb = xlrd.open_workbook('path to your file.xlsx')

#Then select the sheet. Replace the sheet1 with name of your sheet
sheet = wb.sheet_by_name('Sheet1')

#Then get values of each column. Excuse first item which is header
names = sheet.col_values(0)[1:]
credits = sheet.col_values(1)[1:]
GPA = sheet.col_values(2)[1:]

关于python - 过滤 Excel 文件并将结果输出到另一个 Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33442521/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com