本文已参与「新人创作礼」活动,一起开启掘金创作之路
pandas是数据处理利器,基于Numpy构建。
内置数据结构
- Series由一维数组和与之相关的索引组成。可以保存任何类型的数据。
- DataFrame二维表格型数据。有行索引和列索引。
导入
一般命名为pd
pip install pandas #安装
import pandas as pd
Series
创建
pd.Series( data, index, dtype, name, copy) 参数说明: (索引值一般都是从0开始) data:一组数据(ndarray 类型)。数据可以写成字典形式,就可以不需要index,字典的标签自动设为pandas数据的标签。
index:数据索引标签,如果不指定,默认从 0 开始。
dtype:数据类型,默认会自己判断。
name:设置名称。
copy:拷贝数据,默认为 False。
s1 = pd.Series([2,6,8,7,4],dtype='float64',name='first')
s1
#0 2.0
#1 6.0
#2 8.0
#3 7.0
#4 4.0
#Name: first, dtype: float64
s2 = pd.Series([2,6,8,7,4],[9,8,6,7,8],dtype='float64',name='first')
s2
#9 2
#8 6
#6 8
#7 7
#8 4
#Name: first, dtype: int64
dict创建.用标签索引时,不存在就记为NaN,标签可以重复。
data1 = {'monkey':'banana','cow':'grass','dog':'meat'}
s2 = pd.Series(data1)
s2
#monkey banana
#cow grass
#dog meat
#dtype: object
s3 = pd.Series(data1,index=['monkey','monkey','dog','dolphin'])
s3
#monkey banana
#monkey banana
#dog meat
#dolphin NaN
#dtype: object
访问
DataFrame
pd.DataFrame( data, index, columns, dtype, copy)
data:一组数据(ndarray、series, map, lists, dict 等类型)。 index:索引值 / 行标签。 columns:列标签,默认为 (0, 1, 2, …, n) 。 dtype:数据类型。 copy:拷贝数据,默认为 False。
创建
f1 = ([1,3,5],[2,4,6])
g1 = pd.DataFrame(f1,index=['odd','even'],columns=['first','second','third'],dtype=float)
print(g1)
# first second third
# odd 1.0 3.0 5.0
# even 2.0 4.0 6.0
## DataFrame的值是数组的字典创建时,其各个数组的长度需要相同。
## 如果DataFrame的值是费数组时,没有这一限制,且自动将缺失值补成NaN。
f2 = {'a':'apple','b':'banana','c':'pear'}
g2 = pd.DataFrame(f2,index=['one'])
print(g2)
# a b c
# one apple banana pear