Pandas 提取单元格中的文字并进行切片处理

您所在的位置:网站首页 python提取特定字符串 Pandas 提取单元格中的文字并进行切片处理

Pandas 提取单元格中的文字并进行切片处理

2024-06-18 23:19| 来源: 网络整理| 查看: 265

比如我们有如下的Excel数据: 在这里插入图片描述 现在我们想要提取其中付款时间列中的内容,并且仅截取出发货的当天具体时间。我们可以使用.str.slice()来解决这一问题,代码如下:

import pandas as pd file = pd.read_excel(r"C:\Users\15025\Desktop\uncle\debug.xlsx") time = file["付款时间"].str.slice(11, 19) print(time) """ result: 0 23:57:14 1 23:47:16 2 23:47:15 3 23:43:14 4 23:40:30 5 23:28:40 6 23:28:44 7 23:25:42 8 23:23:57 9 23:22:11 10 23:21:47 Name: 付款时间, dtype: object """

可以看到,我们已经成功截取出了其中的时间信息。上述方法是比较pandas的写法。而我们还可以用另一种方法替代,代码如下:

import pandas as pd file = pd.read_excel(r"C:\Users\15025\Desktop\uncle\debug.xlsx") for i in range(len(file["付款时间"])): print(file["付款时间"][i][11:19]) """ result: 23:57:14 23:47:16 23:47:15 23:43:14 23:40:30 23:28:40 23:28:44 23:25:42 23:23:57 23:22:11 23:21:47 """

可以看到,我们也成功地获取到了我们想要的信息,但是我们使用了循环。虽然速度感觉也不慢,还需要大量数据测试才能说明两种方法的优劣性。目前推荐使用第一种pandas的内置方法。

那么如果我们想要对最后一行数据进行处理呢?可以使用如下代码:

import pandas as pd file = pd.read_excel(r"C:\Users\15025\Desktop\uncle\debug.xlsx") time = file.iloc[-1].tolist() time1 = file.values[-1] print(time) print(time1) """ ['SXDD202112212321341427301514', '2021-12-21 23:21:34', '2021-12-21 23:21:47', '2021122122001498451403927933', 'G202112212321334217301915'] ['SXDD202112212321341427301514' '2021-12-21 23:21:34' '2021-12-21 23:21:47' '2021122122001498451403927933' 'G202112212321334217301915'] """

可以看到我们成功地将最后一行的数据转化为了列表对象,接下来就可以正常的使用列表切片来获取我们需要的数据了。

码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3