出租车轨迹分析

通过Pandas操作,合并并清理2016年黄色出租车数据,处理缺失值和异常值,最后保存为CSV文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

清除缺失数据 

# 导入所需的库文件
import numpy as np
import pandas as pd
import time, datetime
import matplotlib.pyplot as plt

# 导入数据
yellow_taxi = pd.DataFrame(pd.read_csv('./信息通信实验数据/yellow_tripdata_2016-01.csv'))
# yellow_taxi2 = pd.DataFrame(pd.read_csv('./信息通信实验数据/yellow_tripdata_2016-02.csv'))
# yellow_taxi3 = pd.DataFrame(pd.read_csv('./信息通信实验数据/yellow_tripdata_2016-03.csv'))



# 合并数据
# yellow_taxi = pd.concat([yellow_taxi1, yellow_taxi2], ignore_index=False)
# yellow_taxi = pd.concat([yellow_taxi, yellow_taxi3], ignore_index=False)

# 查看数据表维度
print(yellow_taxi.shape)
print(yellow_taxi.head(),"1")
# # 查看数据表列名称
print(yellow_taxi.columns)
print("读取成功")
# print(yellow_taxi.info())
rows_with_missing = yellow_taxi[yellow_taxi.isnull().any(axis=1)]
clean_data = yellow_taxi.drop(rows_with_missing.index)
# 保存处理后的数据到 CSV 文件
clean_data.to_csv('2016-1-clean_data.csv', index=False)

 每个字段设置条件进行筛选

data = pd.read_csv('2016-1-clean_data.csv')

# 设置每个列的异常值条件判断
column_conditions = {
    'passenger_count': lambda x: isinstance(x, int) and x > 0 and x < 10,
    'trip_distance': lambda x: 0 < x <= 50,
    'fare_amount': lambda x: 0 < x ,
    'mta_tax': lambda x: 0 < x <= 50,
    'tip_amount': lambda x: 0 < x <= 50,
    'tolls_amount': lambda x: 0 < x <= 50,


}
# 处理数据集
for column, condition in column_conditions.items():
    if not all(condition(x) for x in data[column]):
        data = data.drop(data.index[data[column].apply(lambda x: not condition(x))])
# 处理数据集
# for column, condition in column_conditions.items():
#     if not condition(data[column]).all():
#         # 如果判断条件不成立,则删除该列
#         data = data.drop([column], axis=1)

# 保存处理后的数据为 CSV 文件
data.to_csv('processed_data.csv', index=False)
print("finish")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值