首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Pandas中按分隔符拆分列的值,而不丢失分隔符

在Pandas中,可以使用str.split()方法按照指定的分隔符拆分列的值,同时保留分隔符。

具体使用方法如下:

代码语言:txt
复制
import pandas as pd

# 创建示例数据
data = {'col1': ['A|B|C', 'D|E|F', 'G|H|I']}
df = pd.DataFrame(data)

# 按分隔符拆分列的值
df['col1'] = df['col1'].str.split('|', expand=True)

print(df)

输出结果:

代码语言:txt
复制
  col1
0    A
1    D
2    G

在上述代码中,我们首先导入了pandas库,并创建了一个包含一个列的示例数据。然后,我们使用str.split()方法按照竖线(|)作为分隔符拆分了col1列的值,并通过expand=True参数将拆分后的值扩展为多列。最后,我们将拆分后的值赋值回原来的col1列。

这样,我们就成功地按分隔符拆分了列的值,并保留了分隔符。

在Pandas中,还有其他一些相关的方法可以用于处理字符串数据,例如str.contains()用于判断字符串是否包含某个子串,str.replace()用于替换字符串中的子串,str.extract()用于提取符合指定模式的子串等。

如果你想了解更多关于Pandas的用法和功能,可以参考腾讯云的相关产品文档:Pandas 数据分析库

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

不支持连续分隔符当作一个处理?这个方法很多人没想到!|PQ实战

