我有一个名为FileName
的pandas数据帧列,其中包含字符串形式的文件名。文件名中可以包含点('.'). 例如,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)
未获得预期的输出结果。
rsplit
——df.FileName.str.rsplit('.', 1).str[-1]
...这样只从右侧分割一次,因此应该更有效率。 - cs95