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

网站建设开发客户开场白微信输入法使用方法

网站建设开发客户开场白,微信输入法使用方法,网站设计文案 范例,上海自贸区注册公司流程目录 简述 / 前言1. z-score 标准化2. min-max 归一化3. 数据缺失值处理4. 数据重复处理 简述 / 前言 本篇文章分享数据分析中最重要的一个步骤#xff1a;数据预处理。我们在做数据分析之前#xff0c;都需要采集很多数据#xff0c;这些数据可能是从官网下载的#xff0… 目录 简述 / 前言1. z-score 标准化2. min-max 归一化3. 数据缺失值处理4. 数据重复处理 简述 / 前言 本篇文章分享数据分析中最重要的一个步骤数据预处理。我们在做数据分析之前都需要采集很多数据这些数据可能是从官网下载的可能是从各个大型数据库网站付费购买的也有可能是通过爬虫获取数据的爬取数据时要注意规范要遵守每个网址给的爬虫君子协议政府官网尽量别去爬不能非法爬取公民身份资料等敏感信息。 【补充】什么是网址给的爬虫君子协议 进入你要爬取网址的根目录在其后面加上/robots.txt就可以看到这个网址允许你爬取哪些分支下的数据或者不允许你爬取哪些分支下的数据。 比如你要爬取知乎的信息那么其君子协议看https://www.zhihu.com/robots.txt可以看到知乎不允许未授权用户爬取任何信息即我们是不能去爬取知乎数据的。只允许了 Googlebot, Googlebot-Image, Baiduspider-news, Baiduspider, Baiduspider-render, Baiduspider-image, bingbot (截止于2024年1月16日只允许上述指定爬虫爬取数据) 爬取指定目录下的数据~又比如看看 CSDN 平台的君子协议https://www.csdn.net/robots.txt它不允许任何人爬取的目录如下 User-agent: *Disallow: /scriptsDisallow: /publicDisallow: /css/Disallow: /images/Disallow: /content/Disallow: /ui/Disallow: /js/Disallow: /scripts/Disallow: /article_preview.html*Disallow: /tag/Disallow: /*?*Disallow: /link/Disallow: /tags/Disallow: /news/Disallow: /xuexi/ 不论是从什么方式获取的数据其数据内容或多或少会存在缺失值、数据量纲跨度大就是同一列数据中有的数据只是个位数但有的数据范围到了几十万的级别所以在做数据分析前数据预处理是必须要做的哪怕你的数据可能都很正常其实只有做了这一步才知道你获得的数据正不正常。 那么本篇文章将分享最常用的两种数据处理方法z-score 标准化、min-max 归一化以及数据缺失值处理 和 数据重复处理。 1. z-score 标准化 z-score 标准化是基于给定数据(data)的 均值(mean) 和 标准差(std) 进行数据标准化的其计算公式为 n e w D a t a d a t a − m e a n s t d newData \frac{data - mean}{std} newDatastddata−mean​ 对应的 Python 代码示例 import numpy as npdata np.array([[ 1.1, 2, 3 ],[ 9, 10, 11 ],[10.9, 5, 0.1]]) # 计算均值 mean np.mean(data, axis0) # 计算标准差 std np.std(data, axis0)print(f每一列的均值{mean}\n) print(f每一列的标准差{std}\n) # 减去均值除以标准差 newData (data - mean) / std print(fz-score标准化\n{newData})# 查看z-score标准化后的每一列均值 和 标准差 print(fz-score标准化后的每一列均值{np.mean(newData, axis0)}\n) print(fz-score标准化后的每一列标准差{np.std(newData, axis0)}\n)输出 每一列的均值[7. 5.66666667 4.7 ]每一列的标准差[4.24342629 3.29983165 4.60941066]z-score标准化 [[-1.39038588 -1.1111678 -0.36881071][ 0.47131725 1.31319831 1.36676909][ 0.91906863 -0.20203051 -0.99795838]]z-score标准化后的每一列均值[ 0.00000000e00 -1.01770444e-16 -7.40148683e-17]z-score标准化后的每一列标准差[1. 1. 1.]经过z-score标准化后的数据均值都是0标准差都是1当然由于计算机计算精度问题所以现在看到的均值并不都是0不过也是非常接近于0了 看看标准化后的数据是什么样的 import numpy as np import matplotlib.pyplot as pltnp.random.seed(2024) data np.random.rand(100, 2) * 10 x data[:, 0] y data[:, 1]# 新建figure对象 plt.subplot(121) plt.scatter(x, y, s50, alpha0.7, colorg) # 设置标题 plt.title(原始数据, fontdict{fontname: FangSong, fontsize: xx-large, fontweight: bold}) plt.xlabel(x轴, fontdict{fontname: FangSong, fontsize: 20}) plt.ylabel(y轴, fontdict{fontname: FangSong, fontsize: 20}) plt.xlim(-5, 20) plt.ylim(-5, 20) plt.grid()# 计算均值 mean np.mean(data, axis0) # 计算标准差 std np.std(data, axis0) # 减去均值除以标准差 newData (data - mean) / std x newData[:, 0] y newData[:, 1]# 新建figure对象 plt.subplot(122) plt.scatter(x, y, s50, alpha0.7, colorg) # 设置标题 plt.title(标准化后的数据, fontdict{fontname: FangSong, fontsize: xx-large, fontweight: bold}) plt.xlabel(x轴, fontdict{fontname: FangSong, fontsize: 20}) # plt.ylabel(y轴, fontdict{fontname: FangSong, fontsize: 20}) plt.xlim(-5, 20) plt.ylim(-5, 20) plt.grid() plt.show()输出 2. min-max 归一化 min-max 归一化是对给定数据进行线性变换它是基于给定数据(data)的极大值(max_d)和极小值(min_d)进行数据归一化操作的计算公式如下 n e w D a t a d a t a − m i n _ d m a x _ d − m i n _ d newData \frac{data - min\_d}{max\_d - min\_d} newDatamax_d−min_ddata−min_d​ 对应的 Python 代码示例 import numpy as npdata np.array([[ 1.1, 2, 3 ],[ 9, 10, 11 ],[10.9, 5, 0.1]]) # 计算极大值 max_d np.max(data, axis0) # 计算极小值 min_d np.min(data, axis0)print(f每一列的极大值{max_d}\n) print(f每一列的极小值{min_d}\n) # 减去极小值除以 (极大值 - 极小值) print(fmin-max标准化\n{(data - min_d) / (max_d - min_d)})输出 每一列的极大值[10.9 10. 11. ]每一列的极小值[1.1 2. 0.1]min-max标准化 [[0. 0. 0.26605505][0.80612245 1. 1. ][1. 0.375 0. ]]看看归一化的数据图像是什么样的 import numpy as np import matplotlib.pyplot as pltnp.random.seed(2024) data np.random.rand(100, 2) * 10 x data[:, 0] y data[:, 1]# 新建figure对象 plt.subplot(131) plt.scatter(x, y, s50, alpha0.7, colorg) # 设置标题 plt.title(原始数据, fontdict{fontname: FangSong, fontsize: xx-large, fontweight: bold}) plt.xlabel(x轴, fontdict{fontname: FangSong, fontsize: 20}) plt.ylabel(y轴, fontdict{fontname: FangSong, fontsize: 20}) plt.xlim(-5, 20) plt.ylim(-5, 20) plt.grid()# 计算极大值 max_d np.max(data, axis0) # 计算极小值 min_d np.min(data, axis0) # 减去均值除以标准差 newData (data - min_d) / (max_d - min_d) x newData[:, 0] y newData[:, 1]# 新建figure对象 plt.subplot(132) plt.scatter(x, y, s50, alpha0.7, colorg) # 设置标题 plt.title(归一化后的数据, fontdict{fontname: FangSong, fontsize: xx-large, fontweight: bold}) plt.xlabel(x轴, fontdict{fontname: FangSong, fontsize: 20}) # plt.ylabel(y轴, fontdict{fontname: FangSong, fontsize: 20}) plt.xlim(-5, 20) plt.ylim(-5, 20) plt.grid()# 新建figure对象 plt.subplot(133) plt.scatter(x, y, s50, alpha0.7, colorg) # 设置标题 plt.title(f归一化后的数据\n放大版, fontdict{fontname: FangSong, fontsize: xx-large, fontweight: bold}) plt.xlabel(x轴, fontdict{fontname: FangSong, fontsize: 20}) # plt.ylabel(y轴, fontdict{fontname: FangSong, fontsize: 20}) plt.xlim(-0.5, 1.5) plt.ylim(-0.5, 1.5) plt.grid()# wspace 控制子图列间距, hspace 控制子图横间距 plt.subplots_adjust(wspace0.5, hspace0) plt.show()输出 可以看见所有数据都缩放到 [0, 1] 之间了~ 3. 数据缺失值处理 现在要用到一个新的第三方库pandas这是数据分析中常用的库。 关键方法.fillna(value, inplaceTrue)参数含义如下 参数含义value你要将缺失值替换成的值inplace是否覆盖数据框默认是False不覆盖生成一个新的数据框 自行创建一个文件test.csv数据如下 示例 import pandas as pddf pd.read_csv(test.csv, encodingutf-8) print(df) print()df[age].fillna(20, inplaceTrue) # 更新age列的NaN为20 df[score].fillna(0, inplaceTrue) # 更新score列的NaN为0 print(df)输出 Unnamed: 0 name age score 0 0 senlin NaN NaN 1 1 Tom NaN 100.0 2 2 Mary 18.0 60.0 3 2 Mary 18.0 60.0Unnamed: 0 name age score 0 0 senlin 20.0 0.0 1 1 Tom 20.0 100.0 2 2 Mary 18.0 60.0 3 2 Mary 18.0 60.04. 数据重复处理 关键方法.drop_duplicates(keepkeep, inplaceTrue)各参数含义如下 参数含义keep保留第一个重复值还是最后一个重复值可以选first, lastinplace是否覆盖数据框默认是False不覆盖生成一个新的数据框 示例保留第一个重复值 import pandas as pddf pd.read_csv(test.csv, encodingutf-8) print(df) print()df.drop_duplicates(keepfirst, inplaceTrue) print(df)输出 Unnamed: 0 name age score 0 0 senlin NaN NaN 1 1 Tom NaN 100.0 2 2 Mary 18.0 60.0 3 2 Mary 18.0 60.0Unnamed: 0 name age score 0 0 senlin NaN NaN 1 1 Tom NaN 100.0 2 2 Mary 18.0 60.0示例保留最后一个重复值 import pandas as pddf pd.read_csv(test.csv, encodingutf-8) print(df) print()df.drop_duplicates(keeplast, inplaceTrue) print(df)输出 Unnamed: 0 name age score 0 0 senlin NaN NaN 1 1 Tom NaN 100.0 2 2 Mary 18.0 60.0 3 2 Mary 18.0 60.0Unnamed: 0 name age score 0 0 senlin NaN NaN 1 1 Tom NaN 100.0 3 2 Mary 18.0 60.0
http://www.pierceye.com/news/183133/

