我有一个包含指向个人的csv文件。这种形式:
3,23/02/2015,08:27,08:27,12:29,13:52,19:48
3,24/02/2015,08:17,12:36,13:59,19:28
5,23/02/2015,10:53,13:44
5,25/02/2015,09:05,12:34,12:35,13:30,19:08
5,26/02/2015,08:51,12:20,13:46,18:47,18:58
我想要清洁。这样:
ID, DATE, IN,BREAK_OUT, BREAK_IN, OUT, WORK_TIME
3,Monday 23/02/2015,08:27,12:29,13:52,19:48,08:00hours
3,Tuesday 24/02/2015,08:17,12:36,13:59,19:28,08:00hours
5,Monday 23/02/2015,10:53,NAN,13:44,NAN,2houres
5,Wednesday 25/02/2015,09:05,12:34,13:30,19:08,08hours
你能帮帮我吗?
想你
答案 0 :(得分:0)
这个问题可能有助于您:How to split string into column
首先,读取整个文件并拆分列。检查是否有数据,并将其写回新文件。
如果您需要其他帮助,请告诉我们您尝试了什么,哪些对您有用,哪些无效等等。我们不会为您编写完整的程序/脚本。
答案 1 :(得分:0)
我建议您使用pandas从文件中导入数据
import pandas as pd
pd.read_csv(filepath, sep = ',')
假设文件路径导致你的csv,应该做的伎俩。然后我建议你使用datetime函数将你的字符串转换为你可以计算的日期(我想你也可以使用numpys datetime64类型,我只是不习惯它们。)
import datetime as dt
day = dt.datetime.strptime('23/02/2015', '%d/%m/%Y')
in = dt.datetime.combine(day, dt.datetime.strptime('08:27', '%H:%M').time())
应该做的伎俩。有必要,您的in
也是datetime
对象,不仅是时间对象,否则您无法减去它们(这将是计算工作时间的必要下一步。
认为这应该有点让你开始,你会找到pandas文档here和日期时间文档here。
如果您还有其他问题,请尝试更具体地提出您的问题。