1
我想使用if語句來一列中的值更改,如果有長度大於X熊貓變化列值如果大於LEN
我的CSV數據更大..
ID Test_Case TC_NUM
14581,dialog_testcase_4000.0134_mvp_not_understood-inprogress.xml,4000.0134
14582,dialog_testcase_4000.0135_mvp_not_understood-inprogress.xml,4000.0135
14583,dialog_testcase_4000.0136_mvp_not_understood-inprogress.xml,4000.0136
14584,dialog_testcase_4000.0137_mvp_not_understood_6.2.0-inprogress.xml,4000.01376.2.0
14585,dialog_testcase_4000.0138_mvp_not_understood_6.2.0-inprogress.xml,4000.01386.2.0
我想要:
ID Test_Case TC_NUM
14581,dialog_testcase_4000.0134_mvp_not_understood-inprogress.xml,4000.0134
14582,dialog_testcase_4000.0135_mvp_not_understood-inprogress.xml,4000.0135
14583,dialog_testcase_4000.0136_mvp_not_understood-inprogress.xml,4000.0136
14584,dialog_testcase_4000.0137_mvp_not_understood_6.2.0-inprogress.xml,4000.0137
14585,dialog_testcase_4000.0138_mvp_not_understood_6.2.0-inprogress.xml,4000.0138
我目前的代碼是能夠提取一些正確的列,但如果有額外的數字在那裏混亂。
df1['TC_NUM'] = df1['TC_NUM'].str.replace(r'[^0-9.]+', '')
df1['TC_NUM'] = df1['TC_NUM'].str[:-1]
我的想法/嘗試使用if語句來糾正此問題。
if dfidtcnum(len['TC_NUM'] > 12):
print "True"
'DF1 [ 'TC_NUM'] = DF1 [ 'TC_NUM'] str.replace(R'\ [^ \] {1, 3} \。\ d * $','')'可以用於你在這裏顯示的內容,但這不是一個真正的通用解決方案。只要第二個和第三個點之間的數字在1到3個數字之間,它就可以工作。 – Abdou