Skip to content

数据结构之数据框

DataFrame 是 Pandas 最重要的数据结构,是一个二维带标签的数据结构。

创建数据框

从字典创建

python
import pandas as pd

data = {
    '姓名': ['张三', '李四', '王五'],
    '年龄': [25, 30, 35],
    '城市': ['北京', '上海', '广州']
}

df = pd.DataFrame(data)
print(df)

从列表创建

python
data = [
    ['张三', 25, '北京'],
    ['李四', 30, '上海'],
    ['王五', 35, '广州']
]

df = pd.DataFrame(data, columns=['姓名', '年龄', '城市'])
print(df)

从 NumPy 数组创建

python
import numpy as np

data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
df = pd.DataFrame(data, columns=['A', 'B', 'C'])
print(df)

数据框属性

python
df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

print(df.shape)      # 形状 (行数, 列数)
print(df.columns)    # 列名
print(df.index)      # 行索引
print(df.dtypes)     # 各列数据类型
print(df.values)     # 底层 NumPy 数组

查看数据

python
print(df.head())     # 前5行
print(df.tail())     # 后5行
print(df.info())     # 数据框信息
print(df.describe()) # 统计摘要

列操作

python
# 选择单列
print(df['A'])

# 选择多列
print(df[['A', 'B']])

# 添加新列
df['D'] = [10, 11, 12]

# 删除列
del df['D']
# 或
df = df.drop('C', axis=1)

行操作

python
# 通过位置选择行
print(df.iloc[0])    # 第一行

# 通过标签选择行
print(df.loc[0])     # 索引为0的行

# 删除行
df = df.drop(0)      # 删除索引为0的行

DataFrame 是数据分析的核心,掌握它的创建和基本操作是学习 Pandas 的关键。