简单且有用的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 动态获取当前运行的类名和函数名的方法
Apr 15 Python
10分钟教你用Python实现微信自动回复功能
Nov 28 Python
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
Dec 20 Python
Python异常处理知识点总结
Feb 18 Python
Python自动化导出zabbix数据并发邮件脚本
Aug 16 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
Jan 03 Python
python时间与Unix时间戳相互转换方法详解
Feb 13 Python
使用jupyter notebook直接打开.md格式的文件
Apr 10 Python
简单的Python人脸识别系统
Jul 14 Python
Python 在局部变量域中执行代码
Aug 07 Python
细说NumPy数组的四种乘法的使用
Dec 18 Python
python文件目录操作之os模块
May 08 Python
python常见的占位符总结及用法
Jul 02 #Python
Python合并pdf文件的工具
python实现剪贴板的操作
利用Pycharm连接服务器的全过程记录
关于Python OS模块常用文件/目录函数详解
Python+Appium自动化测试的实战
如何使用pdb进行Python调试
You might like
用PHP和ACCESS写聊天室(八)
2006/10/09 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
2014/10/30 PHP
symfony2.4的twig中date用法分析
2016/03/18 PHP
深入理解PHP中的count函数
2016/05/31 PHP
PHP静态延迟绑定和普通静态效率的对比
2017/10/20 PHP
PHP Post获取不到非表单数据的问题解决办法
2018/02/27 PHP
php获取用户真实IP和防刷机制的实例代码
2018/11/28 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
JavaScript实现刷新不重记的倒计时
2016/08/10 Javascript
微信小程序js文件改变参数并在视图上及时更新【推荐】
2018/06/11 Javascript
浅谈webpack 构建性能优化策略小结
2018/06/13 Javascript
js实现星星海特效的示例
2020/09/28 Javascript
[10:28]2018DOTA2国际邀请赛寻真——VGJ.S寻梦之路
2018/08/15 DOTA
通过源码分析Python中的切片赋值
2017/05/08 Python
python字典DICT类型合并详解
2017/08/17 Python
python中不能连接超时的问题及解决方法
2018/06/10 Python
对Pandas DataFrame缺失值的查找与填充示例讲解
2018/11/06 Python
使用TensorFlow-Slim进行图像分类的实现
2019/12/31 Python
python实现对变位词的判断方法
2020/04/05 Python
使用SQLAlchemy操作数据库表过程解析
2020/06/10 Python
Python 私有属性和私有方法应用场景分析
2020/06/19 Python
编写python代码实现简单抽奖器
2020/10/20 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
CSS3实现点击放大的动画实例代码
2017/02/27 HTML / CSS
HTML5 Web 存储详解
2016/09/16 HTML / CSS
使用canvas实现黑客帝国数字雨效果
2020/01/02 HTML / CSS
.net软件工程师应聘上机试题
2015/03/10 面试题
Java面试题:请说出如下代码的输出结果
2013/04/22 面试题
毕业生自我鉴定
2013/11/05 职场文书
荷叶圆圆教学反思
2014/02/01 职场文书
机械设计毕业生自荐信
2014/02/02 职场文书
国旗下的讲话演讲稿
2014/05/08 职场文书
2014年派出所工作总结
2014/11/21 职场文书
2015年初一班主任工作总结
2015/05/13 职场文书
小学2016年第十八届推普周活动总结
2016/04/05 职场文书