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

比如我们有如下的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']
"""

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

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

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勤奋的大熊猫

你的鼓励将是我写作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值