在DataFrame中应用os.path.join方法

问题描述 投票:0回答:2

我有一个具有三列列的数据框df:['名称','WD','文件']。与“名称”中每个名称关联的文件在“ WD”列中作为其工作目录,在“文件”列中作为文件名。

My df

我想使用os.path.join方法连接'WD'列和'File'列,以使'File'列显示完整路径。

我尝试了以下脚本,它可以正常工作,但是我想知道是否有一种更好的方法而不使用for循环:

对于df.index中的i:df ['File'] [i] = os.path.join(df ['WD'] [i],df ['File'] [i])

python pandas os.path
2个回答
0
投票

一个简单的解决方案是使用os.sep而不是os.path.join()

>>> df["Path"] = df["WD"] + os.sep + df["File"]

0
投票

first answer非常好,而且可读性最强,但仅出于完整性和可能不同的用例的考虑,这里还有两个选项:

  1. 使用cat(并置),熊猫的许多string functions之一:

    df['WD'].str.cat(df['File'], sep=os.sep)
    
  2. [apply any函数用于行或列:

    apply
© www.soinside.com 2019 - 2024. All rights reserved.