在做数据分列时候,如果碰到分隔符连续出现情况,比如用空格分列时候,有的地方连续几个空格,那到底是分成几个,还是只当做一个来处理?...- 1 - 数字到非数字转换拆分 显然,PQ里目前是没有直接设置相应选项处理方式,但是,我们可以换一个可能很多人没有想到思路:连续分隔符问题,跟数字(分隔符)到非数字(分隔符转换不是一个道理吗...具体如下: Step-01 重复列 Step-02 空格分列到行 Step-03 筛选去掉空内容 Step-04 分组统计行数 Step-05 统计最大 通过上面的操作,即可得到最大会分成几列。...- 2 - 行后筛选再分组加索引透视 Step-01 重复列 Step-02 空格分列到行 Step-03 筛选去掉空内容 Step-04 分组加索引 修改步骤公式如下: 展开得到添加好索引结果。...Step-05 用索引列以不要聚合方式透视拆分出来内容列 通过这种方式处理得到结果,可以随着要拆分内容变化动态适应结果。

17310

懂Excel就能轻松入门Python数据分析包pandas(七):分列

后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 今天从两个需求来看看数据分列功能,由于 Excel 自带功能比较弱,处理稍微复杂需求时会显得力不从心...本文结构: - 先看看简单分列 - 接着尝试分割扩展成行 - 最后是多列分割扩展成行 Excel 分列 Excel 对数据进行分列是非常简单。...如下: - 选中需要处理列 - 功能卡"数据","分列"按钮,即出现设置弹窗 - 选"分隔符号",点击下一步 - 左上部分,勾选"逗号",点击下一步 - 最后看到结果预览,没问题,直接点击完成...pandas 分列 pandas 对文本列进行分列,非常简单: - DataFrame.str.split() ,对文本列分列,第一参数指定分隔符 - 此外,参数 expand ,表示是否扩展成列...点选"拆分列",选"分隔符" - 这里大部分设置与 Excel 自带功能基本一致 - 点开"高级选项",点选"拆分为""行" - 功能区"开始",最左边点按钮"关闭并上载",即可把结果输出会

2.7K30
  • 懂Excel就能轻松入门Python数据分析包pandas(七):分列

    后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 今天从两个需求来看看数据分列功能,由于 Excel 自带功能比较弱,处理稍微复杂需求时会显得力不从心...本文结构: - 先看看简单分列 - 接着尝试分割扩展成行 - 最后是多列分割扩展成行 Excel 分列 Excel 对数据进行分列是非常简单。...pandas 分列 pandas 对文本列进行分列,非常简单: - DataFrame.str.split() ,对文本列分列,第一参数指定分隔符 - 此外,参数 expand ,表示是否扩展成列...点选"拆分列",选"分隔符" - 这里大部分设置与 Excel 自带功能基本一致 - 点开"高级选项",点选"拆分为""行" - 功能区"开始",最左边点按钮"关闭并上载",即可把结果输出会...,通常与 Series.str.split() 配合使用 下一节,将看看 Excel 举世闻名 vlookup 函数与 pandas 实现

    1.3K10

    看了这个例子,一辈子记住这个有趣函数,以后给内容配对就有思路了

    有朋友微信公众号后台发消息提问:怎么同时对两列合并文本进行逆透视?...看到这个问题,我一时竟无言以对…… 后来,群里看到数据是这样: 要求是这样子: 这不叫逆透视啊!什么是透视?什么是逆透视?...看图: 逆透视是多列(列名)都逐个放到行里变明细数据哦,上面想要结果列和原始数据列是一毛一样,只是要把列里面的内容拆分、配对展开…… 数据简化模拟如下:...1、不能拆分到行:因为要分别对两列内容进行拆分且找配对关系,先任何一列都会使配对关系丢失; 2、不能拆分到列:因为要拆分内容项数是固定。...) Step 04:第二次展开,提取值(因为配对好内容本身是要在同一行里分隔符按需要选择即可,后面拆分列时用,这里选择空格) Step 05:提取出来后,再按前面选择分隔符简单分列即可

    94740

    pandas.read_csv 详细介绍

    Pandas 教程》 修订,可作为 Pandas 入门进阶课程、Pandas 中文手册、用法大全,配有案例讲解和速查手册。...pandas.read_csv 接口用于读取 CSV 格式数据文件,由于它使用非常频繁,功能强大参数众多,所以在这里专门做详细介绍, 我们使用过程可以查阅。...列名 names 如果文件包含列名,那么应该设置 header=None,列名列表不允许有重复。...false_values 同上边 true_values 忽略分隔符后空白 skipinitialspace 忽略分隔符空白(默认为False,即忽略)。...# boolean, default True # 不自动识别空 pd.read_csv(data, keep_default_na=False) 丢失检查 na_filter 是否检查丢失(空字符串或者是空

    5.2K10

    Tidyverse|数据列分分合合,一分多,多合一

    比如基因列为ID需要转为常见symbol,基因列为symbol|ID就需要拆开了! excel分列可以解决,但是表达量数据较大,且excel容易产生“数据变形”。...二 合久可分-一列多列 使用separate函数, 将“指定”分隔符出现位置一列分成多列 2.1 默认,指定分隔符 data %>% separate(ID, into = c("Gene",...2.4,按照第几个字符 根据第几个字符拆分,适合数据规整,,, 可以用来将TCGAsampleID转为常见16位,需要先转置 data2 %>% select(Gene1,contains...列转为rownames t() %>% as.data.frame() %>% #数据转置,样本为行名 rownames_to_column(var="Sample") %>% #行名变为数据列...可参考:盘一盘Tidyverse| 筛行选列之select,玩转列操作 Tips: 1)数据分列可以先默认试一下,如2.1所示 2)使用R帮助,一定!

    3.7K20

    懂Excel就能轻松入门Python数据分析包pandas(九):复杂分列

    后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 本系列有一篇文章是关于 pandas 实现 Excel 分列功能,后来有小伙伴问我,怎么实现 Excel...案例1 某公司系统,有一 id 列,其中一部分是表示用户出生日期: - 怎么可以从中把日期提取出来呢 Excel 上可以用分列功能: - 结果会把数据分成3列 pandas ,我们不需要用...) 案例2 有些系统有时候不会太人性化,比如,id 日期起始位置是固定: - 日期起始位置固定,但如果从反向来说是固定 pandas 文本切片与 Python 切片一样,...因此我们可以这样处理: - 用负数表示从反方向计算截取范围 案例3 这是一个"抬杠案例": - 开始位置固定,并且,日期之间还有固定分隔符号 我们当然可以用正则表达式提取,这次我选用一种特别的方式完成...总结 - 分列只是提取内容一种方式,别一遇到分列,则只考虑 str.split - str.slice 或 str[] ,可以像 Python 切片一样做处理 - 用好 itertools.compress

    77840

    Pandas读取CSV,看这篇就够了

    05 列名 names用来指定列名称,它是一个类似列表序列,与数据一一对应。如果文件包含列名,那么应该设置header=None,列名列表不允许有重复。...Pandas不会自动将第一列作为索引,指定时会自动使用以0开始自然索引。...# 支持类似列表序列和可调用对象 # 读取部分列 pd.read_csv(data, usecols=[0,4,3]) # 索引只读取指定列,与顺序无关 pd.read_csv(data, usecols...# 布尔型,默认为True # 不自动识别空 pd.read_csv(data, keep_default_na=False) na_filter为是否检查丢失(空字符串或空)。...# 长度为1字符串 pd.read_csv(file, quotechar='"') csv模块,数据可能会用引号等字符包裹起来,quoting参数用来控制识别字段引号模式,它可以是Python

    73.7K811

    懂Excel就能轻松入门Python数据分析包pandas(九):复杂分列

    后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 前言 本系列有一篇文章是关于 pandas 实现 Excel 分列功能,后来有小伙伴问我,怎么实现 Excel...案例1 某公司系统,有一 id 列,其中一部分是表示用户出生日期: - 怎么可以从中把日期提取出来呢 Excel 上可以用分列功能: - 结果会把数据分成3列 pandas ,我们不需要用...) 案例2 有些系统有时候不会太人性化,比如,id 日期起始位置是固定: - 日期起始位置固定,但如果从反向来说是固定 pandas 文本切片与 Python 切片一样,...因此我们可以这样处理: - 用负数表示从反方向计算截取范围 案例3 这是一个"抬杠案例": - 开始位置固定,并且,日期之间还有固定分隔符号 我们当然可以用正则表达式提取,这次我选用一种特别的方式完成...总结 - 分列只是提取内容一种方式,别一遇到分列,则只考虑 str.split - str.slice 或 str[] ,可以像 Python 切片一样做处理 - 用好 itertools.compress

    57220

    无码实现​从非数字到数字拆分到行,是怎么做到?| Power Query技巧

    Power Query里,拆分列功能非常强大,除了分隔符、字符数等基本拆分功能外,还支持如从大写到小写或相反,从数据到非数字或相反等等特殊方式,相信很多朋友也都使用过: 其中,分隔符拆分,有一个比...但是,几个特别的拆分功能,如从数据到非数据,却没有拆分到行设置。 那么,如果要实现像下面这样,拆分到行,该怎么办呢? 实际上,如果我们理解了Power Query工作原理,要实现起来并不难。...Step-02 分隔符分列 虽然我们最后要按“从数字到非数字”进行拆分,但是,我们要借助分隔符可以拆分到行方法: 在按分隔符拆分中选择拆分为“行”: 此时,我们通过观察可以发现,生成步骤...,其实是通过一个splitter函数来实现拆分“到行”是通过Table.ExpandListColumn函数进行扩展得到: 所以,如果我们改变了其中Splitter参数,就能实现不同方式拆分到行功能...,其中也带了Splitter参数: 这样,我们可以选择这个Splitter参数,并复制: Step-04 替换前一步骤“分隔符分列Splitter参数 回到“分隔符分列步骤,粘贴替换掉原来分隔符拆分

    1.1K10

    Power Query技巧:更强大拆分

    标签:Power Query Excel,拆分是一项常见任务,Excel分列”功能只能将单列文本拆分成多列。...最简单是使用“快速填充”。单元格C1输入B1数字1,然后单击功能区“数据”选项卡“数据工具”组“快速填充”命令,结果如下图2所示。...图4 5.单击Power Query编辑器“主页”功能区“拆分列——分隔符”命令,如下图5所示。...图5 6.分隔符分列,“选择或输入分隔符”为“空格”,“拆分位置”为“最右侧分隔符”,如下图6所示。 图6 7.单击“确定”,结果如下图7所示。...Power Query编辑器,选择要拆分列。然后,单击“拆分列——分隔符”。分隔符分列,进行如下图8所示设置 图8 结果如下图9所示。 图9

    2.1K50

    单列文本拆分为多列,Python可以自动化

    标签:Python与Excel,pandas Excel,我们经常会遇到要将文本拆分。Excel文本拆分为列,可以使用公式、“分列”功能或Power Query来实现。...虽然Excel这样做是可以,但在Python这样做从来都不是正确。上述操作:创建一个公式然后下拉,对于编程语言来说,被称为“循环”。...Python,矢量化操作是处理数据标准方法,因为它比循环快数百倍。后续我们会讨论为什么它要快得多。...一旦我们将Excel表加载到pandas,整个表将成为pandas数据框架,“出生日期”列将成为pandas系列。因为我们不能循环,所以需要一种方法来访问该系列字符串元素。...让我们“姓名”列尝试一下,以获得名字和姓氏。 图7 拆分是成功,但是当我们检查数据类型时,它似乎是一个pandas系列,每行是包含两个单词列表。

    7.1K10

    Power Query 真经 - 第 7 章 - 常用数据转换

    图 7-13 【分隔符分列】对话框 在这个对话框,有如下几件事需要注意。 Power Query 会扫描它认为是分隔符内容,并且大多数情况下,会得到正确结果。...但也可以利用【拆分列一个选项,一个步骤完成这一工作。 右击 “Days” 列,【拆分列】【分隔符】。...这一次,需要对【分隔符分列】选项进行更多控制,在这个对话框从上到下操作如下所示。 【分隔符】是换行符,这需要使用一个特殊字符代码来实现。...默认情况下,【分隔符分列】功能会将数据将分成几列。需要在这里重新选择默认选项,强制 Power Query 将数据拆分成行不是拆分成列。 【使用特殊字符进行拆分】选项被选中(由于换行存在)。...可以这样做,只是会丢失一个关键信息:厨师类型。原因是什么?该信息只包括列标题中,不在数据内容,如图 7-18 所示。

    7.4K31

    如何用Power Query处理Excel解决不了分列

    之前我们有聊到Excel中会有一些完成不了分列,这次我们来看下在Power Query如何进行。...分列数据方法比较 Power Query中大部分分割操作可以直接通过菜单进行,分列菜单主要有2个选择,一个是分隔符,另外一个是字符数。 ? 1. 通过换行符进行分隔 ? ?...换行符也是分隔符一种,可以通过换行符进行分隔,所以直接选择分隔符进入菜单。进入到菜单后,系统会自动辨认可能需要进行分隔,如果正确就不需要修改,如果不正确则可以手动删除后更改。 2....跳位进行分隔 操作栏分割,可以对分隔符进行3种处理,最左边,最右边,以及全部出现分隔符进行分割。 ? ? 4....分隔后行排序 Power Query,不仅可以分割后列进行,还可以行进行。 ? ?

    2K10

    excel数据分列技巧,早学早收工!!!

    不是三个参数挤在一个单元格 如果手动重新录入 工作量大可怕 (特别是数据有几千几万条记录时候) 这里如果掌握了分列技巧的话 分分钟搞定 以下是分列步骤: 首选选中需要分列数据 (如果数据记录特别多的话...,比如有好几千条,想要用鼠标拖动选区数据区域,估计也得下拉好几分钟,交给大家一个简便方法,先用鼠标选中数据第一行,然后Ctrl+shift+下方向键,无论数据有多少条记录,软件默认瞬间选中第一行到最后一行所有的数据区域...,数据必须是连续,中间不能有空行) 选择数据——分列 弹出菜单中选择分列依据 因为本例数据之间用*号间隔 所以选择分隔符号 下一步选择分割符号 菜单给出来了三种默认分隔符号(分号、逗号、空格...) 所以需要勾选其他——并在输入框输入“*” 继续下一步 这里设置数据格式 根据具体需要 特别要注意是 目标区域是存放分裂后数据位置 一定要从新定义一个空白区域 这里定义为$E$10 否则使用默认区域的话...分类后新数据会覆盖原来分列前数据 如果确定不需要保留之前数据的话 可以使用默认目标区域 这种分列方法可以处理数据有一个要求 所有的分隔符号必须一致 如果同时出现两种或以上分隔符号的话 那么软件无法识别

    1.3K90

    使用Power Query处理数据(一)

    点击关注 迷路 使用Power Query处理数据(一) 什么是Power Query? PowerQuery是一个微软创建基于Excel免费插件,可以Excel2010(及更高版本)使用。...Excel 2016及PowerBIDestop已经内置。 假如我们需要将下面数据处理成电影名称和电影类型一一对应形式。...2 选择列 右侧查询功能区双击工作表,进入编辑器界面。单击【选择列】-选中【电影名】和【电影类型】。 3 拆分列 单击【电影类型】-【拆分列】-【分隔符】-【每次出现分隔符】。...4 逆透视 单击【电影名】-【转换】-【逆透视列】-【逆透视其他列】,然后删除对我们没有利用价值列【属性】,修改列【名称为【电影类型】,点击【文件】-【关闭并上载】,完成啦~ 5 小结 Power...掌握Power Query可以让我们工作效率得到大幅度提高! 点它,分享点赞在看都在这里

    1.5K20

    python数据分析——详解python读取数据相关操作

    利用pandas读取 一般在做数据分析时最常接触就是逗号分隔(Comma-Separated Values,CSV,有时也称为字符分隔,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据...大多数情况下读csv文件用pandas就可以搞定。...=None就可以,sep主要是用来分列,sep='\t'意思是使用\t作为分隔符。...read_csv()还有一个参数是 delimeter, 作用与sep相同,只不过delitemer默认为None,不是英文逗号 ‘,’ 如果是读取以txt文件提供数据,只需将pd.read_csv...#关闭文件 好了,以上就是python读取数据一些常用方法,遇到时候肯定是首先选择pandas,读出来就是dataframe十分方便数据切片、筛选、合并等操作。

    3K30

    这样数据实现动态拆分也这么容易!

    小勤:向下面这样数据怎么拆分成右边样子啊? 大海:如果只要干一次,那很简单,直接在Excel里先将左括号“(”替换为逗号“,”,将右括号替换为空,然后直接逗号拆分即可。...Step 01 添加索引列(用于保证操作后每行数据顺序) Step 02 分隔符逗号拆分到行 Step 03 继续分隔符左括号“(”拆分到行 Step 04 替换掉不需要右括号“)” Step...05 分组并修改步骤代码生成各组数据索引,用于做标题行 Step 06 展开数据后进行透视 小勤:两次分列到行操作很赞啊!...我原来想着一次分列到行,然后就直接分成多列,结果想做透视时候就懵了,正想着怎么能实现多列同时透视呢。 大海:PQ里透视只支持对一列()进行,不支持将多列同时透视到同一个标题(列名)下。...因为每列都必须有明确列名。 小勤:对。通过这个例子我知道像这种情况该怎么做了。

    67110

    数据之间空格数量不一样,怎么统一处理或分列

    小勤:这样数据怎么分列啊?数据间空格有的多有的少,好烦啊! 你看,如果直接分列的话,就出现很多空内容占到多个列里面去了。 大海:这种情况就不能直接用分隔符分列实现了。...我们先按分隔符分列到行: 这个时候,我们可以看到拆分步骤生成代码如下,而其中自动添加了将拆分后结果扩展到行操作,即Table.ExpandListColumn函数,这里我们直接扩展到行...因此,我们修改这个参数为一个自定义函数,将原内容空格拆分(Text.Split)后去掉多余空格(List.Select),然后再用空格合并(Text.Combine)起来: (x)=>Text.Combine...如下图所示: 小勤:这样归一化处理的确可以方便后面进行列拆分,但是,后面如果直接拆分的话,动态性还不是很好啊,因为拆分列功能里面会生成固定列名。...大海:的确这样,所以,如果用这种方法,后面再拆分列时候需要进一步处理动态列名问题。可以参考文章《PQ-M及函数:为什么加了新内容,拆分列不对了?》。

    87240
    领券