在Python中,pandas是基于NumPy数组构建的,使数据预处理、清洗、分析工作变得更快更简单。pandas是专门为处理表格和混杂数据设计的,而NumPy更适合处理统一的数值数组数据。
1、Series:
Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成,即index和values两部分,可以通过索引的方式选取Series中的单个或一组值。
>>> from pandas import Series
>>> import pandas as pd
>>> s = Series([1,4,'ww','tt'])
>>> print(s.index)
RangeIndex(start=0, stop=4, step=1)
>>> print(s.values)
[1 4 'ww' 'tt']
>>> s
0 1
1 4
2 ww
3 tt
dtype: object
>>> s2 = Series(['wangxing','man',24],index=['name','sex','age'])
>>> print(s2['name'])
wangxing
>>> s2['name'] = 'caoqingqing'
>>> s2['sex'] = 'woman'
>>> print(s2['name'])
caoqingqing
>>> print(s2['sex'])
woman
>>> sd = {'python':9000,'c++':9001,'c#':9000}
>>> s3 = Series(sd)
>>> print(s3['python'])
9000
>>> s4 = Series(sd, index=['java', 'c++', 'c#'])
>>> print(s4)
java NaN
c++ 9001.0
c# 9000.0
dtype: float64
>>> print(pd.isnull(s4))
java True
c++ False
c# False
dtype: bool
>>> print(s4.isnull())
java True
c++ False
c# False
dtype: bool
>>> s4.index = ['语文', '数学', 'English']
>>> print(s4)
语文 NaN
数学 9001.0
English 9000.0
dtype: float64
>>> print(s4*2)
语文 NaN
数学 18002.0
English 18000.0
dtype: float64
2、DataFrame:
DataFrame是一个表格型的数据类型,每列值类型可以不同,是最常用的pandas对象。DataFrame既有行索引也有列索引,它可以被看做由Series组成的字典(共用同一个索引)。DataFrame中的数据是以一个或多个二维块存放的(而不是列表、字典或别的一维数据结构)。
>>> from pandas import Series, DataFrame
>>> data = {"name":['google','baidu','yahoo'],"marks":[100,200,300],"price":[1,2,3]}
>>> f1 = DataFrame(data)
>>> print(f1)
name marks price
0 google 100 1
1 baidu 200 2
2 yahoo 300 3
>>> f2 = DataFrame(data,columns=['name','price','marks'])
>>> print(f2)
name price marks
0 google 1 100
1 baidu 2 200
2 yahoo 3 300
>>> f3 = DataFrame(data, columns=['name', 'marks', 'price'], index=['a', 'b', 'c'])
>>> print(f3)
name marks price
a google 100 1
b baidu 200 2
c yahoo 300 3
>>> newdata = {'lang':{'first':'python','second':'java'},'price':{'first':5000,'second':2000}}
>>> f4 = DataFrame(newdata)
>>> print(f4)
lang price
first python 5000
second java 2000
>>>
3、pandas读取excel
>>> import pandas as pd
>>> data = pd.read_excel(r'C:\Users\MARS\Desktop\华东区月度工作评价\10月评价\华东区-汇总表.xlsx')
#读取前五行:
>>> data.head(5)