从列中提取所有时间元素

时间:2019-05-08 22:01:45

标签: python pandas eda

我有一个数据集,其中包含一个名为['STime']的列,我想使用它创建许多包含每个时间元素(年,月,日等)的列。列值的格式为2016-04-16 10:12:41。我尝试使用以下方法分别创建年份列:

 data['SYear'] = data['SDate'].year

它给了我一个错误:AttributeError:'Series'对象没有属性'year'

我该如何解决?

1 个答案:

答案 0 :(得分:0)

data['SDate']是一个系列,该系列没有属性year。但是,您可以通过函数映射序列并将结果保存在新列中,例如:

data['SYear'] = data['SDate'].map(lambda d: d.year)

这将通过lambda函数map SDate列的每个值,并生成一个新的Pandas系列,并将其保存在新列中。