gpt4 book ai didi

python - 如何从路径字符串的 DataFrame 列中提取基本路径

转载 作者:行者123 更新时间:2023-11-28 21:53:52 26 4
gpt4 key购买 nike

有几个关于字符串操作的问题,但我找不到允许我执行以下操作的答案——我认为这应该很简单......

我有一个 DataFrame,其中包含一个包含文件名和路径的列

以下生成一个具有代表性的 DataFrame 示例:

df = pd.DataFrame({
'root': {'1': 'C:\\folder1\\folder2\\folder3\\folder4\\filename.csv'}
})
                                              root
1 C:\folder1\folder2\folder3\folder4\filename.csv

我只想以字符串的“文件名”部分结束。行数多,路径不固定,不能用str.replace

我可以像这样去掉最右边的“.csv”部分:

df['root'] = df['root'].str.rstrip('.csv') 
                                          root
1 C:\folder1\folder2\folder3\folder4\filename

但是我无法使用我所阅读的任何方法来删除字符串左侧的路径部分。

鉴于路径的前面元素可以在记录之间更改,我如何才能只返回此路径(字符串)的“文件名”部分?

最佳答案

您可以使用 os.path 中的实用程序为了使这更容易,即 splitextbasename:

>>> import os
>>> df["root"].apply(lambda x: os.path.splitext(os.path.basename(x))[0])
0 filename
Name: root, dtype: object

附言:rstrip并不像您认为的那样工作——它会删除那些字符,而不是那个子字符串。例如:

>>> "a11_vsc.csv".rstrip(".csv")
'a11_'

关于python - 如何从路径字符串的 DataFrame 列中提取基本路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25344273/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com