数据分析,可视化大屏_毕设选题推荐_SPark_数据挖掘_Hadoop)
作者计算机毕业设计江挽个人简介曾长期从事计算机专业培训教学本人也热爱上课教学语言擅长Java、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。平常喜欢分享一些自己开发中遇到的问题的解决办法也喜欢交流技术大家有技术代码这一块的问题可以问我想说的话感谢大家的关注与支持网站实战项目安卓/小程序实战项目大数据实战项目深度学习实战项目目录基于大数据的合成航空公司乘客和航班数据分析与可视介绍基于大数据的合成航空公司乘客和航班数据分析与可视演示视频基于大数据的合成航空公司乘客和航班数据分析与可视演示图片基于大数据的合成航空公司乘客和航班数据分析与可视代码展示基于大数据的合成航空公司乘客和航班数据分析与可视文档展示基于大数据的合成航空公司乘客和航班数据分析与可视介绍本系统名为《基于大数据的合成航空公司乘客和航班数据分析与可视化》是一套面向计算机专业毕业设计的完整大数据分析应用整体围绕合成航空公司场景下的乘客信息与航班运行数据展开。系统底层采用Hadoop与HDFS完成数据的存储与管理借助Spark与Spark SQL对航班、乘客、航线、预订、服务、延误等多类数据进行清洗、聚合与统计计算并结合Pandas、NumPy完成指标加工与数值处理最终将分析结果以可视化方式呈现。后端提供Python与Java两套实现Python版本基于DjangoJava版本基于Spring Boot前端采用Vue配合ElementUI、Echarts、HTML、CSS、JavaScript与jQuery完成页面展示与图表渲染数据库使用MySQL存放业务数据与分析结果。系统功能涵盖系统首页、合成航司信息、航司运营分析、航线结构分析、客群画像分析、预订行为分析、服务体验分析、延误风险分析、出行模式分析等模块能够从运营、航线、客群、预订、服务、延误、出行等多个视角对合成航司数据做较系统的分析与展示帮助使用者直观了解航班运行规律与乘客行为特征也作为大数据分析流程与可视化实现的一次综合实践。基于大数据的合成航空公司乘客和航班数据分析与可视演示视频演示视频基于大数据的合成航空公司乘客和航班数据分析与可视演示图片基于大数据的合成航空公司乘客和航班数据分析与可视代码展示frompyspark.sqlimportSparkSessionfrompyspark.sql.functionsimportcol,count,avg,sumas_sum,when,desc,roundas_roundimportpandasaspdimportnumpyasnp sparkSparkSession.builder.appName(AirlinePassengerFlightAnalysis).master(local[*]).config(spark.sql.shuffle.partitions,4).enableHiveSupport().getOrCreate()defairline_operation_analysis():flight_dfspark.read.option(header,True).option(inferSchema,True).csv(hdfs://localhost:9000/airline/flight/flight_info.csv)passenger_dfspark.read.option(header,True).option(inferSchema,True).csv(hdfs://localhost:9000/airline/passenger/passenger_info.csv)flight_cleanflight_df.dropna(subset[flight_id,airline_name,depart_city,arrive_city,flight_status])\.filter(col(flight_status).isin(正常,延误,取消))\.withColumn(is_delay,when(col(flight_status)延误,1).otherwise(0))\.withColumn(is_cancel,when(col(flight_status)取消,1).otherwise(0))passenger_cleanpassenger_df.dropna(subset[flight_id,passenger_id])\.withColumn(ticket_price,col(ticket_price).cast(double))\.withColumn(baggage_weight,col(baggage_weight).cast(double))joined_dfflight_clean.join(passenger_clean,onflight_id,howinner)airline_statjoined_df.groupBy(airline_name).agg(count(flight_id).alias(flight_total),count(passenger_id).alias(passenger_total),_round(avg(ticket_price),2).alias(avg_ticket_price),_round(avg(is_delay),4).alias(delay_rate),_round(avg(is_cancel),4).alias(cancel_rate),_round(_sum(baggage_weight),2).alias(total_baggage)).withColumn(delay_rate,_round(col(delay_rate)*100,2))\.withColumn(cancel_rate,_round(col(cancel_rate)*100,2))\.orderBy(desc(passenger_total))airline_pdairline_stat.toPandas()airline_pd[load_factor]np.where(airline_pd[flight_total]0,airline_pd[passenger_total]/(airline_pd[flight_total]*180),0)airline_pd[load_factor]airline_pd[load_factor].round(4)airline_pd[operation_score](airline_pd[load_factor]*40(100-airline_pd[delay_rate])*0.35(100-airline_pd[cancel_rate])*0.25).round(2)result_dfspark.createDataFrame(airline_pd)result_df.write.mode(overwrite).option(header,True).csv(hdfs://localhost:9000/airline/result/airline_operation)result_df.show(20,truncateFalse)returnresult_dfdefroute_structure_analysis():route_dfspark.read.option(header,True).option(inferSchema,True).csv(hdfs://localhost:9000/airline/route/route_info.csv)passenger_dfspark.read.option(header,True).option(inferSchema,True).csv(hdfs://localhost:9000/airline/passenger/passenger_info.csv)route_cleanroute_df.dropna(subset[route_id,depart_city,arrive_city,distance])\.withColumn(distance,col(distance).cast(double))\.withColumn(route_type,when(col(distance)800,短途).when(col(distance)2000,中途).otherwise(长途))passenger_cleanpassenger_df.dropna(subset[route_id,passenger_id])\.withColumn(ticket_price,col(ticket_price).cast(double))route_joinroute_clean.join(passenger_clean,onroute_id,howinner)route_statroute_join.groupBy(depart_city,arrive_city,route_type).agg(count(passenger_id).alias(passenger_total),_round(avg(ticket_price),2).alias(avg_price),_round(avg(distance),2).alias(avg_distance),count(route_id).alias(route_total)).orderBy(desc(passenger_total))route_pdroute_stat.toPandas()route_pd[passenger_ratio](route_pd[passenger_total]/route_pd[passenger_total].sum()).round(4)route_pd[revenue_est](route_pd[passenger_total]*route_pd[avg_price]).round(2)route_pd[route_level]pd.cut(route_pd[passenger_total],bins[0,100,500,1000,np.inf],labels[冷门,一般,热门,超热])route_pd[route_level]route_pd[route_level].astype(str)route_resultspark.createDataFrame(route_pd)route_result.write.mode(overwrite).option(header,True).csv(hdfs://localhost:9000/airline/result/route_structure)route_result.show(20,truncateFalse)returnroute_resultdefdelay_risk_analysis():flight_dfspark.read.option(header,True).option(inferSchema,True).csv(hdfs://localhost:9000/airline/flight/flight_info.csv)delay_dfspark.read.option(header,True).option(inferSchema,True).csv(hdfs://localhost:9000/airline/delay/delay_info.csv)flight_cleanflight_df.dropna(subset[flight_id,airline_name,depart_city,arrive_city,flight_date])\.withColumn(flight_hour,col(flight_hour).cast(int))\.withColumn(is_delay,when(col(flight_status)延误,1).otherwise(0))delay_cleandelay_df.dropna(subset[flight_id,delay_minutes,delay_reason])\.withColumn(delay_minutes,col(delay_minutes).cast(double))delay_joinflight_clean.join(delay_clean,onflight_id,howleft)\.fillna({delay_minutes:0,delay_reason:无延误})delay_statdelay_join.groupBy(airline_name,depart_city,arrive_city,delay_reason).agg(count(flight_id).alias(flight_total),_sum(is_delay).alias(delay_total),_round(avg(delay_minutes),2).alias(avg_delay_minutes),_round(_sum(delay_minutes),2).alias(total_delay_minutes)).withColumn(delay_rate,_round(col(delay_total)/col(flight_total)*100,2))\.orderBy(desc(delay_rate))delay_pddelay_stat.toPandas()delay_pd[risk_level]np.where(delay_pd[delay_rate]40,高风险,np.where(delay_pd[delay_rate]20,中风险,低风险))delay_pd[delay_score](delay_pd[delay_rate]*0.6delay_pd[avg_delay_minutes]*0.4).round(2)delay_pd[reason_ratio](delay_pd[delay_total]/delay_pd[delay_total].sum()).round(4)delay_resultspark.createDataFrame(delay_pd)delay_result.write.mode(overwrite).option(header,True).csv(hdfs://localhost:9000/airline/result/delay_risk)delay_result.show(20,truncateFalse)returndelay_resultif__name____main__:airline_operation_analysis()route_structure_analysis()delay_risk_analysis()基于大数据的合成航空公司乘客和航班数据分析与可视文档展示作者计算机毕业设计江挽个人简介曾长期从事计算机专业培训教学本人也热爱上课教学语言擅长Java、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。平常喜欢分享一些自己开发中遇到的问题的解决办法也喜欢交流技术大家有技术代码这一块的问题可以问我想说的话感谢大家的关注与支持网站实战项目安卓/小程序实战项目大数据实战项目深度学习实战项目