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

【Pandas】pandas DataFrame from_records

Pandas2.2 DataFrame

Serialization IO conversion

方法描述
DataFrame.from_dict(data[, orient, dtype, …])用于从 字典(dict) 构建 DataFrame 的类方法
DataFrame.from_records(data[, index, …])用于将 结构化数据(如列表的元组、NumPy 结构化数组)转换为 DataFrame

pandas.DataFrame.from_records()

pandas.DataFrame.from_records(data, index=None, exclude=None, columns=None, coerce_float=False, nrows=None)pandas 提供的一个 类方法,用于将 结构化数据(如列表的元组、NumPy 结构化数组)转换为 DataFrame

它特别适用于从数据库查询结果、CSV 文件、JSON 数据等 记录式(record-style)数据 创建 DataFrame。


📌 方法签名
pandas.DataFrame.from_records(data, index=None, exclude=None, columns=None, coerce_float=False, nrows=None)
参数说明:
参数类型描述
datasequence 或 iterable一个可迭代对象,每个元素是一个序列或字典,代表一行数据
indexlist-like(可选)指定行索引标签
excludelist(可选)排除的字段名列表
columnslist(可选)指定列名顺序
coerce_floatbool,默认 False是否尝试将数值字符串自动转为浮点数
nrowsint(可选)读取的最大行数

✅ 示例及结果
示例 1:基本用法(从元组列表创建 DataFrame)
import pandas as pd# 元组列表,每行表示一条记录
data = [('Alice', 25, 'Engineer'),('Bob', 30, 'Manager'),('Charlie', 35, 'Designer')
]df = pd.DataFrame.from_records(data)
print(df)

输出:

         0   1         2
0    Alice  25  Engineer
1      Bob  30   Manager
2  Charlie  35  Designer

默认情况下,列名是整数索引(0, 1, 2…),你可以通过 columns 指定列名。


示例 2:指定列名
df = pd.DataFrame.from_records(data, columns=['Name', 'Age', 'Job'])
print(df)

输出:

       Name  Age        Job
0     Alice   25   Engineer
1       Bob   30    Manager
2  Charlie   35   Designer

示例 3:使用 NumPy 结构化数组

如果你有 NumPy 的结构化数组,可以直接传入:

import numpy as npdtype = [('name', 'U10'), ('age', 'i4'), ('job', 'U10')]
data = np.array([('Alice', 25, 'Engineer'), ('Bob', 30, 'Manager')], dtype=dtype)df = pd.DataFrame.from_records(data)
print(df)

输出:

    name  age        job
0  Alice   25   Engineer
1    Bob   30    Manager

示例 4:指定索引列(index

你可以指定某一列为行索引:

df = pd.DataFrame.from_records(data, index='name')
print(df)

输出:

       age        job
name                
Alice   25   Engineer
Bob     30    Manager

示例 5:限制读取行数(nrows

只读取前 N 行数据:

df = pd.DataFrame.from_records(data, columns=['Name', 'Age', 'Job'], nrows=1)
print(df)

输出:

    Name  Age       Job
0  Alice   25  Engineer

示例 6:排除某些列(exclude
df = pd.DataFrame.from_records(data, exclude=['age'], index='name')
print(df)

输出:

           job
name          
Alice  Engineer
Bob     Manager

📝 总结
特性说明
方法名DataFrame.from_records()
输入类型可迭代的记录结构(如元组列表、结构化数组)
主要用途将“记录”格式的数据快速转换为 DataFrame
支持功能自定义列名、设置索引、排除列、限制行数、强制转换浮点数
常见场景数据库查询结果、日志文件解析、结构化数据导入

🔁 与 DataFrame(data) 的区别
功能pd.DataFrame(data)pd.DataFrame.from_records(data)
支持输入字典、列表、元组等记录式结构(如元组列表、结构化数组)
列名控制需手动指定 columns可通过 columns 控制列名
索引支持不够灵活支持指定 index
性能一般更适合处理大型结构化数据

http://www.dtcms.com/a/273139.html

相关文章:

  • Android开发中几种scope的对比
  • ClickHouse JSON 解析
  • Kubernetes Dashboard UI 部署安装
  • stm32计时的两个方法
  • HarmonyOS学习记录4
  • 基于U-net的高阶心音信号去噪系统设计与实现
  • SSE方式调用php,不是直接 post,
  • 【C++基础语法】
  • STM32F103之ModBus\RS232\RS422\RS485
  • 瑞幸X多邻国“疯感”营销:以情感共鸣取代硬广触达
  • Qt开发:QtConcurrent介绍和使用
  • Python正则表达式实战指南
  • 深度学习13(经典卷积网络结构+卷积网络结构优化)
  • J1939协议
  • 个体户核定多地暂停,将不再享受核定征收?
  • 人工智能-基础篇-29-什么是低代码平台?
  • 大数据学习6:Sqoop数据迁移工具
  • ArcGIS 打开 nc 降雨量文件
  • MinerU2将PDF转成md文件,并分拣图片
  • TB6612电机驱动
  • [注解: @ComponentScan]-原理分析
  • Cloudflare 发布容器服务公测版:边缘计算新时代来临?
  • 职坐标:嵌入式AI边缘计算实战
  • React 实现五子棋人机对战小游戏
  • FFmpeg Windows安装
  • 定位模拟的详细步骤
  • vue3使用mermaid生成图表,并可编辑
  • 数学建模:多目标规划:ε约束法、 理想点法
  • 【大模型推理论文阅读】Enhancing Latent Computation in Transformerswith Latent Tokens
  • pharokka phold--快速噬菌体注释工具