Итак, если вы хотите изменить значение в столбце часов на ноль, где значение не находится в диапазоне 0-23, вот что делать. Я на самом деле не понял ваш вопрос четко, поэтому я предполагаю, что это должно быть Я взял фиктивный пример, поскольку вы не предоставили свои данные.
import pandas as pd
import numpy as np
df = pd.DataFrame({'Date':['10/2/2011', '11/2/2011', '12/2/2011',
'13/2/2011','14/2/2011'],
'Product':['Umbrella', 'Matress', 'Badminton', 'Shuttle','ewf'],
'Last_Price':[1200, 1500, 1600, 352,'ee'],
'Updated_Price':[12, 24, 0, 1,np.nan],
'Discount':[10, 10, 10, 10, 11]})
df['Updated_Price'] = df['Updated_Price'].fillna(0)
df.loc[df['Updated_Price']>23,'Updated_Price']=0
Это заменяет все значения nan на 0, а для значений больше 23 также заменяет на 0