我们有一个包含天气数据的数据框。
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))
有人在分组之前知道如何调用函数吗?
答案 0 :(得分:2)
当前,您无法执行此操作,必须先创建一个新列。原因是分组列然后必须出现在maxDate: moment(),
minDate: moment().subtract(1, "days"),
创建的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])
的{{1}}和:dy
列是通过索引此调用的结果而产生的,因此我们需要具体化它们。