如何找到谁的下一个生日给定的CSV文件的名字和生日?

m2xkgtsf  于 2022-12-06  发布在  其他
关注(0)|答案(2)|浏览(113)

我们得到一个包含姓名和生日的CSV文件,我们必须输出谁的生日是函数中的下一个。
我一直收到一个本地未绑定错误,不知道如何修复它,基本上是尝试读取文件,检查日期,找到哪个日期是下一个,然后返回与该日期相关的名称
第一个

35g0bw71

35g0bw711#

所以我得到了这个-.您只想知道下一个bday是谁,并希望基于CSV文件得到这个人的name

import pandas as pd
from datetime import date

def nextBirthdate(file, inp_date):
    d,m,y = [int(x) for x in inp_date.split('/')]
    df = pd.read_csv('file.csv', header=None)
    df[1] = pd.to_datetime(df[1])
    df[1] = df[1].apply(lambda x: x.replace(year=y))
    inp_date = date(y,m,d)
    df['Diff'] = (df[1].dt.date - inp_date).dt.days
    return df.sort_values(by=['Diff'])[0].values[0]

nextBirthdate("birthdates.csv", "01/01/2022")
r3i60tvu

r3i60tvu2#

欢迎学习堆栈溢出。方法是
1.读入CSV数据
1.将数据转换为pandas DataFrame等格式
2a.我建议您将日期转换为例如pd.Timestamp,而不要将它们保留为字符串,以避免在比较时发生不好的事情
1.根据日期对DataFrame进行排序,或者查找具有最小值的行,这取决于您
如何做每一件事是它自己的问题,至少有一个答案已经在堆栈溢出和其他地方,所以你可能不需要问一个新的,只是搜索它。

相关问题