当前位置: 首页 > news >正文

网站开发的硬件环境建设银行投资网站

网站开发的硬件环境,建设银行投资网站,自我建设外贸网站,百度纯净版首页入口任务目标 任务 1、整理火车发车信息数据#xff0c;结果的表格形式为#xff1a; 2、并输出最终的发车信息表 难点 1、多文件 一个文件夹#xff0c;多个月的发车信息#xff0c;一个excel#xff0c;放一天的发车情况 2、数据表的格式特殊 如何分析表是一个难点 数…任务目标 任务 1、整理火车发车信息数据结果的表格形式为 2、并输出最终的发车信息表 难点 1、多文件 一个文件夹多个月的发车信息一个excel放一天的发车情况 2、数据表的格式特殊 如何分析表是一个难点 数据形式 图像呈现 文字描述 1、一张表含多辆车次信息 2、一辆车次信息分为标题日期、车次、定员、客座率和表格信息部分 3、表格信息部分分为xy轴看 横着是发车站点、发车时间、下车人数 竖着是目标站点、到达时间、上车人数 4、图标呈现下三角趋势因为过站无上车人数 注意 因为横着是上车站点终点站没有人上车所以横着的车次不包含终点站是所有车次-1 竖着的车次包含终点站——即所有车次信息 分析步骤 1、导入数据 存在问题 与原数据不同原数据中的表头在该表的第一列中每个属性对应的行为空值 处理方法 处理结果 结果分析 1、38列 因为原excel表中有车次信息到第38列导入数据会保持表格格式完整性所以取最大列数 不到38的列数均为空值需要处理 2、表格信息被存放在第一行中还需处理 3、目标需求信息只到29列的下车人数所以需要把有效信息抠出来 语法扩展别人的资料 python中pandas包使用的一个header参数_headernone-CSDN博客 2、数据处理 2.1获取有效信息扣表 2.1.1思路分析 1、判断车次 整张表包含很多车次 要知道哪一辆车是第几行到第几行需要拆分 即怎么判断eg0-33为车134-45为车2······ 2、处理表头 导入的表中有很多表头需要处理 把所有车次的表头抽取出来找共同点 都有客座率 2.1.2解决方案 1、找表头 1.1data[0]  因为数据表行列均有属性表头均在第0列所以先判断data[0]是第0行还是第0列 1.2找到含有“客座率”的行数 语法扩展 apply()、lambda loc() Pandas读取某列、某行数据——loc、iloc用法总结_pandas读取某一行的数据-CSDN博客 1.3生成由表头信息组成的表 1.4批量分割展开表 按照空格分割后得到一个表格 split() Python知识精解str split()方法 - 知乎 (zhihu.com) expand参数 pandas的分列操作str.split()_pandas数据分列-CSDN博客 2、生成除表头外的信息表 datadata[~ind] 3、生成一趟车的数据 1、根据上车站点和上车人数所在的行用遍历匹配 确定每一趟列车所包含的行数再扣其中的数据 2、找第一趟车的信息 3、重置行索引 因为之前删数据把行索引删了出现了数据缺失需要重置行索引 drop——删除多余的一列index 4、删除空值 重置索引后的表格为 表中30列后的值均为空值需要删除 用空值数量进行判断若某一列中空值数量行数则证明该列全为空需要删除 5、生成完整一趟车的信息表 语法扩展 loc、iloc区别 pandas索引函数loc和iloc的区别_pandas loc与iloc区别-CSDN博客 loc基于标签索引、iloc基于位置索引 reset_index() 如何在pandas中使用set_index( )与reset_index( )设置索引 - 知乎 (zhihu.com) 3、数据分析 处理后的表 3.1取表头信息表中所需数据 3.2把表头信息与每辆车挂钩 原数据2个表 表头表 车次表 通过索引和步长取出需要的信息行 这样就匹配成功了 3.3、取所有站点 3.4循环所有站点取数据用定位 都用条件筛选 3.5整体操作合并前面操作 语法扩展 python dataframe是什么_Pandas 库之 DataFrame-CSDN博客 4、封装函数 5、数据导出 语法扩展 glob——查找文件 Python标准库glob模块详解_python glob-CSDN博客 tpdm——进度条 【python第三方库】tqdm简介_python tqdm库-CSDN博客 enumerate() 函数 Python enumerate() 函数 | 菜鸟教程 to_csv() pandas的to_csv()使用方法_pandas to_csv-CSDN博客 总体代码 import warnings warnings.filterwarnings(ignore) import pandas as pdpath ./201501-201603/201501/20150101.xls data pd.read_excel(path, skiprows2, headerNone) data.head(50)# 日期 dates path.split(/)[-1][:8]ind data[0].apply(lambda x: 客座率 in x) # 筛选有车次信息的行数据 car_info data.loc[ind, 0] car_info car_info.str.split( , expandTrue) # 这里的得到车次、定员、客座率car_info# 删除车次信息行 data data[~ind] data.reset_index(inplaceTrue, dropTrue) data.head()## 接下来找到某一趟车所在的小表格思路就是找到【上车站、上车人数合计】所在的行 ind data[0].apply(lambda x: 上车站x or 上车人数合计x) car_index data[ind]all_car pd.DataFrame() for start, end, checi, dingyuan, kezuolv in zip(car_index.index[0::2],car_index.index[1::2], car_info[0], car_info[6], car_info[8]):one_car data.iloc[start:end1, :] # 截取其中一趟车的数据one_car.reset_index(inplaceTrue, dropTrue) # 重置索引col_ind one_car.isna().sum(axis0)len(one_car) # 判断全为空的列one_car one_car.loc[:, ~col_ind] # 删除空列station one_car.iloc[2:-1, 0] # 取所有站点在2至倒数第一行one_car_list []for s in station: # 循环每个站点去取数据one_car_dict {}one_car_dict[车次] checione_car_dict[定员] dingyuanone_car_dict[客座率] kezuolvone_car_dict[日期] datesone_car_dict[站点] sone_car_dict[进站时间] one_car.loc[one_car[0]s, 1].values[0] # 进站时间one_car_dict[下车人数] one_car.loc[one_car[0]s, one_car.shape[1]-1].values[0] # 下车人数try:one_car_dict[离站时间] one_car.loc[1,one_car.iloc[0]s].values[0] # 离站时间one_car_dict[上车人数] one_car.loc[len(one_car)-1,one_car.iloc[0]s].values[0] # 上车人数except:one_car_dict[离站时间] -- # 终点站没有出站时间和人数one_car_dict[上车人数] --one_car_list.append(one_car_dict)one_car_data pd.DataFrame(one_car_list)break#all_car pd.concat([all_car, one_car_data]) #这一步结束就能看到处理后表的信息了one_car_datadef get_one_file(path):data pd.read_excel(path, skiprows2, headerNone) # 读数据dates path.split(/)[-1][:8] # 日期ind data[0].apply(lambda x: 客座率 in x) # 筛选有车次信息的行数据car_info data.loc[ind, 0]car_info car_info.str.split( , expandTrue) # 这里的得到车次、定员、客座率data data[~ind] # 删除车次信息行data.reset_index(inplaceTrue, dropTrue)## 接下来找到某一趟车所在的小表格思路就是找到【上车站、上车人数合计】所在的行ind data[0].apply(lambda x: 上车站x or 上车人数合计x)car_index data[ind]all_car pd.DataFrame()for start, end, checi, dingyuan, kezuolv in zip(car_index.index[0::2],car_index.index[1::2], car_info[0], car_info[6], car_info[8]):one_car data.iloc[start:end1, :] # 截取其中一趟车的数据one_car.reset_index(inplaceTrue, dropTrue) # 重置索引col_ind one_car.isna().sum(axis0)len(one_car) # 判断全为空的列one_car one_car.loc[:, ~col_ind] # 删除空列station one_car.iloc[2:-1, 0] # 取所有站点在2至倒数第一行one_car_list []for s in station: # 循环每个站点去取数据one_car_dict {}one_car_dict[车次] checione_car_dict[定员] dingyuanone_car_dict[客座率] kezuolvone_car_dict[日期] datesone_car_dict[站点] sone_car_dict[进站时间] one_car.loc[one_car[0]s, 1].values[0] # 进站时间one_car_dict[下车人数] one_car.loc[one_car[0]s, one_car.shape[1]-1].values[0] # 下车人数try:one_car_dict[离站时间] one_car.loc[1,one_car.iloc[0]s].values[0] # 离站时间one_car_dict[上车人数] one_car.loc[len(one_car)-1,one_car.iloc[0]s].values[0] # 上车人数except:one_car_dict[离站时间] -- # 终点站没有出站时间和人数one_car_dict[上车人数] --one_car_list.append(one_car_dict)one_car_data pd.DataFrame(one_car_list)all_car pd.concat([all_car, one_car_data])return all_carfrom glob import glob from tqdm import tqdm all_path glob(./201501-201603/*/*) for i,path in tqdm(enumerate(all_path)):data get_one_file(path)if i0:data.to_csv(./result.csv, headerTrue, indexNone, encodingutf8, modea)else:data.to_csv(./result.csv, headerNone, indexNone, encodingutf8, modea)
http://www.w-s-a.com/news/520820/

