我正在制作每周分数的足球数据库。每行代表一个人的每周表现(例如,捕获量,码数,TD),同时还包含他们的每周幻想分数和他们的季节总幻想分数。
每条记录现在都需要排名等级(每年内),这意味着他们的赛季分数在每年的足球位置中排名。 1995年得分最高的QB是QB 1,2008年第七高的RB是RB 7。
import csv
import zipfile
input_zip_filename = 'Desktop.zip'
output_csv_filename = input("Enter the name of the CSV file to create: ")
# Helper function.
def line_count(archive, filename):
''' Count the lines in specified ZipFile member. '''
with archive.open(filename) as member:
return sum(1 for line in member)
with zipfile.ZipFile(input_zip_filename, 'r') as archive:
# List files in archive.
print('Members of {!r}:'.format(input_zip_filename))
for filename in archive.namelist():
print(' {}'.format(filename))
# Create csv with filenames and line counts.
with open(output_csv_filename, 'w', newline='') as output_csv:
csv.writer(output_csv).writerows(
# generator expression
[filename, line_count(archive, filename)] # contents of one row
for filename in archive.namelist())
每个职位都有自己的Pos Rank列,我创建了这个公式来对季节点进行排名:
test1.txt,25
test2.txt,10
问题是,因为每个玩家可能有16个游戏(例如16个记录),这意味着Corey Dillon可能有16个记录,其中Season = 1997 AND SeasonPts = 198.8。因此,他将在排名中占据16位。
当$ B2和$ D2都是重复时,我需要忽略这些记录。
P.S。我不介意用两个选项产生这个:一个列只有1997年第一个Corey Dillon获得排名,而一个所有1997年Corey Dillons共享重复排名。当我继续在所有这些数据上运行COUNTIF(和其他公式)时,我猜测这两个列可以防止未来的头痛(例如"季节的数量......"可能会被加标16 Dillons)。