Ben source()
onun aynı dizinde farklı bir dosya içeren bir dosya muktedir istiyorum ama bu dosyayı çalıştırmadan önce R-isteminden çalışma dizinini ayarlamak zorunda kalmak istemiyoruz:Geçerli dizinin R'deki konumunu aynı dizinden dosya içerecek şekilde belirleme?
> getwd()
[1] "/Users/myser"
> source("/Users/myuser/workspace/myproject/myfile.r")
İç/Kullanıcılar/myuser/workspace/myproject, myfile.r ve benim-utils.r olacaktır. myfile.r, içinden source('my-utils.r')
'u arar.
Diğer programlama dilleri geçerli dosyanın yolunu belirleyebilir. R benzer bir şey var mı? Örnek: Dosya kaynak yaparken
cur_dir <- sys.get_current_file_path()
source(file.path(cur_dir, "my-utils.r"))
chdir
seçenek doğru ve kaynak dosya parametresine tam yol olduğunu ayarlanır
30 saniyemi atıyor ... güzel cevap. –
@Apprentice - fonksiyonumun adı muhtemelen kötü seçilmişti. Demek istediğim, bu Python kodu gibi bir şeydi: os.path.realpath (\ _ \ _ dosya \ _ \ _) –
Bu kod/çözümle ilgili sorun, o çağrının işlevselliğini "kaynağa" bağlı olarak ona bağlamasıdır. Bu özel dizin. Buna bağlı olmayan bir çözümün olması, dolan'ın python'dan ilham alan sözde örneğiyle ateş ettiği yaklaşımla başarılabilir. eğer bir şey eksik olsam beni düzelt. – metasoarous