python pandas教程入门与实战练习
Pandas是Python语言进行数据分析的基础库,是一个基于NumPy的基本的数据分析包。该工具是为了解决数据分析任务而创建的,Pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。而且提供了大量的能使我们快速便捷的处理数据的函数和方法。
Pandas最初是为了金融数据分析而开发出来的,所以提供了十分强大的时间序列分析支持。同时,在人工智能爆发的时代,无论是传统的机器学习还是飞速发展的深度学习,对数据的预处理无疑是在训练模型之前的重中之重,Pandas对数据的处理提供了便捷的工具和方法,是学习人工智能的先修课。Pandas也可以快速读取CSV,Excel等文件,为大数据分析提供了便利。
1.Pandas中最基本的数据类型是Series,Series是处理一位数据的数据类型,下面我们简单定义一个Series:
s = pd.Series([1, 3, 5, 6, 8])
Series会自动的为数据加入索引值,从0开始,类似于数组
2.同时我们也可以为数据自定索引index:
s = pd.Series([1, 2, 5, 6, 8], index=['a', 'b', 'c', 'd', 'e'])
得到的结果的会为数值匹配指定的索引(a, b, c, d, e)
3.我们可以用以下函数查看Series的索引index和值values
print(s.index) print(s.values)
4.我们可以用索引来提取索引对应的值,类似于数组,同时我们也可以用列表的形式传入多个索引来提取多个值
print(s['a']) # 提取多个值用列表的形式传入 print(s[['b', 'a']])
5.Series提供了可以通过Bool索引提取值得方法
print(s[s > 4])
上述例子可以提取所有的values值大于4的键值对
6.我们也可以在Series中使用numpy的一些方法
# 可以使用numpy的一些方法 print(s*4) print(np.mean(s)) print(s.mean())
将s中的每一个元素都乘以4
下面两个函数算出了Series的平均值
7.判断一个元素是否在Series中,可以用in来处理
print(1 in s.values) print('a' in s.index)
会返回一个bool类型值
8.我们也可以用另一种方法去定义Series中的index和value
# 也可以用以下方法定义Series的index和value b = pd.Series({'a': 1, 'b': 2, 'c': 3}) print(b)
9.如果用上述方法定义,并在index属性中定义了不同的index,后者没有的index会默认保存为NaN
# 如果按如下方式定义index和value # 没有的索引会变成NaN b = pd.Series({'a': 1, 'b': 2, 'c': 3}, index=['b', 'c', 'd'])
10.在判断Series的空值时,提供了isnull和实例方法pd.isnull,当然类似的也有notnull,返回一个bool类型的Series
# 用isNull判断是否为空 print(pd.isnull(b)) # 也可以用b.isnull这种实例方法 print(b.isnull()) # 类似的,也有notnull 方法
11.Series会根据索引来匹配两个Series的相加相减的等等操作,若有没匹配到的索引,会赋值为空,返回一个包含所有索引的Series
x = pd.Series({'a': 10, 'b': 20, 'c': 30}) y = pd.Series({'b': 20, 'c': 30, 'e': 40}) print(x+y)
这篇文章让大家对Pandas的基本数据类型和简单的初始化,取值,以及索引的使用做了简单介绍,Series是Pandas中最常使用的DataFrame的基本结构,学习了Series下面学习DataFrame有更好的理解。
下一篇将介绍DataFrame数据类型和简单的使用方法。
上一篇: HTML5 input事件检测输入框变化
下一篇: pyqt5 教程——pyqt5模块介绍
推荐阅读