数学建模国赛:python机器学习基础之数据归一化、去除空值

简介: 数学建模国赛:python机器学习基础之数据归一化、去除空值

首先我们要明确为什么要将数据归一化或者说是标准化,因为不同数据范围相差太大,不好比较,所以要消除不同量纲单位带来的影响,归一化后各数据指标处于同一数量级,适合进行综合对比评价


想要数据集或者有什么不明白的可以点赞关注后私信答主


归一化一般是把数据调整到[0,1]范围内


每一列处理公式是 (x-min)/(max-min)max min为那一列的最大和最小值


原数据如下:

1666425358669.jpg

归一化后数据如下:

1666425373956.jpg

代码如下

from sklearn import  preprocessing
import pandas as pd
import  numpy as np
def MaxMinNormalizetion(x):
    shapeX=x.shape
    rows=shapeX[0]
    cols=shapeX[1]
    headers=list(x)
    result=pd.DataFrame(columns=headers)
    for i in range(0,rows,1):
        dict1={}
        dict1[headers[0]]=x['No'][i]
        for j in range(1,cols,1):
            maxcol=x[headers[j]].max()
            mincol=x[headers[j]].min()
            val=(x.iloc[i,j]-mincol)/(maxcol-mincol)#一般是(x-min)/(max-min)进行归一化处理
            dict1[headers[j]]=val
        result=result.append(dict1,ignore_index=True)
    return result
data1=pd.read_csv(r'CatInfo.csv')
print('original data\n',data1)
newdata=MaxMinNormalizetion(data1)
print('归一化的数据\n',newdata)


但是眼尖的同学可以发现里面是有空值的 这对我们进行后续的运算是非常不利的 我们要把他消除

1666425401485.jpg

消除空值后如下

1666425411862.jpg

代码如下

from sklearn import  preprocessing
import pandas as pd
import  numpy as np
print("去除空值并且归一化处理")
y=data1.dropna(axis=0).iloc[:,1:]#去除空值
min_max_scaler=preprocessing.MinMaxScaler()
x_minmax=min_max_scaler.fit_transform(y)
print(x_minmax)


想要数据集或者有什么不明白的可以点赞关注后私信答主


相关文章
|
1月前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
158 10
|
4天前
|
数据采集 Web App开发 数据可视化
Python用代理IP获取抖音电商达人主播数据
在当今数字化时代,电商直播成为重要的销售模式,抖音电商汇聚了众多达人主播。了解这些主播的数据对于品牌和商家至关重要。然而,直接从平台获取数据并非易事。本文介绍如何使用Python和代理IP高效抓取抖音电商达人主播的关键数据,包括主播昵称、ID、直播间链接、观看人数、点赞数和商品列表等。通过环境准备、代码实战及数据处理与可视化,最终实现定时任务自动化抓取,为企业决策提供有力支持。
|
24天前
|
数据采集 Web App开发 监控
Python爬虫:爱奇艺榜单数据的实时监控
Python爬虫:爱奇艺榜单数据的实时监控
|
19天前
|
数据采集 存储 XML
python实战——使用代理IP批量获取手机类电商数据
本文介绍了如何使用代理IP批量获取华为荣耀Magic7 Pro手机在电商网站的商品数据,包括名称、价格、销量和用户评价等。通过Python实现自动化采集,并存储到本地文件中。使用青果网络的代理IP服务,可以提高数据采集的安全性和效率,确保数据的多样性和准确性。文中详细描述了准备工作、API鉴权、代理授权及获取接口的过程,并提供了代码示例,帮助读者快速上手。手机数据来源为京东(item.jd.com),代理IP资源来自青果网络(qg.net)。
|
1月前
|
数据采集 分布式计算 大数据
构建高效的数据管道:使用Python进行ETL任务
在数据驱动的世界中,高效地处理和移动数据是至关重要的。本文将引导你通过一个实际的Python ETL(提取、转换、加载)项目,从概念到实现。我们将探索如何设计一个灵活且可扩展的数据管道,确保数据的准确性和完整性。无论你是数据工程师、分析师还是任何对数据处理感兴趣的人,这篇文章都将成为你工具箱中的宝贵资源。
|
2月前
|
传感器 物联网 开发者
使用Python读取串行设备的温度数据
本文介绍了如何使用Python通过串行接口(如UART、RS-232或RS-485)读取温度传感器的数据。详细步骤包括硬件连接、安装`pyserial`库、配置串行端口、发送请求及解析响应等。适合嵌入式系统和物联网应用开发者参考。
75 3
|
2月前
|
机器学习/深度学习 数据可视化 数据处理
掌握Python数据科学基础——从数据处理到机器学习
掌握Python数据科学基础——从数据处理到机器学习
58 0
|
2月前
|
机器学习/深度学习 数据采集 人工智能
机器学习入门:Python与scikit-learn实战
机器学习入门:Python与scikit-learn实战
78 0
|
2月前
|
数据采集 JavaScript 程序员
探索CSDN博客数据:使用Python爬虫技术
本文介绍了如何利用Python的requests和pyquery库爬取CSDN博客数据,包括环境准备、代码解析及注意事项,适合初学者学习。
116 0
|
2月前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
160 4