026—pandas 根据文本数据提取特征

2024-03-12 03:04

本文主要是介绍026—pandas 根据文本数据提取特征,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

在数据处理中,源数据可能具有一定便于记录但又复杂的结构,我们在后续使用数据时还需要进一步进行处理。在本例中,要根据一列数据提取出数据中的相关特征,我们来看看 pandas 是如何完成的。

需求:

  • 以上数据的 a
    列是包含复杂信息的字符串类型列。每个值由连字符连接信息,每个信息由数字和字母组成,数字代表此字母的数量,有些行可能包含多个相同字母。
  • 现在的需求是在数据后边增加一些列,每个字母为一列,值为本行对应字母的数量。
  • 如,索引 0 行,增加 R、A、G 三列,值分别是 13(有两个 R,前边的数字需要相加)、5、4。

二、使用步骤

1.引入库

代码如下(示例):

import pandas as pd

2.读入数据

代码如下(示例):

df = pd.DataFrame({'a': ['6R-5A-4G-7R','2A-4G-3A','8G','1R-9A']})
df

在这里插入图片描述

# 我们先以索引 0 行的 a 列数据为测试字符串编写处理函数。
# 用连字符拆分为列表
val = '6R-5A-4G-7R'.split('-')
val

在这里插入图片描述

# 将每个字母与前边的字母相乘,得到纯字母
val = [(i[-1])*int(i[:-1]) for i in val]
val

在这里插入图片描述

# 将列表所有元素连接为一个字符串
val = ''.join(val)
val

在这里插入图片描述

# 构造 Counter 对象
from collections import Counter
val = Counter(val)
val

在这里插入图片描述

# 以上构造的 Counter 对象,它可以帮助我们计算字符串(可迭代对象)里元素的个数,形成一个我们想要字典形式。它是字典的一个子类:
isinstance(val, dict)

在这里插入图片描述

Counter.mro()

在这里插入图片描述

# 接下来,将以上处理过程封装为一个函数:
from collections import Counterdef func(val: str):val = val.split('-')val = [(i[-1])*int(i[:-1]) for i in val]val = ''.join(val)val = Counter(val)return val
# a 列应用这个函数并车为列表:
df.a.map(func).to_list()

在这里插入图片描述

# 构造为 DataFrame,将空值填充为 0 并转为整型:
right = (pd.DataFrame(df.a.map(func).to_list()).fillna(0).astype(int)
)
right

在这里插入图片描述

# 这样就生成了右表数据,最后源数据与右表数据合并:
df.merge(right, left_index=True, right_index=True)

在这里插入图片描述

总结

以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

这篇关于026—pandas 根据文本数据提取特征的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/799948

相关文章

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

使用SpringBoot整合Sharding Sphere实现数据脱敏的示例

《使用SpringBoot整合ShardingSphere实现数据脱敏的示例》ApacheShardingSphere数据脱敏模块,通过SQL拦截与改写实现敏感信息加密存储,解决手动处理繁琐及系统改... 目录痛点一:痛点二:脱敏配置Quick Start——Spring 显示配置:1.引入依赖2.创建脱敏

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

pandas实现数据concat拼接的示例代码

《pandas实现数据concat拼接的示例代码》pandas.concat用于合并DataFrame或Series,本文主要介绍了pandas实现数据concat拼接的示例代码,具有一定的参考价值,... 目录语法示例:使用pandas.concat合并数据默认的concat:参数axis=0,join=

C#代码实现解析WTGPS和BD数据

《C#代码实现解析WTGPS和BD数据》在现代的导航与定位应用中,准确解析GPS和北斗(BD)等卫星定位数据至关重要,本文将使用C#语言实现解析WTGPS和BD数据,需要的可以了解下... 目录一、代码结构概览1. 核心解析方法2. 位置信息解析3. 经纬度转换方法4. 日期和时间戳解析5. 辅助方法二、L