groupBy过滤列

A.布洛姆

我们有一个包含天气数据的数据框。
datetime--value

01.01.2010 - 20  
02.01.2010 - 22

我们现在想按分组
我们当前的代码是grouped = by(dataFrame, :datetime, df -> nrow(df))我们想要类似grouped = by(dataFrame, Date.Year(:datetime), df -> nrow(df))

有人知道在分组之前如何调用函数到列吗?

BogumiłKamiński

当前,您无法执行此操作,必须先创建一个新列。原因是分组列然后必须出现在GroupedDataFrame创建的对象中groupby(因此必须实现)。

因此,您应该执行以下操作(我知道您想从分组中删除一个月-对吗?):

dataFrame.dy = Date.Year(dataFrame.datetime)
dataFrame.dd = Date.Day(dataFrame.datetime)
grouped = by(dataFrame, [:dy, :dd], :datetime, nrow)

现在,向您展示为什么需要这样做的原因,请致电:

groupby(dataFrame, [:dy, :dd])

并且您将看到通过索引此调用的结果而在中产生:dy和中的:ddSubDataFrame,因此我们需要实现它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章