我有一个数据框:
AATest=pd.DataFrame({'IDNUM': ['1234\t','234', 'Spreedsheet ', '2345\t', '1257 ']})
AATest
Run Code Online (Sandbox Code Playgroud)
我想将数据集清理成以下结果:
AATest=pd.DataFrame({'IDNUM': ['1234', '2345', '1257']})
AATest
Run Code Online (Sandbox Code Playgroud)
所以我写了一个函数,但结果它没有按我预期的那样工作,有人可以帮忙解决任何问题吗?非常感谢~
IDNUM
0 1234\t
2 Spreedsheet
3 2345\t
4 1257
def removedeb(data):
if (data['IDNUM'].str.len()<4).any():
data.drop(data[data['IDNUM'].str.len()<4].index, inplace=True)
elif (data['IDNUM'].str.len()>4).any():
data=data['IDNUM'].str.strip('\t').str.strip().to_frame()
elif (data['IDNUM'].str.contains('Spreedsheet')).any():
data.drop(data[data['IDNUM'].str.contains('Spreedsheet')].index, inplace=True)
else: return data
removedeb(AATest)
Run Code Online (Sandbox Code Playgroud)