我有一個數據幀列,其中包含表示路徑的字符串。我想將其中一些路徑用作另一列中的值。解析列值的數據幀字符串
字符串是類似於以下,並在標題爲'Image Location'
C:\Users\Chris H\Desktop\20161017HCT116\Day 4\D2\Image9.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 4\D6\Image7.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 4\D7\Image3.tif
...
C:\Users\Chris H\Desktop\20161017HCT116\Day 6\D2\Image7.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 6\D2\Image1.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 6\D2\Image6.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 6\D3\Image4.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 6\D3\Image9.tif
...
C:\Users\Chris H\Desktop\20161017HCT116\Day 8\D1\Image4.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 8\D1\Image9.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 8\D1\Image3.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 8\D2\Image7.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 8\D2\Image1.tif
C:\Users\Chris H\Desktop\20161017HCT116\Day 8\D2\Image6.tif
現在我正在做一個列如下:
df['Interval'] = df['Image Location'].str.split('\\').apply(lambda x: x[5])
df['Device'] = df['Image Location'].str.split('\\').apply(lambda x: x[6])
這顯然需要路徑不發生很大的變化因爲我正在計算\
的數量以找到間隔和設備值。
我想知道是否有更強大的方法來做到這一點。例如,也許找到一個模式,如Day #
和D#
任何想法,將不勝感激。
非常有趣的解決方案。 – agf1997