diff --git a/CalculateSpecialBonus.py b/CalculateSpecialBonus.py new file mode 100644 index 0000000..aba58e0 --- /dev/null +++ b/CalculateSpecialBonus.py @@ -0,0 +1,14 @@ +import pandas as pd + +def calculate_special_bonus(employees: pd.DataFrame) -> pd.DataFrame: + result = [] + for i in range(len(employees)): + e_id = employees['employee_id'][i] + name = employees['name'][i] + if(e_id % 2 != 0) and (name[0] != 'M'): + result.append([e_id , employees['salary'][i]]) + else: + result.append([e_id,0]) + return pd.DataFrame(result , columns = ['employee_id' , 'bonus']).sort_values(by = ['employee_id']) + + \ No newline at end of file diff --git a/FixNamesInATable.py b/FixNamesInATable.py new file mode 100644 index 0000000..1aacd39 --- /dev/null +++ b/FixNamesInATable.py @@ -0,0 +1,6 @@ +import pandas as pd + +def fix_names(users: pd.DataFrame) -> pd.DataFrame: + users['name'] = users['name'].str[0].str.upper() + users['name'].str[1:].str.lower() + return users.sort_values(by = ['user_id']) + \ No newline at end of file diff --git a/PatientsWithACondition.py b/PatientsWithACondition.py new file mode 100644 index 0000000..352a4dd --- /dev/null +++ b/PatientsWithACondition.py @@ -0,0 +1,17 @@ +import pandas as pd + +def find_patients(patients: pd.DataFrame) -> pd.DataFrame: + result =[] + for i in range(len(patients)): + p_id = patients['patient_id'][i] + p_name = patients['patient_name'][i] + conditions = patients['conditions'][i] + for condition in conditions.split(): + if condition.startswith('DIAB1'): + result.append([p_id,p_name,conditions]) + break + + return pd.DataFrame(result , columns = ['patient_id' , 'patient_name' , 'conditions']) + + + \ No newline at end of file