一、Series类
1. 创建一个Series对象
- 通过 pandas.Series 来创建Series数据结构
pandas.Series(data, index, dtype, name)
- data可以为列表,array或者dict;
- index表示索引,必须与数据同长度;
- name代表对象的名称
import numpy as np
import pandas as pd
series1 = pd.Series([2, 8, 3.01, 8.59, 5.18])
# 查看Series1会得到如下输出
"""
0 2.00
1 8.00
2 3.01
3 8.59
4 5.18
dtype: float64
"""
series1 = pd.Series([2, 8, 3.01, 8.59, 5.18], index = ['a','b','c','d','e'], name = 'This is a series')
# 查看series1会得到如下输出
"""
a 2.00
b 8.00
c 3.01
d 8.59
e 5.18
Name: This is a series, dtype: float64
"""
series = pd.Series(np.array([2, 8, 3.01, 8.59, 5.18]), index = ['a','b','c','d','e'])
# 查看series会得到如下输出
"""
a 2.00
b 8.00
c 3.01
d 8.59
e 5.18
dtype: float64
"""
series2 = pd.Series({'北京':3.9,'上海':3.01,'广东':8.99,'武汉':4.11})
# 查看series2会得到如下输出
"""
北京 3.90
上海 3.01
广东 8.99
武汉 4.11
dtype: float64
"""
以上创建Series数据结构的例子说明:
(1)pd.Series 第一个参数 data 可以为列表、array数组、字典dict;
(2)index 可以没有,那索引默认就从0开始;若有规定的索引值,那么索引的长度必须与数据同长度。
2. Series 类的常用属性
● values:返回Series对象所有元素。
● index:返回索引。
● dtypes:返回数据类型。
● shape:返回series数据形状。
● ndim:返回对象的维度。
● size:返回对象的个数。
series2 = pd.Series({'北京':3.9,'上海':3.01,'广东':8.99,'武汉':4.11})
# 查看series2会得到如下输出
"""
北京 3.90
上海 3.01
广东 8.99
武汉 4.11
dtype: float64
"""
# 继续使用这个例子查看Series的相关属性
series3 = pd.Series({'浙江':9.17,'四川':5.24})
series4 = series2.append(series3) # series也有这个功能,相当于把两个序列拼在一起,在末尾添加
# 查看series4可得到:
"""
北京 3.90
上海 3.01
广东 8.99
武汉 4.11
浙江 9.17
四川 5.24
dtype: float64
"""
series2['北京'] = 6.13 # series里面的数据是可以修改的
# 此时再查看series2就是修改过后的:
"""
北京 6.13
上海 3.01
广东 8.99
武汉 4.11
dtype: float64
"""
下面来实现删除数据:
以上例子可以发现,若不加 inplace = True,打印原数据发现并没有变化;加上 inplace = True,原数据才会改变,这是因为:
修改一个对象时:
inplace=True:不创建新的对象,直接对原始对象进行修改;
inplace=False:对数据进行修改,创建并返回新的对象承载其修改结果。
也就是说,不加上 inplace=True 时,会返回一个新的视图,并没有对原数据进行操作。
还有,若想删除两个,可通过列表的形式。
二、DataFrame类
- DataFrame类类似于数据库中的表或Excel中的表结构;
- 既有行索引又有列索引,所以一个series可以看成一个DataFrame里的一列,一个DataFrame可以由多个series构成 。
1. 创建DataFrame数据结构
通过 pandas.DataFrame 来创建 DataFrame 数据结构:
pandas.DataFrame(data, index, dtype, columns)
- data 可为列表、array、dict;
- index 表示行索引
- columns 代表列名或列标签
(1)使用嵌套列表创建一个DataFrame:
嵌套列表里第一个元素是第一行,第二个元素是第二行……每个元素里又有三个数据,所以就是三列。
(2)使用字典创建DataFrame:
通过向DataFrame里传入一个字典的形式,字典的键就作为变量名称也就是列名,所对应的值也就是列名下的数据。
(3)通过数组结构创建 DataFrame:
- 数组结构本身也是一个嵌套列表
- 索引的长度必须和columns的长度相同,否则可能会报错
2. DataFrame的相关属性
● values:以数组的形式输出 DataFrame 的数据。
● index:返回数据集的列标签。
● dtypes:返回每一列的数据类型。
● shape:返回 DataFrame 数据形状(即几行几列)。
● ndim:返回对象的维度。
● size:返回对象的元素个数。
● columns:输出数据集有哪些列。