我想列出目錄中文件的前綴列表。我也有相同的前綴,例如約45文件:R文件列表的前綴列表
AH#01, AH#02... AH#45
然後
BH#01, BH#02...
我試圖讓AH,BH ...名單(它們是.sp
文件)。
我被這個列表卡住了。然後有這個名單,我想申請的R腳本一個特定的文件名,爲AH
,然後BH
等
我想列出目錄中文件的前綴列表。我也有相同的前綴,例如約45文件:R文件列表的前綴列表
AH#01, AH#02... AH#45
然後
BH#01, BH#02...
我試圖讓AH,BH ...名單(它們是.sp
文件)。
我被這個列表卡住了。然後有這個名單,我想申請的R腳本一個特定的文件名,爲AH
,然後BH
等
我可能誤解了你的問題,但這裏是我的建議:
prefix_letters <- c("AH", "BH")
prefix_numbers <- gsub(" ", "0", format(1:45, digits=2))
m <- outer(prefix_letters, prefix_numbers, function(x, y) paste(x, y, sep="#"))
l <- data.frame(t(m))
names(l) <- prefix_letters
head(l)
AH BH
1 AH#01 BH#01
2 AH#02 BH#02
3 AH#03 BH#03
4 AH#04 BH#04
5 AH#05 BH#05
6 AH#06 BH#06
這應該工作:
sub('(.*)#.*','\\1',list.files(your_directory_path))
例子:
sub('(.*)#.*','\\1',c('AB#1','AH#45'))
[1] "AB" "AH"
要應用腳本的結果(雖然通常我們使用的文件名),你做的東西騙人的:
nomfic<- sub('(.*)#.*','\\1',list.files(your_directory_path))
lapply(nonfic, function(x){your_script})
非常感謝。所以它運作良好... – user3266414
可以使用sub
功能替換爲空字符串的字符串無關的部分:
vec <- c("AH#01", "AH#02", "AH#45", "BH#01", "BH#02")
sub("#.*" , "", vec)
# [1] "AH" "AH" "AH" "BH" "BH"
感謝您的建議。我試了一下,結果是AH#1,AH#2,... BH#1,BH#2 ...但我只想要AH,BH,...這是有幫助的......此外,您知道如何將R腳本應用於這些前綴的列表。例如,我想將一個腳本應用到名爲'nomfic'的文件中,'nomfic'是前面列表的前綴(如AH,然後是BH,...)。 – user3266414