返回

python——在一个DF中,如何将列表的最后两部分作为一个字符串进行条件输出?

发布时间:2022-04-19 11:31:29 468
# node.js

我正在通过熊猫对CSV进行一些修改。对于其中一种情况,我想使用解析URL到一个列表中,获取该列表的最后两项,并输出一个组合这两个元素的字符串。我想用一行代码来实现这一点,我可以在np中插入这些代码。在什么情况下。

例如,在csv中,我有一个url:;其他图片请参见skf/16645。TIF";。我想输出一个字符串;ININ000085013D_1664645。TIF";。到目前为止,我设法通过以下方式实现了部分目标:

from urllib.parse import parse

testurl = "https://img.hake.cc/other_net_images/other_images_skf/1664645.TIF"
print(urlparse(testurl).path[1:].split('/')[2:])

然而,我需要urlparse行以一种我可以推入np的格式提供字符串输出。where语句,如下图所示,其中x是上面的字符串。

import pandas
import numpy as np

svc_df = pandas.read_csv(r"\\fileloc\ServiceLines.txt", 
                              usecols=['Location', 'URLName', 'createdate'],
                              dtype={'Location':'string', 'URLName':'string'},
                              parse_dates=['createdate'])
# Create FieldNote column based on URLName
svc_df['FieldNote'] = np.where(svc_df['URLName'].str.contains('servicecards'), x, svc_df['URLName'].apply(lambda x: x[x.rfind('/')+1:]))

我也觉得我在这里的杂草中迷失了方向,有没有更简单的方法?我试图基本上基于URLName创建FieldNote列,其中使用文件名(在last/之后),除非URLName包含“servicecards”(只有那些有重复项的服务卡),在这种情况下,我需要子文件夹名+文件名。

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(1)
按点赞数排序
用户头像