我正在使用熊猫来比较持续时间以标记出勤率。 我已经使用DateTime和timedelta来比较持续时间。我想将输出保存在相邻的列中,以便我们知道谁在场,谁不在。
我可以比较这些值并打印出该人是否在场,但我想在该人名字前面的excel文件中完成
df1 =df[['Date', 'Agent Name', 'Login Time']]
for x in df1['Login Time']:
s1 = str(x)
s2 = '12:00:00'
s3 = '3:10:00'
s4 = '01:00:00'
FMT = '%H:%M:%S'
tdelta = datetime.strptime(s2, FMT) - datetime.strptime(s1, FMT)
if x == s4:
print('Aussi')
elif (str(tdelta)) < s3:
print('Present')
else:
print('Check')
我的想法是,我将输出的值存储在一个列表中,然后将该列表添加到df中的新列中。
答案 0 :(得分:0)
您需要在循环之前创建一个空列表,然后在循环期间将其追加到列表中。
DECLARE @proc_name NVARCHAR(150) = 'doSomething',
@proc_sql NVARCHAR(MAX),
@schema_name NVARCHAR(MAX) = 'dbo';
SELECT @proc_sql = REPLACE(m.definition, '[templates].', '[' + @schema_name + '].')
--select *
FROM sys.sql_modules m
INNER JOIN sys.objects o
ON m.object_id = o.object_id
WHERE
o.type_desc = 'sql_stored_Procedure'
AND o.name = @proc_name
AND SCHEMA_NAME(o.schema_id) = @schema_name
PRINT (@proc_sql);
EXEC (@proc_sql);
循环之前添加此内容:for
attendance = []
循环的末尾,其中for
可以是 Aussi , Present 或之一检查:value
这可能是这样的:
attendance.append(value)