Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pandas as pd, numpy as np
- columns = ['Location','Hourly','Annually','Monthly','Daily','Average','Hourly_Rate','Annual_Rate']
- df = pd.DataFrame(columns=columns)
- df.loc[1] = ['A',True,False,False,False,10.10,np.nan,np.nan]
- df.loc[2] = ['A',False,True,False,False,50000,np.nan,np.nan]
- df['Annual_Rate'] = (df['Average'] * 2080).where(df['Hourly'] == True) #need this line to run and not get overwritten
- df['Annual_Rate'] = df['Average'].where(df['Annually'] == True ) #overwrites prior line
- df['Annual_Rate'] = df['Average'].where(df['Annually'] == True & pd.isna(df['Annual_Rate'])) #overwrites prior line and is incorrect
- df['Hourly_Rate'] = (df['Average'] / 2080).where([(df['Annually'] == True) & (pd.isnull(df['Hourly_Rate']))])
- df['Hourly_Rate'] = df['Average'].where(df['Hourly'] == True & (pd.isna(df['Hourly_Rate'])))
- df['Hourly_Rate'] = df['Average'].where(df['Hourly'] == True)
- df.head(10)
- df['Hourly_Rate'] = (df['Average'] / 2080).where([(df['Annually'] == True) & (pd.isnull(df['Hourly_Rate']))])
- df['Annual_Rate'] = (df['Average'] * 2080).where(df['Hourly'] == True)
Add Comment
Please, Sign In to add comment