本文是学习《利用Python进行数据分析》的部分笔记,在这里感谢作者。
一:导入pandas from pandas import Series,DataFrame
>>> import pandas as pd
二,series的有关介绍
Series类似于一维数组,它由一组数据以及一组与之相关的索引组成。由一组数据产生
obj=Series([4,7,-5,3]) >>> obj 0 4 1 7 2 -5 3 3 dtype: int64
可以在创建的过程中指定索引内容:
obj=Series([4,7,-5,3],index=['d','b','a','c']) >>> obj d 4 b 7 a -5 c 3
values属性可以获得数组值,index属性获得索引值:
>>> obj.values array([ 4, 7, -5, 3], dtype=int64) >>> obj.index Index(['d', 'b', 'a', 'c'], dtype='object')
Numpy数组可进行的操作,如根据布尔型数组进行过滤,标量乘法,应用数学函数等都会保留索引与值之间的连接。
>>> obj[obj>2] d 4 b 7 c 3
可以用in判断元素是否在Series中。
'b' in obj True
可以通过字典创建Series:
>>> sdata={'Ohio':35000,'Texas':71000,'Oregon':16000,'Utah':5000} >>> obj3=Series(sdata) >>> obj3 Ohio 35000 Oregon 16000 Texas 71000 Utah 5000
传入字典的键作为索引,会自动匹配,不存在的为NAN
>>> states=['California','Ohio','Oregon','Texas'] >>> obj4=Series(sdata,index=states) >>> obj4 California NaN Ohio 35000.0 Oregon 16000.0 Texas 71000.0
在这个例子中,sdata中跟states索引相匹配的三个值会找出并放在相应的位置上。 pandas的isnull和notnull函数可用于检测缺失值
pd.isnull(obj4) California True Ohio False Oregon False Texas False dtype: bool>> > pd.notnull(obj4) California False Ohio True Oregon True Texas True dtype: bool>> >
Series最重要的功能是,他在算术运算中会自动对其不同索引的数据
obj3+obj4 California NaN Ohio 70000.0 Oregon 32000.0 Texas 142000.0 Utah NaN dtype: float64
Series的索引可以通过赋值的方式直接修改:
obj d 4 b 7 a -5 c 3 dtype: int64>> > obj.index=['Bob','Steve','Jeff','Ryan'] >>> obj Bob 4 Steve 7 Jeff -5 Ryan 3