Pandas 删除列值无效的行
我在pandas中有一个数据框,我想从中删除所有在特定列中没有有效日期类型值的行。例如,如果所考虑的列为“E” 如果初始数据帧为: 应该是这样的:Pandas 删除列值无效的行,pandas,date,Pandas,Date,我在pandas中有一个数据框,我想从中删除所有在特定列中没有有效日期类型值的行。例如,如果所考虑的列为“E” 如果初始数据帧为: 应该是这样的: 日期格式将始终为MM/DD/YY让我们尝试使用来指定日期时间 s = pd.to_datetime(df.E, format='%m/%d/%Y', errors='coerce') # above will return NaN when the format not match df = df[s.notna()] 我用正则表达式解决了这
日期格式将始终为MM/DD/YY让我们尝试使用
来指定日期时间
s = pd.to_datetime(df.E, format='%m/%d/%Y', errors='coerce')
# above will return NaN when the format not match
df = df[s.notna()]
我用正则表达式解决了这个问题:
Apply()
将函数应用于数据帧,并在check()
returnTrue
def check(column):
import re
r = re.compile('.*/.*/')
if r.match(column) is None:
return True
else:
return False
df.drop(df[df["E"].apply(check)].index, inplace=True)