简单且有用的Python数据分析和机器学习代码
为什么选择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数据分析代码内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!
【来源:海外服务器https://www.68idc.cn】