Pandas学习速成笔记

Posted 一只特立独行的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pandas学习速成笔记相关的知识,希望对你有一定的参考价值。

文章目录

下载pandas

这里不知道为什么用conda安装不行,只能用pip安装。

pip install pandas

使用

panda的基本数据类型为DataFrame,是基于numpy的一种扩展结构。

因为我是在处理csv文件的时候学习的pandas,所以就一处理csv格式文件为例。
1.读入csv文件
当csv文件没有列名时,可以通过name传参的形式定义列名

	#列名
	header_names = ['duration', 'protocol_type', 'service', 'flag', 'src_bytes', 'dst_bytes', 'land', 'wrong_fragment', 'urgent', 'hot', 'num_failed_logins', 'logged_in', 'num_compromised', 'root_shell', 'su_attempted', 'num_root', 'num_file_creations', 'num_shells', 'num_access_files', 'num_outbound_cmds', 'is_host_login', 'is_guest_login', 'count', 'srv_count', 'serror_rate', 'srv_serror_rate', 'rerror_rate', 'srv_rerror_rate', 'same_srv_rate', 'diff_srv_rate', 'srv_diff_host_rate', 'dst_host_count', 'dst_host_srv_count', 'dst_host_same_srv_rate', 'dst_host_diff_srv_rate', 'dst_host_same_src_port_rate', 'dst_host_srv_diff_host_rate', 'dst_host_serror_rate', 'dst_host_srv_serror_rate', 'dst_host_rerror_rate', 'dst_host_srv_rerror_rate', 'attack_type', 'success_pred']
    #读取文件
    attack_info = pd.read_csv("data/NSL-KDD/KDDTrain+_20Percent.txt",name=header_name)

2.查看前n条记录

print(attack_info.head(n))

3.查看后n条记录

print(attack_info.tail(n))

4.查看列名

print(attack_info.columns)

5.查看形状

print(attack_info.shape)

6.查看第n行

print(attack_info.loc[n])

也可以进行切片从第n行到第m-1行

print(attack_info.loc[n:m])

7.查看指定列
查看多列,把多列的参数写上去就行。

print(attack_info[列名])

8.算数运算
直接做就行,如

attack_info[hot] = attack_info[hot]/100

9.判断当前列是否有缺失值

if pd.isnull(attack_info[hot]):
	pass

10.DataFrame的子结构series
series就是对DataFrame进行提取后的数据类型,如attack_info[hot]的数据结构就是series。

Series中的map()函数可以接受一个函数或含有映射关系的字典型对象
例:

data['food'].map(lambda x: meat_to_animal[x.lower()])  
print(data)

11.删除指定列

#axis=1表示删除列,inplace=True表示替换原始数据
attack_info.drop([hot],axis=1,inplace=True)

以上是关于Pandas学习速成笔记的主要内容,如果未能解决你的问题,请参考以下文章

机器学习代码基础-- Pandas速成

学习笔记 Python - Pandas

MYSQL 语法速成手册(需要考级的同学赶紧收藏学习)

DOM速成学习笔记

pandas学习笔记二:Dataframe

pandas学习笔记一:Series