python中pandas工具包

本文介绍Python中Pandas库的基本使用方法,包括Series和DataFrame的创建、索引操作及数据处理技巧。通过实例展示了如何高效地进行数据清洗、整理和分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近爬虫中的数据要用到dataframe数据框,所以学习了pandas工具包,这个包中dataframe部分还是跟R语言中有点像。用起来差不多,但是部分语法还是有不同的。

import pandas as pd
import numpy as np
from pandas import Series,DataFrame

# Series类似于一位数组,它由一组数据以及对应的数据标签(即索引)组成,通常来说,仅仅由一组数据就可以产生最基本的series
obj = pd.Series([4,7,-5,3])
print(obj)
# 通过values 和 index 这两个属性获取数组的值和索引对象
print(obj.values)
print(obj.index)

# 创建有标记的索引
obj = pd.Series([4,7,-5,3],index=['d','b','a','c'])
print(obj['a'])

# 可以将Series看成是一个长度固定的有序字典,字典反应的是索引值到数据值的映射
# 在以字典作为参数的函数中,也可以用Serise代替字典作为函数的参数
data={'Oregon':1000,'a':2000,'Ohio':3000,'Texas':4000}
data=pd.Series(data)
print(data)

states = ['California','Ohio','Oregon','Texas']
datas = pd.Series(data,index=states)
print(datas)

# 缺失值检测
print(pd.isnull(datas))
print(pd.notnull(datas))


# Series 可以自动对齐索引
sdata = {'Ohio':3500,'Texas':71000,'Oregon':16000,'Utah':5000}
obj3 = pd.Series(sdata)

states = ['California','Ohio','Oregon','Texas']
obj4 = pd.Series(sdata,index=states)
print(obj3)
print(obj4)

print(obj3+obj4)

# DataFrame用来处理表格类型的数据结构,含有一组有序的列,每一列可以是不同类型的值,可以按行索引或按列索引,
data = {'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],'year':[2000,2001,2002,2001,2002],'pop':[1.5,1.7,3.6,2.4,2.9]}
frame = pd.DataFrame(data)
print(frame)

frame = pd.DataFrame(data,columns=['year','state','pop'])
print(frame)

# 与Series类似,若传入的列名找不到那么就会产生NA列的值
frame2 = pd.DataFrame(data,columns=['year','state','pop','debt'],index=['one','two','three','four','five'])
print(frame2)
# 获取某一列
print(frame2.year)
# 获取某一行
print(frame2.ix['three'])

# 对空列赋固定值
frame2['debt'] = 16.5
print(frame2)
#对空列赋一系列的值
frame2['debt'] = np.arange(5)
print(frame2)

# 如果赋值时长度缺失,空位会补上NaN
val = pd.Series([-1.2,-1.5,-1.7],index=['two','four','five'])
frame2['debt'] = val
print(frame2)
# 可以对不存在的新列进行赋值,从而构造出一个新列,
frame2['eastern'] = frame2.state =='Ohio'
print(frame2)

# 删除某一列
del frame2['eastern']
print(frame2.columns)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值