Как решить ValueError: Длина значений не совпадает с длиной индекса при использовании re.findall для извлечения информации - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь использовать re.findall для извлечения некоторой информации из очень длинной строки. Однако я имел ValueError: Длина значений не соответствует длине индекса. Я не уверен, что я должен исправить, чтобы это заявление работало. Спасибо, если кто-нибудь может дать мне указатель.

df['Part Number']=re.findall(r"^\D{3}\d{4}\D{2}\d{2}\w",str(df["Path"]))

Пример строки выглядит следующим образом: V:\DB\CAPGrind\BEFORE\8_INCHES\WG11_5950302.1_5950302.1_A_314696_SAVE_2019_12_02.csv

path=r'V:\DB\CAPGrind\BEFORE\8_INCHES'

files=glob.glob(path+"/*.csv")

df=None 

    for i, f in enumerate (files) :
        if i==0:
            df= np.transpose(pd.read_csv(f,delimiter="|",index_col=False))
                df['Path'] =f
                df['Machine No']=re.findall("WG-11",str(df["Path"]))
                df['Process']= re.findall("CAPGrind",str(df["Path"]))

            # Not Working. Will return ValueError: Length of values does not match length of index when running. The regular expression should be correct.
            df['Part Number']=re.findall(r'"^\D{3}\d{4}\D{2}\d{2}\w",str(df["Path"]))
...