0
我想用R中的過濾函數來計算移動平均值,但看起來這個函數由於與dplyr包衝突而不起作用。 我試過在應用dplyr之後應用庫「base」和「stats」,以便我期望過濾器函數以某種方式再次可用, 但仍顯示消息「There is no C_cfilter」並且不起作用。我想弄清楚如何解決這個問題。過濾功能不似乎和dplyr衝突
我想用R中的過濾函數來計算移動平均值,但看起來這個函數由於與dplyr包衝突而不起作用。 我試過在應用dplyr之後應用庫「base」和「stats」,以便我期望過濾器函數以某種方式再次可用, 但仍顯示消息「There is no C_cfilter」並且不起作用。我想弄清楚如何解決這個問題。過濾功能不似乎和dplyr衝突
我們需要使用::
,因爲它是由dplyr
filter
stats::filter
消息掩蓋,當我們加載dplyr
講述遮蔽函數
library(dplyr)
#Attaching package: ‘dplyr’
#The following objects are masked from ‘package:stats’:
#filter, lag
#The following objects are masked from ‘package:base’:
#intersect, setdiff, setequal, union
所以包,所有這些功能沒有致電說會有一些錯誤
filter(1:10, rep(1, 3))
錯誤UseMethod( 「filter_」):關於 'filter_' 應用於類的對象 「C( '整數', '數字')」
stats::filter(1:10, rep(1, 3))
#Time Series:
#Start = 1
#End = 10
#Frequency = 1
#[1] NA 6 9 12 15 18 21 24 27 NA
或不適用的方法會改變行爲
lag(1:10)
#[1] NA 1 2 3 4 5 6 7 8 9
stats::lag(1:10)
#[1] 1 2 3 4 5 6 7 8 9 10
#attr(,"tsp")
#[1] 0 9 1
或可能不會對特定class
但效果會在那裏等不同class
setdiff(data.frame(col1 = 1:5), data.frame(col1 = 1:3))
# col1
#1 4
#2 5
base::setdiff(data.frame(col1 = 1:5), data.frame(col1 = 1:3))
# col1
#1 1
#2 2
#3 3
#4 4
#5 5
你的答案是完美的多。非常感謝。 – HQMA
@HQMA感謝您的評論。你也可以勾選[here](http://stackoverflow.com/help/someone-answers) – akrun