2016-11-14 19 views
6

Uyarı:: Bu, işletim sisteminizi askıya alabilir. dplyr den* _son boş son eki

*_join() sol veya sağ eklerinden biri boş (''), örn belirtildiğinde başarısız İnce aşağıdaki işler Oysa

inner_join(data.frame(x=1, y=2), 
      data.frame(x=1, y=3), 
      by='x', 
      suffix=c('', '.b')) 

:

merge(data.frame(x=1, y=2), 
     data.frame(x=1, y=3), 
     by='x', 
     suffixes=c('', '.b')) 

dplyr paket bilgileri:

inner_join(data.frame(x=1, y=2), 
      data.frame(x=1, y=3), 
      by='x', 
      suffix=c('.a', '.b')) 

arada, S3 jenerik merge() (baz) boş soneklerinin bir problemi yok

> packageVersion('dplyr') 
[1] ‘0.5.0’ 

R versiyonu bilgi:

> version 

platform  x86_64-w64-mingw32   
arch   x86_64      
os    mingw32      
system   x86_64, mingw32    
status          
major   3       
minor   3.0       
year   2016       
month   05       
day   03       
svn rev  70573      
language  R       
version.string R version 3.3.0 (2016-05-03) 
nickname  Supposedly Educational 
+0

Ah kullanmanın dplyr kullanılarak istenen etkiyi başarmak olacaktır. Bir satır örneğinizi denerken aslında R işlemimi askıya alır. Senin yerinde olsam bir hata rapor ederim. – thelatemail

+0

Hata! Ben orada düzenlenmiş, adil bir uyarı koyduğumu düşündüm. hata raporu iyi bir fikir, teşekkürler. – stephematician

+1

Şu anda burada takip ediliyor https://github.com/hadley/dplyr/issues/2228 – manotheshark

cevap

4

Bu hata rastladım bu eğlenceliydi. Aşağıdaki gerçekten çok kötü bir biri .... ekleri '' ve .b

library(dplyr) 
inner_join(data.frame(x=1, y=2), 
      data.frame(x=1, y=3), 
      by='x', 
      suffix=c('.a', '.b')) %>% 
    setNames(gsub('\\.a$', '', names(.))) 
İlgili konular