Series
- 是带标签的一维数组
- 它由一组数据,以及一个与之相关的数据标签,即索引组成
- 一组数据,可以是不同的数据类型
- 可存储整数、浮点数、字符串、Python 对象等类型的数据
- 轴标签统称为索引
- 字典(比较好理解)
DataFrame
- 一组Series,增加了cloumns
- 第一列 称为index(索引)第一行称为columns(列名),中间为数据体
- 通过python中的字典+series是最容易创建DataFrame的方式,比如:
data={
'sate':['a','b','c','d','e'],
'year':[2000,2001,2002,2003,2004],
'pop':[1.5,1.7,3.6,2.4,2.9]
}
df = pd.DataFrom(data) - 返回多个列 df[['a','b']],这就理解为了什么是两重[],type(df[['a','b']])可以查看返回类型
- DataFrame 查询结果为一行或者一列,一维数据, 则为一个series对象
- 查询结果如果为多行多列,是一个区块,二维的,仍然是一个DataFrame对象
- 每个行或者是每个列都是一个series,一维数据
- df常用的方法有
df.loc[1] 查询一行
df.loc[1:3] 查询多行
df.shape 查看行列数
df.columns 查看列名
df.index 查看索引
df.dtypes 查看数据类型
pandas
- 读取一个非CSV的格式化文本,比如:
fake 1 2012/07
luck 87 2018/01
just 32 2015/11
存为 /test.txt
p = pd.read_csv(
"/test.txt",
sep = "\t",
header=None,
names=['what','value','date']
) - 生成一个系列
In [3]: s = pd.Series(np.random.randn(5), index=['a', 'b', 'c', 'd', 'e']) - 由字典生成一个PD矩阵(也就是一行一行的生成)
pd.DataFrame.from_dict(dict([('A', [1, 2, 3]), ('B', [4, 5, 6])]),orient='index', columns=['one', 'two', 'three'])