当前位置: 首页 > news >正文

Pandas DataFrame 对象的基本操作

Pandas 是 Python 中用于数据分析和操作的一个强大库,它提供了高性能、易用的数据结构和数据分析工具。其中,DataFrame 是 Pandas 的核心数据结构之一,用于表示二维表格型数据。本文将详细介绍 DataFrame 的基本概念、创建方式、属性、常用方法以及数据导入与导出操作。

DataFrame 概述

DataFrame 是一个二维的、表格型的数据结构,可以看作是由多个 Series(一维数据结构)组成的字典,共同使用一个索引。它既有行索引也有列索引,支持多种数据类型(如整数、浮点数、字符串、布尔值等),并且具有灵活的数据操作能力。

DataFrame 的特点包括:

  • 二维结构:类似于 Excel 表格或 SQL 表,具有行和列。
  • 列的数据类型:不同的列可以包含不同的数据类型。
  • 索引:支持行索引和列索引,类似于 Excel 中的行号和列标。
  • 大小可变:可以动态地添加或删除行和列。
  • 自动对齐:在进行算术运算或数据合并时,自动对齐索引。
  • 处理缺失数据:使用 NaN(Not a Number)表示缺失值。
  • 丰富的数据操作功能:支持数据筛选、排序、聚合、重塑等多种操作。
  • 时间序列支持:特别支持时间序列数据的处理。
  • 数据可视化:可以与 Matplotlib、Seaborn 等库结合使用进行数据可视化。
创建 DataFrame

Pandas 提供了多种方式来创建 DataFrame,主要包括:

  • 字典方式:通过字典来创建,字典的键作为列名,值作为数据(可以是列表、数组或另一个 Series)。
  • 列表嵌套元组:通过列表的列表或列表的元组来创建,其中外层列表的每一个元素代表一行,内层列表或元组的元素代表一列的值。

示例代码:

import pandas as pd # 字典方式 
data = {'Name': ['Tom', 'Jerry', 'Mickey'], 'Age': [25, 22, 30], 'City': ['New York', 'Paris', 'Los Angeles']} 
df = pd.DataFrame(data, index=['A', 'B', 'C']) # 列表嵌套元组 
data = [('Tom', 25, 'New York'), ('Jerry', 22, 'Paris'), ('Mickey', 30, 'Los Angeles')] 
columns = ['Name', 'Age', 'City'] 
df = pd.DataFrame(data, columns=columns, index=['A', 'B', 'C'])
DataFrame 属性

DataFrame 提供了多个属性来访问其基本信息,包括:

  • shape:返回 DataFrame 的维度(行数和列数)。
  • size:返回 DataFrame 中的元素总数。
  • values:以 NumPy 数组的形式返回 DataFrame 中的数据。
  • dtype 或 dtypes:返回 DataFrame 各列的数据类型。
  • ndim:返回 DataFrame 的维度(始终为 2)。
  • index 和 columns:分别返回 DataFrame 的行索引和列名。
常用方法

DataFrame 提供了丰富的方法来进行数据操作,包括:

  • head(n=5):返回 DataFrame 的前 n 行(默认为 5 行)。
  • tail(n=5):返回 DataFrame 的后 n 行(默认为 5 行)。
  • info():打印 DataFrame 的简要摘要,包括列名、非空值数量和数据类型。
  • describe():生成 DataFrame 中数值列的统计摘要。
  • T:转置 DataFrame,即行列互换。
  • count():返回每列中非空值的数量。
  • max()min()mean()median()mode():分别计算每列的最大值、最小值、平均值、中位数和众数。
索引和列名的相关操作
  • 修改列名和索引:可以使用 rename() 方法或直接通过赋值操作来修改列名和索引。
  • 添加列:通过赋值操作可以在 DataFrame 的末尾或指定位置添加新列。
  • 删除列:使用 drop() 方法并指定 axis=1 来删除列。
导入和导出数据

Pandas 支持多种数据格式的导入和导出,包括 CSV、Excel、SQL 数据库、JSON 等。

  • 导出数据:使用 to_csv()to_excel()to_pickle() 等方法将 DataFrame 导出到不同的文件类型。
  • 导入数据:使用 pd.read_csv()pd.read_excel()pd.read_sql() 等函数从不同类型的文件中读取数据到 DataFrame。

示例代码:

# 导出到 CSV 
df.to_csv('data.csv', index=False) # 导出到 Excel 
df.to_excel('data.xlsx', index=False, sheet_name='Sheet1') # 读取 CSV 
df = pd.read_csv('data.csv') # 读取 Excel 
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')
总结

Pandas DataFrame 提供了强大的数据操作能力,支持数据的创建、索引、筛选、聚合、重塑等多种操作。通过本文的介绍,希望读者能够掌握 DataFrame 的基本概念和常用操作,以便在数据分析和处理中更加高效地使用 Pandas。


http://www.mrgr.cn/news/34837.html

相关文章:

  • Reis数据库及key的操作命令汇总
  • 动态倒计时在 Vue 3 中的实现
  • 关系型数据库 - MySQL II
  • 振弦式渗压计智慧水利工程 适用恶劣环境有保障
  • 解密云WAF的核心功能!为企业保驾护航的关键技术
  • Warrior Pack Super Bundle 人物战斗动画捆绑包
  • 等位基因与碱基:异同点解析
  • Golang plugin包教程:创建与管理插
  • 重入锁ReentrantLock详解
  • axios提交数据后台php用post方式无法正确接收
  • Oracle AI理论与实践,企业落地篇干货满满
  • 使用Python实现深度学习模型:智能电影制作与剪辑
  • FastAPI 第二课 -- 安装
  • 请不要自己写,Spring Boot非常实用的内置功能
  • 测试文件只能
  • python爬虫初体验(二)
  • 9.23作业
  • 网络工程/售后类面试题
  • CentOS一键安装Mosquitto开源消息代理结合内网穿透实现远程连接
  • 浅谈C++之多线程实现