Liked Mikhail Venkov answer. Added below code to have the column added as a timestamp value and keep timezone information
df['month'] = pd.to_datetime(df['timestamp'].dt.strftime('%Y-%m-01')).dt.tz_localize(timezone)
where timezone = 'America/Los_Angeles' or whatever zone you want