creating a table from a selection and then using group by - oracle sql
You need to add aliases for the computed columns so that Oracle knows what names the columns of the table should have

CREATE TABLE shipping_costs_grouped 
AS
    SELECT SUM(invoice_amt) total_invoice_amt, 
           SUM(entered_weight) total_entered_weight, 
           SUM(billed_weight) total_billed_weight, 
           SUM(net_amt) total_net_amt, 
           MAX(ZONE) max_zone, 
           pps_num
      FROM shipping_costs 
     GROUP BY pps_num;


should be valid syntax.  

Whether it is actually appropriate to create a table for this sort of thing is a question you'd have to answer.  My bias would be that it would be more appropriate to create a view or potentially a materialized view but I don't know the exact nature of the problem you're trying to solve.