【Python】pandas中的DataFrame

在 Python 中,pandas.DataFrame 是一个非常强大的数据结构,用于表示表格、多维数组或异质型数据表。这是 pandas 库中最常用的对象之一,广泛应用于数据分析、数据清洗、数据转换及统计建模等任务。

基本特征

  • 二维大小可变:DataFrame 可以修改大小,且可以修改其行索引和列标签。
  • 异质型:每一列可以是不同的数据类型(数值、字符串、布尔值等)。
  • 标签轴:数据操作时行和列都可以通过标签进行操作。
  • 可以进行算术运算:具有灵活的工具进行算术运算和自动数据对齐。

创建 DataFrame

DataFrame 可以通过多种方式创建,例如从列表、字典、读取文件等:

1. 从列表创建
import pandas as pd

data = [
    [1, 'Alice', 22],
    [2, 'Bob', 27],
    [3, 'Chris', 25]
]

df = pd.DataFrame(data, columns=['ID', 'Name', 'Age'])
print(df)
2. 从字典创建
data = {
    'ID': [1, 2, 3],
    'Name': ['Alice', 'Bob', 'Chris'],
    'Age': [22, 27, 25]
}

df = pd.DataFrame(data)
print(df)
3. 从 NumPy 数组创建

如果你有一个 NumPy 数组,可以直接将它转换成 DataFrame:

import numpy as np

array = np.array([[1, 'Alice', 22], [2, 'Bob', 27], [3, 'Chris', 25]])
df = pd.DataFrame(array, columns=['ID', 'Name', 'Age'])
print(df)

主要功能

数据检索
  • 查看数据head()tail() 方法用于快速查看 DataFrame 的首部和尾部数据。
  • 选择列:可以通过列名直接选择列,例如 df['Name']
  • 选择行:可以使用 loc(基于标签的选择)和 iloc(基于位置的选择)进行行选择。
数据清洗
  • 处理缺失数据:可以使用 dropna() 移除有缺失值的行或列,或使用 fillna() 填充缺失值。
  • 数据过滤:使用条件语句进行过滤,例如 df[df['Age'] > 24]
数据统计
  • 描述统计:使用 describe() 可以提供每一列的统计摘要(如均值、标准差、最小值、最大值等)。
  • 求和、平均值等:方法如 sum()mean() 等可以快速计算总和或平均值。
数据合并与分组
  • 合并merge()concat() 可以用来合并多个 DataFrame。
  • 分组groupby() 方法允许你按照某些标准将数据分组并对每组数据应用函数(如求和、平均等)。

示例:使用 DataFrame

以下是一个简单的示例,展示了 DataFrame 的一些基本操作:

import pandas as pd

# 创建 DataFrame
data = {'Name': ['Alice', 'Bob', 'Chris'], 'Age': [25, 26, 27], 'Salary': [50000, 54000, 50000]}
df = pd.DataFrame(data)

# 基本统计
print(df.describe())

# 增加一列
df['Department'] = ['HR', 'Tech', 'Marketing']

# 数据过滤
df_filtered = df[df['Age'].astype(int) > 25]

print(df)
print(df_filtered)

DataFrame 是 pandas 中极其核心的部分,能有效支持各种数据操作,是处理表格数据的强大工具。

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值