我试图获得出勤率,如果有人参加 3 天,则得分为 100%,2 天为 67%,依此类推。
df = pd.read_excel(r'C:\Users\JEFF\PycharmProjects\project\janlogs.xlsx', parse_dates=['Date/Time'])
df2 = df.drop_duplicates(subset=["Name", "Date"])
weekly_totals = df2.groupby(['Name', 'Week']
).agg(
{
'Date': ['count']
}
)
# print (weekly_totals)
weekly_table = pd.pivot_table(weekly_totals, columns='Week', values=['Date'],
index=['Name'],
fill_value=0, dropna=True)
到目前为止,我已经能够获得每周参加的天数。
Week 2 3 4 5 6
Name
Bruce Wayne 3 1 3 2 0
Agnes Wayua 0 0 1 0 0
Alexandra Cronberg 2 2 2 2 0
我可以通过任何方式将这些出勤率转换为百分比,如果出勤率为 3,则转换为 100%,如果为 2,则转换为 67%,依此类推。