我有一个从2016-01-01到2017-05-21的每日收入数据集。数据集包含Datum、languages和Opbrengst变量。
Datum lanuage Opbrengst
596 20160101 bg 254
923 20160101 bg-bg 434
1044 20160101 ca 115
1544 20160101 ca-es 238
2008 20160101 cs 251
....我想为group by Datum买Opbrengst。
我尝试过How to sum a variable by group?的方法
aggregate(Datum ~ Opbrengst, data=df, FUN="sum")或
tapply(df$Datum, df$Opbrengst, FUN=sum)结果变成
Opbrengst Datum
1 10 786304986
2 100 1048457710
3 1000 221796843
4 1000,01 20160628
5 1000,78 20170104这不是我想要的结果。我想要,每个日期的收入之和,。我想知道问题出在哪里?
发布于 2017-05-30 12:42:38
我们有两个问题。
1)分组变量在aggregate公式方法中的应用。分组变量放置在~的rhs,而兴趣变量Opbrengst放在lhs上。
aggregate(Opbrengst~Datum, df1, sum)2)列'Opbrengst‘为factor。它似乎具有,字符,并在阅读时生成factor类(如果我们没有在read.csv/read.table中指定stringsAsFactors = FALSE等)。一种选择是删除带有,的sub,转换为numeric,然后使用aggregate
df$Opbrengst <- as.numeric(gsub(",", "", df$Opbrengst))https://stackoverflow.com/questions/44262209
复制相似问题