2 回答

TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊
這里不需要切片
batches = ['Lot 11', 'Lot 12', 'Lot 13', 'Lot 14']
這是精煉后的代碼
for i in range(len(df['BatchId'])):
for batch in batches:
if df["BatchId"][i]==batch:
df["BatchId"][i] = batches.index(batch)+1

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊
您也可以使用替換功能。
以下是如何執(zhí)行此操作的示例:
import pandas as pd
df = pd.DataFrame({'BatchID':['Lot 11','Lot 11','Lot 11','Think1','Lot 12',
'Lot 12','Lot 13','Lot 14','Lot 14','Lot 14']})
df = df.replace(r'Lot 1','',regex=True)
print(df)
結(jié)果如下:
請(qǐng)注意,其中一個(gè)值是Think1。所以它沒有被更換,因?yàn)樗环夏J健?/p>
BatchID
0 1
1 1
2 1
3 Think1
4 2
5 2
6 3
7 4
8 4
9 4
添加回答
舉報(bào)