How fill new column with businessDuration result in Dataframe Python

Viewed 51

please help me to solve this, How to make new column in df with duration result? also result for all row. Thanks.

import pandas as pd
from datetime import time,datetime
from itertools import repeat

df = pd.read_csv("data.csv")
df['startdate_column'] = pd.to_datetime(df['startdate_column'])
df['enddate_column'] = pd.to_datetime(df['enddate_column'])

start_time=time(8,0,0)
end_time=time(17,0,0)

unit='min'

df['Duration'] = list(map(businessDuration,startdate=df['startdate_column'],enddate=df['enddate_column'],repeat(start_time),repeat(end_time),repeat(weekendlist=[6]),repeat(unit)))```

                                                  
1 Answers

Use:

f = lambda x: businessDuration(startdate=x['startdate_column'],
                               enddate=x['enddate_column'],
                               starttime=start_time,
                               endtime=end_time,
                               weekendlist=[6],
                               unit=unit)

df['Duration'] = df.apply(f, axis=1) 
Related