相关文章:

  • 如何做国外的网站页面设计感想
  • 征婚网站认识的男人做定投保wordpress 中文 cms
  • 淄博百度网站建设上虞网站建设哪家好
  • 网站菜单导航怎么做的网站没有备案怎么做支付
  • wordpress主题小程序如何做优化排名
  • 中企动力做网站费用多个域名 指向同一个网站
  • 怎么搭建小程序平台网站营销优化
  • 建设网站员工招聘策划方案软件开发的八个步骤
  • 怎样做cms电影网站赚钱网络营销需要学什么
  • wordpress快速仿站视频教程没有备案的网站会怎么样
  • 美团先做网站还是app惠州惠阳网站建设
  • 可以更改上传到网站的文件内容吗信用 网站 建设方案
  • 获奖设计网站公司制作网站价格表
  • 做单页免费模板网站我是做推广的怎么找客户
  • 企业网站建设的缺点网络营销最基本的应用方式是什么
  • 做cpa推广用哪种网站好上海h5网站开发
  • 怎样做免费网站推广怎么申请二级域名
  • 站长之家源码之家虚拟空间官网
  • 网站建设推荐书籍装修公司装修房子
  • 上海专业微信网站开发公司怎么做seo
  • 上海市质量工程建设管理协会网站网站后台源码
  • 淄博机关建设网站免费发布企业信息平台
  • 怎么注册网站免费的怎么给网站备案
  • 新公司 做网站 流程西安房价
  • 展厅设计软件珠海百度快速优化
  • 网站 关键词 地区seo对网络推广的作用是什么?
  • 网站建设 知乎wordpress woocommerce主题
  • 申请建设工作网站的函如何做网站词库
  • 化工集团网站建设 中企动力网站建设用的服务器
  • wow做宏的网站重庆网址大全