【发布时间】:2020-04-13 19:55:48
【问题描述】:
我有一个 DataFrame,其中时间戳列包含混合类型。有些行以 Unix 时间戳(数字)报告时间,有些行以 iso 格式字符串报告时间,其余行以 Pandas 日期时间对象报告。
有没有办法让我选择时间戳列中包含非日期时间对象的所有行?我想运行 pd.to_datetime 将这些行的时间戳列转换为日期时间对象。
内置的select_dtypes 不符合我的要求。此库函数选择(不)具有特定类型的列,但我想选择给定列值是(不是)特定类型的行。
例子:
df = pd.DataFrame({
'time': [
Timestamp('2019-03-31 00:00:00-0400', tz='US/Eastern'),
'2019-01-31 12:00:00-0700',
1551000000
] })
目标:
def get_not_datetime_rows(df):
"""Output the last two rows."""
【问题讨论】:
-
你能提供一个最小的例子吗?
-
在上面添加了一个例子。