我想知道是否有最佳方式来执行此类操作。我有一列文件路径,我们会调用 C Drive ,其中包含
之类的路径user\library\photos\item
这是数据框中的一列,其他列是 Dir [1],Dir [2],...,Dir [n],ITEM
我想通过" \"拆分 C Drive 中的单元格,以便将最后一个字符串附加到 ITEM 列,并且其他根据数量附加到以前的目录。
我目前的粗略动作是一些While循环,但在熊猫中有更好的方法吗?我是图书馆的新手。
还要提一下我知道Pandas不是为这种东西做的,我部分地使用它来学习图书馆。
干杯!
答案 0 :(得分:0)
您可以使用系列的split
属性访问的str
函数将您的驱动器路径拆分为组成目录。然后将生成的系列列表转换为DataFrame。它可以在一行中完成,如下所示:
dir_df = pd.DataFrame(df['C Drive'].str.split('\\').tolist())
dir_df.columns = ['Dir [{}]'.format(col) for col in dir_df.columns]
dir_df.columns[-1] = 'ITEM'
如果你想要'C Drive'
中的dir_df
列,也可以像这样添加它:
dir_df['C Drive'] = df['C Drive']
顺便说一下,你可能想要转义'\'。在读取数据时将其转换为“/”或“\”。否则,可能会发生奇怪的事情。