Python 如何删除datetime.time并将其转换?
我有一个包含20000行和132列的数据集,但在处理数据时,我遇到了一个问题。 当我在其中一列(预期出院日期)中输入.dtype时,它会给我“dtype('O')”,但是,当我搜索某些行时,它会出现:Python 如何删除datetime.time并将其转换?,python,date,datetime,Python,Date,Datetime,我有一个包含20000行和132列的数据集,但在处理数据时,我遇到了一个问题。 当我在其中一列(预期出院日期)中输入.dtype时,它会给我“dtype('O')”,但是,当我搜索某些行时,它会出现: df['expected discharge date'][58] datetime.datetime(2017, 10, 24, 0, 0) df['expected discharge date'][18] datetime.time(0, 0) 但是,在其他一些行中,会显示: d
df['expected discharge date'][58]
datetime.datetime(2017, 10, 24, 0, 0)
df['expected discharge date'][18]
datetime.time(0, 0)
但是,在其他一些行中,会显示:
df['expected discharge date'][58]
datetime.datetime(2017, 10, 24, 0, 0)
df['expected discharge date'][18]
datetime.time(0, 0)
因此,我想删除所有具有“datetime.time”的行,能够将这些列转换为date数据类型,只需如下所示:
日期时间。日期(2017年10月24日)
您能帮助我吗?使用.apply()
测试特定类型的行:
import datetime
time_only = df['expected discharge date'].apply(lambda v: isinstance(v, datetime.time))
然后,您可以删除仅由time\u屏蔽的行
:
del df[time_only]
您可以将其合并为一条语句:
del df[df['expected discharge date'].apply(lambda v: isinstance(v, datetime.time))]