我想将changesize
标准化为以下代码,在我看来,我的代码没有问题。为什么这给我带来了
summarise_impl中的错误(.data,dots):期望一个值
str(pricechange_0.5_2)
Classes ‘tbl_df’, ‘tbl’ and 'data.frame':1907600 obs. of 13 variables:
$ url : chr "http://item.yhd.com/item/1242267"
$ time : chr "2016-01-02" "2016-01-02" "2016-01-02" "2016-01-02" ...
$ changPrice : num 0.997 1 1 1 1 ...
$ classify : Factor w/ 251 levels "","Clothing"....
$ changesize : num -0.334 0 0 0 0 ...
$ abs_changesize: num 0.334 0 0 0 0 ...
library(dplyr)
by_url <- group_by(pricechange_0.5_2,url)
url_datad <- summarise(by_url,url_sd_chasize=(changesize -
mean(changesize))/sd(changesize))
这是我数据的示例。
A tibble: 10 × 3
url hangesize abs_changesize
<chr> <dbl> <dbl>
http://item.yhd.com/item/1242267 -0.3343999 0.3343999
http://item.jd.com/418657.html 0.0000000 0.0000000
...
其他方法可以将changesize
作为url
?
这是一个选项:
url_unique <- unique(pricechange_0.5_2$url)
by_url <- list()
for(i in 1:length(url_unique)){
by_url[[i]] <- filter(pricechange_0.5_2, url == url_unique[i])
by_url[[i]] <- scale(by_url[[i]])
}
by_url <- do.call("rbind", by_url)
这将扩展您的数据中的所有值。