简单且有用的Python数据分析和机器学习代码


Posted in Python onJuly 02, 2021

为什么选择Python进行数据分析?

Python是一门动态的、面向对象的脚本语言,同时也是一门简约,通俗易懂的编程语言。Python入门简单,代码可读性强,一段好的Python代码,阅读起来像是在读一篇外语文章。Python这种特性称为“伪代码”,它可以使你只关心完成什么样的工作任务,而不是纠结于Python的语法。

另外,Python是开源的,它拥有非常多优秀的库,可以用于数据分析及其他领域。更重要的是,Python与最受欢迎的开源大数据平台Hadoop具有很好的兼容性。因此,学习Python对于有志于向大数据分析岗位发展的数据分析师来说,是一件非常节省学习成本的事。

Python的众多优点让它成为最受欢迎的程序设计语言之一,国内外许多公司也已经在使用Python,例YouTube,Google,阿里云等等。

简单且有用的Python数据分析和机器学习代码

经过这个月的python数据分析和机器学习,总结了一些经验,同时也收获了一些大佬的优秀博客,感兴趣的可以观看我的收藏夹,废话不多说,直接进入正题。

数据分析大致分为数据处理,模型建立,模型测试这3部,这篇文章主要是讲解对数据进行处理

为了对数据进行分析,首先要了解学习python的熊猫库pandas,下面是一些基础简单的操作方法,python调用方法如下

import pandas as pd

python通过pandas读取csv文件的方法

df= pd.read_csv("xxx.csv")
#输出文件内容前五列
print(df.head())
#输出csv所有内容
print(df)

查看csv某列数据的方法

pandas.read_csv(‘file_name.csv', usecols = [0,1,2,3]) 
#简单方法
df["属性列名称"]

pandas删除csv数据某些列的方法

droplabels= ['x_cat4','x_cat5','x_cat8','x_cat9']
data=df.drop(droplabels,axis=1)

pandas对NAN数据清洗的方法

#将表格中含有nan数值的列进行删除,返回非空数据和索引值的Series
df.dropna()
'''
dropna(axis=0,how='any',thresh=None),how参数可选的值为any或者all.all仅在切片元素全为NA时才抛弃该行(列)。thresh为整数类型,eg:thresh=3,那么一行当中至少有三个NA值时才将其保留。
'''
data.fillna(0)                      #将nan替换为0
print(data.fillna(data.mean()))     ### 用每列特征的均值填充缺失数据
print(data.fillna(data.median()))    ### 用每列特征的中位数填充缺失数据
print(data.fillna(method='bfill'))   ### 用相邻后面(back)特征填充前面空值
print(data.fillna(method='pad'))     ### 用相邻前面特征填充后面空值
#参考博客:https://blog.csdn.net/qq_21840201/article/details/81008566

pandas对csv文件数据的更改的方法

#更改某列属性数值和类型
df = df[df['涨跌幅']!='None']
df['涨跌幅'] = df['涨跌幅'].astype(np.float64)
df = pd.DataFrame(a, dtype='float') #数据类型转化
#参考链接:http://www.45fan.com/article.php?aid=19070771581800099094144284
#对数据全部遍历读取并更改,参考如下
for i in df.index:
    df["id1"][i]=1

pandas的iloc的使用方法和作用

X = df.iloc[:, data.columns != 'label']  # 取出不包括 label其他的列

df.iloc[:3, :2]           #使用.iloc ,我们只选择了.iloc的前3行和2列

计算某列元素数量的方法

sum= len(data[data.label == 'BENIGN']) #计算BENIGN的数量
len(df)

pandas对文件进行保存的方法

#df为要保存的数据,xxx.csv为保存的文件
df.to_csv('xxx.csv', index=False, sep=',')

以上是pandas对数据进行处理的简单功能,其中含有一些参考学习的博客,感兴趣的同学可以观看学习。有了这些基础知识,我们才能对数据集进行处理,接下来就是如何使用的问题了,下面讲解简单的套路。

1.首先观察数据,通过代码检测每一列的数据类型再进行考察,检测是否存在NAN值,可以删除该列,也可根据情况进行数值的变动。

2.数据集中可能存在部分列属性为time属性,一般不要直接将该列删除,可通过将其转化为浮点类型

3.字符串类型向数值类型的转换,部分字符串需要进行转换,这个就视情况而定了。

总结

到此这篇关于Python数据分析和机器学习代码的文章就介绍到这了,更多相关Python数据分析代码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
简述:我为什么选择Python而不是Matlab和R语言
Nov 14 Python
对Python3.6 IDLE常用快捷键介绍
Jul 16 Python
Django 源码WSGI剖析过程详解
Aug 05 Python
Django ORM 查询管理器源码解析
Aug 05 Python
使用python制作一个解压缩软件
Nov 13 Python
tensorflow 实现数据类型转换
Feb 17 Python
Pandas —— resample()重采样和asfreq()频度转换方式
Feb 26 Python
python实现在线翻译功能
Mar 03 Python
python中selenium库的基本使用详解
Jul 31 Python
Python logging模块原理解析及应用
Aug 13 Python
python文件排序的方法总结
Sep 13 Python
如何使用 Flask 做一个评论系统
Nov 27 Python
python常见的占位符总结及用法
Jul 02 #Python
Python合并pdf文件的工具
python实现剪贴板的操作
利用Pycharm连接服务器的全过程记录
关于Python OS模块常用文件/目录函数详解
Python+Appium自动化测试的实战
如何使用pdb进行Python调试
You might like
PHP4 与 MySQL 交互使用
2006/10/09 PHP
解析coreseek for sphinx的使用
2013/06/21 PHP
摘自织梦CMS中的图片处理类
2015/08/08 PHP
解决laravel 5.1报错:No supported encrypter found的办法
2017/06/07 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
让textarea自动调整大小的js代码
2011/04/12 Javascript
IE与FireFox中的childNodes区别
2011/10/20 Javascript
javascript实现焦点滚动图效果 具体方法
2013/06/24 Javascript
cookie中的path与domain属性详解
2013/12/18 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
2014/07/17 Javascript
Javascript中Array.prototype.map()详解
2014/10/22 Javascript
简介JavaScript中的unshift()方法的使用
2015/06/09 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
2016/10/11 Javascript
基于Vue实现timepicker
2017/04/25 Javascript
JavaScript事件方法(实例讲解)
2017/06/27 Javascript
分析javascript原型及原型链
2018/03/18 Javascript
vue解决使用webpack打包后keep-alive不生效的方法
2018/09/01 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
python的即时标记项目练习笔记
2014/09/18 Python
python getopt详解及简单实例
2016/12/30 Python
Python读取文件内容的三种常用方式及效率比较
2017/10/07 Python
使用Python爬取最好大学网大学排名
2018/02/24 Python
opencv改变imshow窗口大小,窗口位置的方法
2018/04/02 Python
python spyder中读取txt为图片的方法
2018/04/27 Python
Python交互环境下实现输入代码
2018/06/22 Python
python默认参数调用方法解析
2020/02/09 Python
Python爬虫获取豆瓣电影并写入excel
2020/07/31 Python
Hotels.com越南:酒店预订
2019/10/29 全球购物
文明宿舍获奖感言
2014/02/07 职场文书
《油菜花开了》教学反思
2014/02/22 职场文书
工作作风懒散检讨书
2014/10/29 职场文书
Java实现多文件上传功能
2021/06/30 Java/Android
一小时学会TensorFlow2之基本操作2实例代码
2021/09/04 Python
Golang 对es的操作实例
2022/04/20 Golang
jdbc中自带MySQL 连接池实践示例
2022/07/23 MySQL