Soruma göre magrittr
%>%
numaralı paket operatörü operasyon sırasına göre geliyor mu?Boru hattı ile çalışma sırası
şuna bir sorun simmilar vardır:
set.seed(10)
df <- data.frame(a=rnorm(3),b=rnorm(3),c=rnorm(3))
df/rowSums(df) %>% round(.,3)
Bu aşağıdaki olmayan yuvarlatılmış rakamlar ile sonuçlanır:
a b c 1 -0.0121966 0.119878 0.8922125
Ben df/rowSums(df)
koymak gerekir yuvarlak rakamlar almak için parantez içinde.
- Üstellerinin
- Boru
- Çarpma ve bölme :
- Toplama ve çıkarma işlemi
I +
, -
, *
, /
ve ^
ile ve işlem sırasını bulunan sonuçlardan deneyler aşağıdaki gibidir
Bu doğru mu yoksa boru operatörü hakkında bilgi sahibi olmama yanlış bir şey mi var?
Unutmayın '' '' '' '' '' '' '' '' '' '' '' 'bir işlev, bir boru içinde' rowSums (df)%>% \ '/ \' (df,.)%>% Yuvarlak (3) 'olacağını düşünüyorum çünkü 'rowSums()' önce alınır, daha sonra '/'. Ya da daha basitçe, ve * magrittr * speak 'divide_by (df, rowSums (df))%>% round (3)' –
'df%>%"/"(rowSums (.))%>% Yuvarlak (3) –