Python Pandas,将列的每一行中的文件路径替换为目录路径吗?

时间:2018-07-21 12:00:01

标签: python pandas

我已经尝试了几个小时,以找到有人提出类似的查询,但似乎没有一个人完全满足需要!

我有一个带有名为['File_Path']的列的数据框。此列包含文件路径,例如

/folder1/folder2/folder3/IMG_444.jpg 
/folder1/folder2/folder3/IMG_445.jpg
/folder1/folder2/folder3/folder4

我只需要目录路径,因此'IMG_444.JPG''IMG_445.jpg'将从各自的字符串中省略。

我尝试过:

df['File_Path'] = df['File_Path'].apply(lambda x: x.replace(x, os.path.dirname(x)))  

但这会打印空白。我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

df.applyos.path.dirname一起使用

例如:

import os
import pandas as pd
df = pd.DataFrame({"Path": ['/folder1/folder2/folder3/IMG_444.jpg ', '/folder1/folder2/folder3/IMG_445.jpg', '/folder1/folder2/folder3/folder4']})
df["Path"] = df["Path"].apply(os.path.dirname)
print(df)

输出:

                       Path
0  /folder1/folder2/folder3
1  /folder1/folder2/folder3
2  /folder1/folder2/folder3