Python拆分列中文和 字符
需求描述:我们日常实际的工作中经常需要把一列数据按中文和 数字或者字母单独拆分出来
导入所需的库:
import pandas as pd
定义函数 extract_characters,该函数接受三个参数:file_path(Excel文件路径)、sheet_name(工作表名称)和 column_name(列名)。
def extract_characters(file_path, sheet_name, column_name):
读取Excel文件并将其存储到DataFrame中:
df = pd.read_excel(file_path, sheet_name=sheet_name)
创建两个新的列 '中文' 和 '其他字符',并将它们添加到DataFrame中:
df['中文'] = ''
df['其他字符'] = ''
遍历DataFrame的每一行数据:
for index, row in df.iterrows():
获取指定列的值,并将其转换为字符串:
text = str(row[column_name])
初始化两个空字符串变量 chinese 和 other,用于存储中文字符和其他字符:
chinese = ''
other = ''
遍历每个字符:
for char in text:
判断当前字符是否为中文字符(Unicode范围为\u4e00到\u9fff):
if '\u4e00' <= char <= '\u9fff':
如果是中文字符,则将其添加到 chinese 字符串中:
chinese += char
如果不是中文字符,则将其添加到 other 字符串中:
other += char
将中文字符集合添加到新的 '中文' 列中:
df.at[index, '中文'] = chinese
将其他字符集合添加到新的 '其他字符' 列中:
df.at[index, '其他字符'] = other
返回处理后的DataFrame对象:
return df
定义测试示例的文件路径、工作表名称和列名:
file_path = r'测试.xlsx'
sheet_name = 'Sheet1'
column_name = '店铺销售sku'
调用 extract_characters 函数,并将结果存储在 result_df 中:
result_df = extract_characters(file_path, sheet_name, column_name)
将处理后的DataFrame保存为Excel文件:
result_df.to_excel('result.xlsx', index=False)
完整代码:
Python拆分列中文和 字符的更多相关文章
- Excel 中如何快速统计一列中相同字符的个数(函数法)
https://jingyan.baidu.com/article/6d704a132ea17328da51ca78.html 通过excel快速统计一列中相同字符的个数,如果很少,你可以一个一个数. ...
- python 统计字符串中指定字符出现次数的方法
python 统计字符串中指定字符出现次数的方法: strs = "They look good and stick good!" count_set = ['look','goo ...
- ArcMap - 使用python更新列中的值
概述:在外文网上,很多人都问在ArcMap中如何通过SQL修改属性字段的值,我见回答的人都说通过"Field Calculator",貌似不能直接通过SQL语句. 虽然学gis开发 ...
- bash python获取文本中每个字符出现的次数
bash: grep -o . myfile | sort |uniq -c python: 使用collections模块 import pprint import collections f = ...
- python在字符串中查找字符
两类函数: find(),rfind() index(),rindex() 找到了都返回下标. find找不到返回-1,index找不到抛出ValueError. 带r的表示从右向左找. 都可以使用第 ...
- python去掉字符串中重复字符的方法
If order does not matter, you can use foo = "mppmt" "".join(set(foo)) set() ...
- Pandas: 如何将一列中的文本拆分为多行? | Python
Pandas: 如何将一列中的文本拆分为多行? 在数据处理过程中,经常会遇到以下类型的数据: 在同一列中,本该分别填入多行中的数据,被填在一行里了,然而在分析的时候,需要拆分成为多行. 在上图中,列名 ...
- 拆分Sql列中内容的拆分
拆分Sql列中内容的拆分. /*按照符号分割字符串*/ create function [dbo].[m_split](@c varchar(2000),@split varchar(2)) retu ...
- 《Python CookBook2》 第一章 文本 - 检查字符串中是否包含某字符集合中的字符 && 简化字符串的translate方法的使用
检查字符串中是否包含某字符集合中的字符 任务: 检查字符串中是否出现了某个字符集合中的字符 解决方案: 方案一: import itertools def containAny(seq,aset): ...
- SQL判断某列中是否包含中文字符或者英文字符
SQL判断某列中是否包含中文字符或者英文字符 [sql] select * from 表名 where 某列 like '%[吖-座]%' select * from 表名 where ...
随机推荐
- Parallel 与 ConcurrentBag<T> 这对儿黄金搭档
〇.前言 日常开发中经常会遇到数据统计,特别是关于报表的项目.数据处理的效率和准确度当然是首要关注点. 本文主要介绍,如何通过 Parallel 来并行处理数据,并组合 ConcurrentBag&l ...
- 统一观测丨使用 Prometheus 监控 Cassandra 数据库最佳实践
作者:元格 本篇内容主要包括四部分:Cassandra 概览介绍.常见关键指标解读.常见告警规则解读.如何通过 Prometheus 建立相应监控体系. Cassandra 简介 Cassandra ...
- 批量获取FreeSWITCH所有分机号及其密码
前言 有次项目上需要获取所有FreeSWITCH注册分机的分机号和密码,就用python写了个小脚本来获取. 可以先把freeswitch/conf/directory/default/目录下的所有x ...
- CentOS安装ffmpeg并转码视频为mp4
前言 现需要将一批avi格式的视频转码为mp4,以下为操作步骤.系统版本为CentOS 7. 如果不安装x264,转码后只有声音,没有视频. 编译安装nasm wget https://www.nas ...
- Docker下elasticsearch8部署、扩容、基本操作实战(含kibana)
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇记录了用docker搭建ElasticS ...
- Android13深入了解 Android 小窗口模式和窗口类型
Android13深入了解 Android 小窗口模式和窗口类型 小窗模式,作为一种在移动设备上的多任务处理方式,为用户带来了便捷和高效的体验,尤其在一些特定场景下,其价值愈发凸显.以下是为什么需要小 ...
- CodeForces 1343D Constant Palindrome Sum
题意 多组样例 给一个长度为\(n\)(\(n\)一定为偶数)的数组\(a[]\),给一个正整数\(k\),保证数组内元素为小于等于\(k\)的正整数,你可以每次将数组的一个元素变为小于等于\(k\) ...
- MapReduce核心概念及架构
MapReduce简介 MapReduce常用于对大规模数据集(大于1TB)的并行运算,或对大数据进行加工.挖掘和优化等处理. MapReduce将并行计算过程高度抽象到了两个函数map和reduce ...
- c++中的数论知识
写在开头:word的公式打不上来,只能截图了 一.组合数学 (1) 加法定理与乘法原理 加法原理:做一件事情,完成它可以有n类办法,在第一类办法中有m1种不同的方法,在第二类办法中有m2种不同的方法, ...
- KRPano插件一键解密大师 支持最新版KRPano XML/JS解密 ,支持分析下载静态/动态网站资源
KRPano插件一键解密大师,可以一键解密KRPano的XML/JS插件,并可以分析下载静态和动态网站的所有资源.软件下载安装即可使用,解密仅需鼠标一键点击即可,无需配置任何开发环境,方便全景开发人员 ...