python pandas series items方法_用python做数据分析3|pandas库介绍之两种数据结构Series和DataFrame...

今天是4.30号。

由于pandas部分内容很多,所以接下来会分多个部分进行学习。

这一部分也是pandas学习的第一部分,先了解两种主要的数据结构。

import pandas as pd

from pandas import Series,DataFrame

因为Series和DataFrame用的次数非常多,所以将其引入本地命名空间中会更方便。

(1)Series

Series是一种类似与一维数组的对象,它由一组数据以及一组与之相关的数据便签(即索引)组成,仅由一组数据即可产生最简单的Series。

例如:a=Series([9,-3,4,2])

得到的结果为:

0 9

1 -3

2 4

3 2

系统会自动为Series数据创建整数索引,可通过Series的values和index属性获取其数组表示形式和索引对象

print(Series.values)

print(Series.index)

这与字典型数据的keys(),values(),items()类似。

同时我们在创建Series时也可以自定义索引值:

b=Series([9,-3,4,2],index=['a','c','d','b'])

那么访问Series中的值时可以直接用b['index']的方法,例如b['c'],b[['d','a']]可以同时选取多个值。

也可以直接将一个字典型数据a转化为Series数据,Series(a)

pandas中用NA表示数据缺失,isnull()和notnull()可用于检测缺失数据,用法为:a.isnull(),a.notnull()

(2)DataFrame

DataFrame是一个表格型数据,含有一组有序的列,每一列可以是不同的类型值。DataFrame可以看成是由多个Series组成的字典,它们共用一个索引。

在构建DataFrame时,最最最常用的就是先创建一个data,data一般可以是字典和数组,再用a=DataFrame(data)来转换为DataFrame结构。在DataFrame(data)时也可以同时传入index和columns参数,两个参数必须是列表型。

1).构建DataFrame最常见的方法是传入一个由等长列表或数组组成的字典:

例如:

data={

'name':['bon','kate','jun','sam'],

'stature':['102','112','136','90'],

'grade':['70','76','98','88']

}

frame=DataFrame(data)

DataFrame会自动加上索引,得到的结果为:

name stature grade

0 bon 102 70

1 kate 112 76

2 jun 136 98

3 sam 90 88

2).也可以为DataFrame指定索引

frame2=DataFrame(data,columns=['name','grade','stature','birthdate'],

index=['one','two','three','four'])

跟Series中一样若在对应的列中找不到数据,就会产生缺失值NaN.

name grade stature birthdate

one bon 70 102 NaN

two kate 76 112 NaN

three jun 98 136 NaN

four sam 88 90 NaN

3).取值和赋值

查看列:可用类似字典的方式获取一个Series(即一个列的值),如:frame2['name'];

查看行:可用索引字段ix来获取某行的值,如:frame2.ix['three'];

可用frame2['birthdate']=1990来直接对某一列进行赋值;

4).删除某一列的值

del frame2['name']

5)将嵌套型字典转化为DataFrame型时,外层的键作为列,内层的键作为行索引

例如:

data={

'newyork':{'2001':51,'2002':76},

'houston':{'2001':49,'2002':90},

}

DataFrame(data)得到结果为:

newyork houston

2001 51 49

2002 76 90

对于取DataFrame类型数据a中特定位置的数据

可以先找到对应的index,再采用a[index,'columns']得到。

而index可以根据有对应某一个字段的value得到:

例如已知a中column为name这一栏下的某个值为kate,则索引可由下面求得。

get_index=list(a['name']).index(kate)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值