我正在读取一个包含航班记录的大型CSV文件,我想删除所有没有“ Origin_Airport_Code”或“ Destination_Airport_Code”作为ORD的行。之后,我还要将“年份”和“飞行日期”列合并为日期时间,并假设按日期时间进行索引排期。
我不确定要尝试什么,因为我是python和pandas的新手
data = pd.read_csv("groundhog_query.csv")
data.columns
Index(['Year', 'Flight_Date', 'Day_Of_Year', 'Unique_Carrier_ID', 'Airline_ID',
'Tail_Number', 'Flight_Number', 'Origin_Airport_ID', 'Origin_Market_ID',
'Origin_Airport_Code', 'Origin_State', 'Destination_Airport_ID',
'Destination_Market_ID', 'Destination_Airport_Code', 'Dest_State',
'Scheduled_Dep_Time', 'Actual_Dep_Time', 'Dep_Delay', 'Pos_Dep_Delay',
'Scheduled_Arr_Time', 'Actual_Arr_Time', 'Arr_Delay', 'Pos_Arr_Delay',
'Combined_Arr_Delay', 'Can_Status', 'Can_Reason', 'Div_Status',
'Scheduled_Elapsed_Time', 'Actual_Elapsed_Time', 'Carrier_Delay',
'Weather_Delay', 'Natl_Airspace_System_Delay', 'Security_Delay',
'Late_Aircraft_Delay', 'Div_Airport_Landings', 'Div_Landing_Status',
'Div_Elapsed_Time', 'Div_Arrival_Delay', 'Div_Airport_1_ID',
'Div_1_Tail_Num', 'Div_Airport_2_ID', 'Div_2_Tail_Num',
'Div_Airport_3_ID', 'Div_3_Tail_Num', 'Div_Airport_4_ID',
'Div_4_Tail_Num', 'Div_Airport_5_ID', 'Div_5_Tail_Num'],
dtype='object')
这是列的组织方式。我可以做一些if语句或循环吗? 感谢您的帮助
答案 0 :(得分:0)
过滤符合这两列的行,删除起点或终点等于ORD的丝束:
data = data[(data['Origin_Airport_Code'] != 'ORD']) | (data['Destination_Airport_Code'] !='ORD'])]
关于分组依据,我没有遵循分组依据的结果,但是在这里您可以看到groupby函数在熊猫中的工作方式: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.groupby.html