数据处理包Pandas--第三章

Posted Recently 祝祝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据处理包Pandas--第三章相关的知识,希望对你有一定的参考价值。

序列:

1:系列的创建于访问

创建

序列:由索引对应值组成

import pandas as pd
import numpy as np
#列表转序列
s1=pd.Series([1,2,3,4,5])
#元祖转序列
s2=pd.Series((1,3,4))
#数组转序列
s3=pd.Series(np.array([1,2,3,5]))
#指定下标
s3=pd.Series([5,2,3],index=['a','b','c'])
#字典转序列
mydict={'red':2000,"bule":3000,"yellow":4000}
ss=pd.Series(mydict)

有默认的序列索引,也可以index自己指定索引
集合不能被序列化
数组里的内容可以修改

访问

通过索引下标进行访问

print(s1[3])

2:序列属性

在这里插入图片描述

3:序列方法

**加粗样式**

4:空值处理方法

在这里插入图片描述

5:序列切片

打印的值:对于序列来说都是索引值

import pandas as pd
s3=pd.Series([5,2,3,4],index=['a','b','c','d'])
#取索引号为a,b的元素
s22=s3[['a','b']]
#索引为连续的数组,取左不取右
s11=s3[0:2]
#索引为不连续的数组
s33=s3[[0,1,3]]
#索引为逻辑数组
s44=s3[s3>1]

6:序列聚合运算

在这里插入图片描述

数据框

1:数据框的创建:

s1.DataFrame(data)

数据框每个数组必须相同的Index,相同的长度

2:数据框属性

在这里插入图片描述

3:数据框方法

在这里插入图片描述

4:数据框切片

1:利用数据框中的iloc属性进行切片
利用数据框中的iloc[①,②]可以实现下标值或逻辑定位索引,并进行切片操作,①控制行,②控制列
跟np.ix_()切片类似

2:利用数据框中的loc属性进行切片
通过列值进行行行筛选定位,在通过指定列进行切片操作

import pandas as pd
import numpy as np
data={"shimmer":[1,2,3,4],"recently":[5,6,7,8],"Trada":[9,9.1,'kl',np.nan],
      "A":['KL','KL','KL','kl'],'B':[1,2,np.nan,3]}

data1=pd.DataFrame(data)
c1=data1.loc[data1['A'] == 'kl',:]
c2=data1.loc[data1['A'] == 'KL',['A','B']]
c3=data1.loc[data1['A'] == 'KL',['A','B']].head(2)

在这里插入图片描述

5:外部文件读取

在这里插入图片描述

# -*- coding: utf-8 -*-
"""
Created on Tue May 11 10:38:40 2021

@author: Administrator
"""

import pandas as pd
#excel文件读取
path="一、车次上车人数统计表.xlsx"
data=pd.read_excel(path)

data1=pd.read_excel(path,"Sheet2")

#data2=pd.read_excel('dta.xlsx',header=None)

data3=pd.read_excel(path,"t3",header=None)


# TXT文件读取
dta1=pd.read_table("txt1.txt",header=None)
dta11=pd.read_table("txt1.txt")

dta2=pd.read_table("txt2.txt",sep='\\s+')

dta3=pd.read_table("txt3.txt",sep=",",header=None)


6:数据框合并

concat: 水平连接行数相同,垂直连接列数相同

import pandas as pd
import numpy as np


dict1={'a':[2,2,'kt',6],'b':[4,6,7,8],'c':[6,5,np.nan,6]}
dict2={'d':[8,9,10,11],'e':['p',16,10,8]}
dict3={'a':[1,2],'b':[2,3],'c':[3,4],'d':[4,5],'e':[5,6]}

df1=pd.DataFrame(dict1)
df2=pd.DataFrame(dict2)
df3=pd.DataFrame(dict3)


del  dict1,dict2,dict3
df4=pd.concat([df1,df2],axis=1)
df5=pd.concat([df3,df4],axis=0)
#重新设置index的值
df5.index=range(6)

在这里插入图片描述

以上是关于数据处理包Pandas--第三章的主要内容,如果未能解决你的问题,请参考以下文章

pandas GroupBy上的方法apply:一般性的“拆分-应用-合并”

text [检查特定的数据片段]取自论文但有意思应用。 #python #pandas

浅谈python的第三方库——pandas

python常用包及主要功能

pandas的简单使用

Python系列Python包管理器pip