删除具有双时间戳的行,这些行在数据中具有 NaN
Remove rows with double timestamps, which have NaN in data
我有一个带有 pandas 日期时间的 pandas 数据框(我用 pandas.to_datetime 创建了那个日期时间)和一个变量值:
datetime value
2018-10-01 00:00:00 231
2018-10-01 00:01:00 233
2018-10-01 00:01:00 NaN
2018-10-01 00:02:00 220
我想删除带有双时间戳和 NaN 的行,我尝试了几种可能性,例如 pd.Series(df['datetime']).duplicated(keep='first')
但它并不总是第一个,也不是最后一个。
您可以使用 &
条件检查 df['datetime']
列是否为 duplicated
,该条件检查 df['value']
是否为 nan
df[~(df['datetime'].duplicated(keep=False) & df['value'].isna())]
我有一个带有 pandas 日期时间的 pandas 数据框(我用 pandas.to_datetime 创建了那个日期时间)和一个变量值:
datetime value
2018-10-01 00:00:00 231
2018-10-01 00:01:00 233
2018-10-01 00:01:00 NaN
2018-10-01 00:02:00 220
我想删除带有双时间戳和 NaN 的行,我尝试了几种可能性,例如 pd.Series(df['datetime']).duplicated(keep='first')
但它并不总是第一个,也不是最后一个。
您可以使用 &
条件检查 df['datetime']
列是否为 duplicated
,该条件检查 df['value']
是否为 nan
df[~(df['datetime'].duplicated(keep=False) & df['value'].isna())]