gpt4 book ai didi

python - 从 Pandas 文件名中提取文件扩展名

转载 作者:太空宇宙 更新时间:2023-11-03 13:28:58 24 4
gpt4 key购买 nike

我在 pandas dataframe 中有一列 FileName,它由包含格式文件名的字符串组成。文件名中可以​​包含点('.')。例如,a.b.c.d.txt 是一个 txt 文件。我只想让另一列 FileType 列仅包含文件扩展名。

示例数据框:

FileName

a.b.c.d.txt

j.k.l.exe

处理后:

FileName    FileType

a.b.c.d.txt txt

j.k.l.exe exe

我尝试了以下方法:

X['FileType'] = X.FileName.str.split(pat='.')

这帮助我拆分了 . 上的字符串。但是如何获取最后一个元素,即文件扩展名?

有点像

X['FileType'] = X.FileName.str.split(pat='.')[-1]

X['FileType'] = X.FileName.str.split(pat='.').pop(-1)

没有给出想要的输出。

最佳答案

选项 1
应用

df['FileType'] = df.FileName.apply(lambda x: x.split('.')[-1])

选项 2
使用 str 两次

df['FileType'] = df.FileName.str.split('.').str[-1]

选项 2b
使用rsplit(感谢@cᴏʟᴅsᴘᴇᴇᴅ)

df['FileType'] = df.FileName.str.rsplit('.', 1).str[-1]

所有结果:

      FileName FileType
0 a.b.c.d.txt txt
1 j.k.l.exe exe

Python 3.6.4, Pandas 0.22.0

关于python - 从 Pandas 文件名中提取文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50383022/

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