数据分析必备:一步步教你如何用Pandas做数据分析(10)

1、Pandas 文本处理

Pandas 文本处理操作实例
在本章中,我们将使用基本的Series / Index讨论字符串操作。在随后的章节中,我们将学习如何在DataFrame上应用这些字符串函数。
Pandas提供了一组字符串函数,可以轻松地对字符串数据进行操作。最重要的是,这些函数忽略(或排除)缺少的/ NaN值。
几乎所有这些方法都可用于Python字符串函数(请参阅: https://docs.python.org/3/library/stdtypes.html#string-methods)。因此,将Series对象转换为String对象,然后执行该操作。
我们看看每个操作如何执行。
在这里插入图片描述
在这里插入图片描述
我们来创建一个Series,看看以上所有功能如何工作。

import pandas as pd
import numpy as np
s = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t', np.nan, '1234','SteveSmith'])
print(s)

运行结果:

0             Tom
1    William Rick
2            John
3         Alber@t
4             NaN
5            1234
6      SteveSmith
dtype: object

1.1、lower()

import pandas as pd
import numpy as np
s = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t', np.nan, '1234', 'SteveSmith'])
print(s.str.lower())

运行结果:

0             tom
1    william rick
2            john
3         alber@t
4             NaN
5            1234
6      stevesmith
dtype: object

1.2、upper()

import pandas as pd
import numpy as np
s = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t', np.nan, '1234','SteveSmith'])
print(s.str.upper())

运行结果:

0             TOM
1    WILLIAM RICK
2            JOHN
3         ALBER@T
4             NaN
5            1234
6      STEVESMITH
dtype: object

1.3、len()

 import pandas as pdimport numpy as nps = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t', np.nan, '1234','SteveSmith'])print(s.str.len()

运行结果:

 0 3.01 12.02 4.03 7.04 NaN5 4.06 10.0dtype: float64

1.4、strip()

 import pandas as pdimport numpy as nps = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print sprint ("After Stripping:")print(s.str.strip()

运行结果:

0 Tom1 William Rick2 John3 Alber@tdtype: objectAfter Stripping:0 Tom1 William Rick2 John3 Alber@tdtype: object

1.5、split(pattern)

 import pandas as pdimport numpy as nps = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print sprint ("Split Pattern:")print(s.str.split(' ')

运行结果:

 0 Tom1 William Rick2 John3 Alber@tdtype: objectSplit Pattern:0 [Tom, , , , , , , , , , ]1 [, , , , , William, Rick]2 [John]3 [Alber@t]dtype: object

1.6、cat(sep=pattern)

import pandas as pdimport numpy as nps = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print(s.str.cat(sep='_')

运行结果:

Tom _ William Rick_John_Alber@t

1.7、get_dummies()

 import pandas as pdimport numpy as nps = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print(s.str.get_dummies()

运行结果:

   William Rick   Alber@t   John   Tom
0             0         0      0     1
1             1         0      0     0
2             0         0      1     0
3             0         1      0     0

1.8、contains ()

 import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print(s.str.contains(' ')

运行结果:

 0  True1  True2  False3  Falsedtype: bool

1.9、replace(a,b)

 import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print sprint ("After replacing @ with $:")print(s.str.replace('@','))

运行结果:

 0 Tom1 William Rick2 John3 Alber@tdtype: objectAfter replacing @ with $:0 Tom1 William Rick2 John3 Alber$tdtype: object

1.10、repeat(value)

 import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print(s.str.repeat(2)

运行结果:

0   Tom            Tom
1   William Rick   William Rick
2                  JohnJohn
3                  Alber@tAlber@t
dtype: object

1.11、count(pattern)

import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print ("每个字符串中的“ m”数:")print(s.str.count('m')

运行结果:

 每个字符串中的“ m”数:0 11 12 03 0

1.12、startswith(pattern)

import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print ("Strings that start with 'T':")print(s.str. startswith ('T')

运行结果:

0  True1  False2  False3  Falsedtype: bool

1.13、endswith(pattern)

 import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print ("Strings that end with 't':")print(s.str.endswith('t')

运行结果:

 Strings that end with 't':0  False1  False2  False3  Truedtype: bool

1.14、 find(pattern)

 import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print(s.str.find('e')

运行结果:

 0 -11 -12 -13 3dtype: int64

“ -1”表示元素中没有匹配到。

1.15 、findall(pattern)

 import pandas as pds = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])print(s.str.findall('e')

运行结果:

 0 []1 []2 []3 [e]dtype: object

空列表([])表示元素中没有匹配到

1.16、swapcase()

 import pandas as pds = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t'])print(s.str.swapcase()

运行结果:

 0 tOM1 wILLIAM rICK2 jOHN3 aLBER@Tdtype: object

1.17、islower()

 import pandas as pds = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t'])print(s.str.islower()

运行结果:

0  False1  False2  False3  Falsedtype: bool

1.18、isupper()

 import pandas as pds = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t'])print(s.str.isupper()

运行结果:

0  False1  False2  False3  Falsedtype: bool

1.19、isnumeric()

 import pandas as pds = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t'])print(s.str.isnumeric()

运行结果:

 0  False1  False2  False3  Falsedtype: bool

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/18013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Talken - 语音命令系统

Talken - 语音命令系统 通过集成最先进的语音命令系统 Talken,释放游戏的全部潜力。 借助 Talken,您可以让玩家通过语音命令控制动作,从而重新定义游戏体验。 观看角色移动并对语音指令做出实时反应,模糊游戏与现实之间的界限。 主要特征: 🗣️ 语音驱动的游戏玩法:…

几个原则

(1) 成功是成功之母,失败不是成功之母。100分的试卷一模一样,不及格的试卷千奇百怪。向成功者学习。 不要研究失败,因为研究了一万个失败的原因,也不能找到一把成功的钥匙。 (2) 要定…

自由应用大本营?开源免费的Android应用商店:F-Droid Client

F-Droid Client:拥抱开源,守护隐私,让自由软件成为您生活的一部分- 精选真开源,释放新价值。 概览 F-Droid Client是一个开源的Android应用商店,它在GitHub上免费提供。这个项目致力于收集和展示各类自由及开源软件&a…

“星战之父”乔治・卢卡斯吐槽好莱坞“几乎没有原创思维”,AI 将“不可避免”用于电影制作

《星球大战》系列的创作者乔治・卢卡斯(George Lucas)在 1977 年奠定了电影制作传奇人物的地位,他对当今电影的状况及其发展方向有一些自己的看法。 他在 2024 年戛纳电影节上谈到了当前的电影行业。现年 80 岁的卢卡斯在接受法国媒体 Brut …

C# 读取 CSV 文件的方法汇总

文章目录 1. 使用System.IO命名空间中的类2. 处理标题行和指定列3. 使用CsvHelper库4. 高级功能和异常处理5. 使用 LINQ6. 总结 CSV(Comma-Separated Values,逗号分隔值)文件是一种简单的文本文件格式,用于存储表格数据。在C#中&a…

微服务架构-数据共享设计模式

微服务架构-数据共享设计模式 每个微服务拥有自己的数据库,可以独立地进行数据库架构设计、部署和维护。这种是属于常规的方式,不受其他微服务的影响,具有高度的自治性。 然而,在将单体应用拆分成微服务时,可能会遇到…

“盲人独立生活技能提升方案”:科技点亮希望之光

在追求平等与包容的社会进程中,盲人群体的独立生活能力提升成为了重要议题。随着科技的飞速发展,一款名为“蝙蝠避障”的辅助软件应运而生,以其独特的实时避障和拍照识别功能,为盲人在旅行乃至日常生活中开辟了新的可能。这不仅是…

Golang原生http实现中间件

Golang原生http实现中间件 中间件(middleware):常被用来做认证校验、审计等 大家常用的Iris、Gin等web框架,都包含了中间件逻辑。但有时我们引入该框架显得较为繁重,本文将介绍通过golang原生http来实现中间件操作。全…

《中国科技投资》是什么级别的期刊?是正规期刊吗?能评职称吗?

问题解答: 问:《中国科技投资》期刊什么级别? 答:国家级 问:《中国科技投资》期刊是核心期刊吗? 答:不是,是万方维普收录的正规期刊。 主管单位:中国信息协会 主办单位&#…

【云原生_K8S系列】认识 Kubernetes

在当今数字化转型的浪潮中,企业对于构建高效、灵活的软件架构有了更高的期望。而在这个迅速变化的环境中,容器化技术如雨后春笋般涌现,为解决传统部署和管理软件所带来的挑战提供了一种全新的解决方案。在众多容器编排工具中,Kube…

5G专网驻网失败分析(suci无效)

suci 5G终端第一次驻网时,注册消息Registartion request中携带的5GS mobile identity要携带suci类型的mobile identity。 注册消息协议规范见5G NAS 协议3gpp TS24.501 8.2.6 Registration request。 suci协议规范参见3gpp TS24.501 9.11.3.4 5GS mobile identity …

Kubernetes Service 之原理与 ClusterIP 和 NodePort 用法

Kubernetes Service 之原理与 ClusterIP 和 NodePort 用法 Service 定义 在 Kubernetes 中,由于Pod 是有生命周期的,如果 Pod 重启它的 IP 可能会发生变化以及升级的时候会重建 Pod,我们需要 Service 服务去动态的关联这些 Pod 的 IP 和端口…

防止浏览器缓存了静态的配置等文件(例如外部的config.js 等文件)

防止浏览器缓存了静态的配置文件 前言1、在script引入的时候添加随机数1.1、引入js文件1.2、引入css文件2、通过html文件的<meta>设置防止缓存3、使用HTTP响应头:前言 在实际开发中浏览器的缓存问题一直是一个很让人头疼的问题,尤其是我们打包时候防止的静态配置文件c…

界面组件DevExpress WPF v23.2新版亮点:富文本编辑器、电子表格组件升级

DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序&#xff0c;这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 DevExpress WPF控件日…

FreeRtos进阶——消息队列的操作逻辑

消息队列&#xff08;queue&#xff09; 在不同的任务之间&#xff0c;如果我们需要互相之间通信&#xff0c;使用全局变量进行通信&#xff0c;是一种不安全的通信的方式。为保证线程安全&#xff0c;我们需要引入消息队列的通信方式。 粗暴的消息队列 为保证线程的安全&am…

趣店集团golang一面要个20K,Channel什么情况下会出现死锁,有遇到过吗?

结束后面试官加了VX&#xff0c;并询问方便二面的时间&#xff0c;一直还没回复&#xff0c;拖着拖着给忘啦... 面试题 1、自我介绍 2、你在团队里头负责哪一块&#xff0c;这个物流开放平台流量多大 3、为什么今年3月份被从物流开放团队转到了finance财务部门&#xff0c;感…

安全术语 | 软件包purl详解:跨工具、数据库、API和语言之间可靠地识别和定位软件包

软件包URL&#xff08;purl&#xff0c;Package URL&#xff09;是一个URL字符串&#xff0c;用于在编程语言、包管理器、包约定、工具、API和数据库中以最通用和统一的方式识别和定位软件包。purl是对现有方法进行标准化的尝试&#xff0c;以可靠地识别和定位软件包。 有望取代…

集合的创建

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 Python中的集合同数学中的集合概念类似&#xff0c;也是用于保存不重复元素的。它有可变集合&#xff08;set&#xff09;和不可变集合&#xff08;f…

【iOS】——GCD再学习

文章目录 一、GCD的定义二、GCD 任务和队列1.任务2.队列 三、GCD 的使用1.创建队列2.创建任务3.队列任务 组合方式并发队列 同步执行异步执行 并发队列同步执行 串行队列异步执行 串行队列同步执行 主队列在主线程中调用 同步执行 主队列在其它线程中调用 同步执行 主队…

Android制作.9图

需求背景&#xff1a;android 启动图变形 开发语言&#xff1a;uni-app&#xff0c;uni-app官网 俗语曰&#xff1a;授人以鱼不如授人以渔 原创地址&#xff1a;Android制作.9图 语雀 一.工具 使用android studio&#xff0c;因为android studio已经集成.9.png制作工具&a…