数据结构
2024年8月28日大约 2 分钟PythonPythonPandas
数据结构
1 Series
Series 是一种类似于一维数组的对象,它由一组数据(各种 Numpy 数据类型)以及一组与之相关的数据标签(即索引)组成。
相当于一维数组的基础上,加了数据标签索引数据。
1.1 创建Series
从列表创建 Series
import pandas as pd
s = pd.Series([1, 3, 5, 7, 9])
print(s)
0 1
1 3
2 5
3 7
4 9
dtype: int64
输出结果包括索引列(0,1,2...)、数据列和数据类型。
从字典创建 Series
字典的 key
作为数据的标签名。
import pandas as pd
data = {'a': 1, 'b': 2, 'c': 3}
s = pd.Series(data)
print(s)
a 1
b 2
c 3
dtype: int64
1.2 使用
访问元素
通过索引可以访问对应的元素。
import pandas as pd
data = {'a': 1, 'b': 2, 'c': 3}
s = pd.Series(data)
print(s[0])
print(s['b'])
1
2
查看值和索引
列出所有的值、索引。
print(s.values)
print(s.index)
[1 2 3]
Index(['a', 'b', 'c'], dtype='object')
运算
对两个 Series 可以进行计算。
import pandas as pd
s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
print(s1 + s2)
0 5
1 7
2 9
dtype: int64
2 DataFrame
DataFrame 是一个二维的表格型数据结构,类似于电子表格或 SQL 表。它由一组有序的列组成,每列可以是不同的值类型(数值、字符串、布尔值等)。

第一行是表头,第一列是索引。(可以参考 Excel 的格式进行理解)
例子
对于下面的数据,表头是 name 和 age,每一行表示一个人的信息。
name age
0 Alice 25
1 Bob 30
2 Charlie 35
2.1 创建DataFrame
从列表创建
import pandas as pd
data = [
['Alice', 25],
['Bob', 30],
['Charlie', 35]
]
df = pd.DataFrame(data, columns=['name', 'age'])
print(df)
name age
0 Alice 25
1 Bob 30
2 Charlie 35
从字典创建
使用字典创建,指定了每列数据的名称。
import pandas as pd
data = {
'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35]
}
df = pd.DataFrame(data)
print(df)
name age
0 Alice 25
1 Bob 30
2 Charlie 35
2.2 使用
选择列
查看二维数据中的某一列。
print(df['name'])
0 Alice
1 Bob
2 Charlie
Name: name, dtype: object
选择行
查看二维数据中的某一行,可以通过索引或者标签名选择。
print(df.iloc[0]) # 基于位置选择
print(df.loc[0]) # 基于标签选择
name Alice
age 25
Name: 0, dtype: object
筛选数据
print(df[df['age'] > 25])
name age
1 Bob 30
2 Charlie 35