首页 > 解决方案 > 如何用 1 和 0 替换时间戳?

问题描述

我想在大型数据集上用 1 替换注册时间日志,用 0 替换空单元格,下面是一个示例:

data = [['tom', '10', "2014-02-05 21:24:44 UTC"], ['nick', '',''], ['juli', 14, '2014-02-15 21:55:43 UTC']]

BD = pd.DataFrame(data, columns = ['Name', 'Age', 'Enrolled_at'])

我尝试了以下代码,但它们用于替换某个值,并且在我的日期集中,时间戳不是唯一的。

1

BD['enrolled_at'].replace('', "1", inplace=True)
BD.head()

2

BD.loc[(BD['enrolled_at'] > 1990)] = 1

3

BD['enrolled_at'].replace("$20$", "1", regex=True, inplace=True)
BD

.

e现状

目前的情况

.

预期结果

预期结果

标签: pythonpandasnumpy

解决方案


BD['Enrolled_at'] = pd.to_datetime(BD['Enrolled_at'])

BD['Enrolled_at'] = np.where(BD['Enrolled_at'] > '1990-01-01', 1, 0)

您可以将 1990 日期设置为数据中日期的最小值


推荐阅读