相关文章:

  • 做网站美工要学什么网站推广的方法包括
  • 哪个网站可以做笔译兼职wordpress加表单
  • 百度站内搜索 wordpress微餐饮建站费用
  • 用什么做网站的访问量统计制作手工作品
  • 微信公众号搭建网站河南卫生基层系统网站建设
  • steam账号注册网站重庆手机版建站系统哪家好
  • 中新生态城建设局门户网站wordpress云盘视频播放
  • 大型网站开发基本流程wordpress记录用户搜索
  • 云服务器安装win系统做网站wordpress边栏扩大尺寸
  • 网站开发面试自我介绍软件下载网站如何建设
  • 可以做翻译任务的网站陕西省建设厅八大员证
  • 昆明 网站推广重庆网页优化seo公司
  • 网站排名下降怎么上去设计一套app页面多少钱
  • 专门用来查找网址的网站查公司名字是否被注册
  • 自己创建网站教程河南省建设厅官方网站李学军
  • 一个网站需要多少容量怎样免费设计网站建设
  • 建设工程交易中心网站12306的网站是哪个公司做的
  • 建设网站经营范围自己给公司做网站
  • 河北省住房建设厅政务网站网络营销推广的岗位职责有哪些
  • 上海网站建设优化价格孝义做网站的公司
  • 哪个公司网站做的最好义乌 网站 制作
  • 百度站长工具综合查询wordpress 上传pdf
  • 旅游短租公寓网站建设深圳龙岗招聘网
  • 做海淘是在哪个网站网络查控系统设计方案
  • o2o网站建设代理商微信公众号开发文档
  • 网站设计课程总结关于网站备案的公告
  • 网站建设与运营意义到哪查找网站域名
  • 网站及单位网站建设情况眉县住房和城市建设局网站
  • 网站是否能够被恶意镜像wordpress占用
  • 经典设计网站网站等保测评怎么做