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

news2024/11/18 0:27:25

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 pd
 import numpy as np
 s = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t', np.nan, '1234','SteveSmith'])
 print(s.str.len()

运行结果:

 0 3.0
 1 12.0
 2 4.0
 3 7.0
 4 NaN
 5 4.0
 6 10.0
 dtype: float64

1.4、strip()

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

运行结果:

0 Tom
 1 William Rick
 2 John
 3 Alber@t
 dtype: object
 After Stripping:
 0 Tom
 1 William Rick
 2 John
 3 Alber@t
 dtype: object

1.5、split(pattern)

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

运行结果:

 0 Tom
 1 William Rick
 2 John
 3 Alber@t
 dtype: object
 Split Pattern:
 0 [Tom, , , , , , , , , , ]
 1 [, , , , , William, Rick]
 2 [John]
 3 [Alber@t]
 dtype: object

1.6、cat(sep=pattern)

import pandas as pd
 import numpy as np
 s = 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 pd
 import numpy as np
 s = 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 pd
 s = pd.Series(['Tom ', ' William Rick', 'John', 'Alber@t'])
 print(s.str.contains(' ')

运行结果:

 0  True
 1  True
 2  False
 3  False
 dtype: bool

1.9、replace(a,b)

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

运行结果:

 0 Tom
 1 William Rick
 2 John
 3 Alber@t
 dtype: object
 After replacing @ with $:
 0 Tom
 1 William Rick
 2 John
 3 Alber$t
 dtype: object

1.10、repeat(value)

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

运行结果:

 每个字符串中的“ m”数:
 0 1
 1 1
 2 0
 3 0

1.12、startswith(pattern)

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

运行结果:

0  True
 1  False
 2  False
 3  False
 dtype: bool

1.13、endswith(pattern)

 import pandas as pd
 s = 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  False
 1  False
 2  False
 3  True
 dtype: bool

1.14、 find(pattern)

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

运行结果:

 0 -1
 1 -1
 2 -1
 3 3
 dtype: int64

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

1.15 、findall(pattern)

 import pandas as pd
 s = 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 pd
 s = pd.Series(['Tom', 'William Rick', 'John', 'Alber@t'])
 print(s.str.swapcase()

运行结果:

 0 tOM
 1 wILLIAM rICK
 2 jOHN
 3 aLBER@T
 dtype: object

1.17、islower()

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

运行结果:

0  False
 1  False
 2  False
 3  False
 dtype: bool

1.18、isupper()

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

运行结果:

0  False
 1  False
 2  False
 3  False
 dtype: bool

1.19、isnumeric()

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

运行结果:

 0  False
 1  False
 2  False
 3  False
 dtype: bool

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

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

相关文章

海信集团携纷享销客启动LTC数字化落地 推动ToB业务再升级

日前,海信集团携手连接型CRM纷享销客正式启动LTC(Leads to Cash)数字化平台实施落地项目。作为海信集团数字化的重要里程碑,该项目将通过统一规划、统一投资、统一平台、资源共享和数据赋能,构建ToB业务数字化经营管理…

System32文件夹千万不能删除,看完这篇你就知道为什么了

序言 C:\Windows\System32目录是Windows操作系统的关键部分,重要的系统文件存储在该目录中。网上的一些恶作剧者可能会告诉你删除它,但你不应该尝试去操作,如果你尝试的话,我们会告诉你会发生什么。 什么是System32文件夹 位于C:\Windows\System32的System32文件夹是所有…

【高阶数据结构】 B树 -- 详解

一、常见的搜索结构 适合做内查找: 以上结构适合用于数据量相对不是很大,能够一次性存放在内存中,进行数据查找的场景。如果数据量很大,比如有 100G 数据,无法一次放进内存中,那就只能放在磁盘上了。 如果…

【C++】数据结构:哈希桶

哈希桶(Hash Bucket)是哈希表(Hash Table)实现中的一种数据结构,用于解决哈希冲突问题。哈希表是一种非常高效的数据结构,它通过一个特定的函数(哈希函数)将输入数据(通常…

aws eks中cwagent收集性能日志的理解

参考资料 CloudWatch代理配置参考Prometheus的CloudWatch代理配置 本文旨在明确以下几个问题 eks的container insight addon包括哪些组件?分别起什么作用?eks的cwagent的指标获取具体包括那些部分?数据源是什么?eks的cwagent如…

【NumPy】全面解析NumPy的where函数:高效条件操作指南

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

5-26作业

网络聊天室 服务器&#xff1a; 1 #include <myhead.h>2 int main(int argc, const char *argv[])3 {4 if(argc!3)5 {6 printf("请输入IP和端口号\n");7 return -1;8 }9 int sfd socket(AF_INET, SOCK_DGRAM, 0);10 if(…

汇编:循环结构

16位汇编语言中的循环结构主要通过条件跳转指令&#xff08;如LOOP、JMP, JE, JNE, JG, JL, 等&#xff09;来实现&#xff0c;常见的循环类型包括for循环和while循环&#xff1b; Loop指令 LOOP指令的操作非常简单&#xff1a;它将CX寄存器的值减1&#xff0c;如果结果不为零…

代码随想录算法训练营day21|530.二叉搜索树的最小绝对值差、501.二叉搜索树中的众数、236.二叉树的最近公共祖先

二叉搜索树的最小绝对值差 递归法 首先需考虑这是一个二叉搜索树&#xff0c;在中序遍历后的结果为从小到大的一个序列&#xff0c;寻找二叉搜索树的最小绝对值差&#xff0c;只需比较一个节点与之后的差值即可。在遍历的过程中&#xff0c;我们需要一个节点保存前节点…

[Android]将私钥(.pk8)和公钥证书(.pem/.crt)合并成一个PKCS#12格式的密钥库文件

如下&#xff0c;我们有一个platform.pk8和platform.x509.pem。为了打包&#xff0c;需要将私钥&#xff08;.pk8&#xff09;和公钥证书&#xff08;可能是.pem或.crt文件&#xff09;合并成一个PKCS#12 格式的密钥库文件 1.准备你的私钥和证书文件 确保你有以下两个文件&…

【论文阅读】xLSTM: Extended Long Short-Term Memory

xLSTM: Extended Long Short-Term Memory 引用&#xff1a; Beck M, Pppel K, Spanring M, et al. xLSTM: Extended Long Short-Term Memory[J]. arXiv preprint arXiv:2405.04517, 2024. 论文链接&#xff1a; [2405.04517] xLSTM: Extended Long Short-Term Memory (arxiv.…

Nocobase快速上手 -第一个collection

本文记录Nocobase中如何创建collection&#xff0c;以及如何将collection展示到页面中&#xff0c;并且配置CRUD相应的操作. Collection 在NocoBase中&#xff0c;collection&#xff08;集合&#xff09;是用来组织和存储各种数据的容器&#xff0c;如订单、产品、用户、评论…

VMware中的虚拟机设置开启VT虚拟化

虚拟机系统关机打开虚拟机设置-----点击处理器----勾选虚拟化引擎---确定即可

【UML】-01-UML基本元素的介绍

1、UML的词汇表 &#xff08;1&#xff09;事物&#xff1b; &#xff08;2&#xff09;关系&#xff1b; &#xff08;3&#xff09;图。 事物是对模型中首要成分的抽象&#xff1b;关系把事物结合在一起&#xff1b;图聚集了相关的事物。 注&#xff1a;事物也称为元素 2…

Springboot项目——网页版本五子棋

网页五子棋&#xff1a;本项目简单实现了网页版本的五子棋对战功能&#xff0c;同时会根据用户的天梯分数来匹配&#xff0c;可供多位用户同时提供对战功能。大致可分为三个模块&#xff0c;用户模块&#xff0c;匹配模块&#xff0c;对战模块&#xff0c;下面重点介绍以下三个…

交叉熵损失函数计算过程(tensorflow)

交叉熵损失函数通常用于多类分类损失函数计算。计算公式如下&#xff1a; P为真实值&#xff0c;Q为预测值。 使用tensorflow计算 import tensorflow as tf import keras# 创建一个示例数据集 # 假设有3个样本&#xff0c;每个样本有4个特征&#xff0c;共2个类别 # 目标标签…

简爱的思维导图怎么做?从这三个角度

简爱的思维导图怎么做&#xff1f;《简爱》作为夏洛蒂勃朗特的代表作&#xff0c;不仅是一部经典的爱情小说&#xff0c;也是探索女性独立与自我成长的文学巨著。为了深入理解这部作品&#xff0c;制作思维导图是一种高效的学习和分析工具。以下是三种不同的角度来创建《简爱》…

excel数据丢失怎么办?表格文件恢复的3个方法

Excel作为一个常用的表格文件&#xff0c;我们在工作中经常都需要用到它。最令人崩溃的事就是有时候我们辛辛苦苦用Excel完成了工作&#xff0c;但是突然发现Excel数据丢失。这可怎么办呢&#xff1f;如何找回丢失的Excel数据&#xff1f;下面小编就分享几种恢复办法。 方法一&…

抖音 v27.8.0 内置增强模块,自动播放、无水印下载(可登录,助手增强版)

介绍 抖音应用作为全球领先的短视频平台&#xff0c;其内置功能允许用户将喜欢的内容保存至本地设备&#xff0c;但默认情况下&#xff0c;这些视频会带有抖音的水印。为了解决这一限制&#xff0c;该版本使用户能够直接保存不带水印的视频到手机中&#xff0c;无需使用任何第…

TikTok电商带货特训营,跟随时代潮流,跨境掘金(8节课)

课程内容&#xff1a; 1-先导课 2-一、店铺运营认知与思路 3-二、店铺风控注意事项 4-三、美区Tiktok前期工作-1店铺入驻模式 5-三、美区Tiktok前期工作-2指纹浏览器介绍 6-三、美区Tiktok前期工作-4绑定电话号码 7-三、美区Tiktok前期工作-5添加仓库地址 8-三、美区Ti…