-
Notifications
You must be signed in to change notification settings - Fork 0
/
SizeAnalyzer.R
41 lines (31 loc) · 1.1 KB
/
SizeAnalyzer.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
if(!require(tools)) {install.packages(tools)}
AllowExtensions = c("java")
AllowExtensions = tolower(AllowExtensions)
#list files in a browsed folder
files <- list.files(path ="data", recursive = TRUE)
sizes = data.frame(file=character(),
width=numeric(),
height=numeric(),
stringsAsFactors=FALSE
)
cnt= 1
maxFiles=length(files)
for (f in files) {
cat("read ", cnt, "/", maxFiles,": ", f, sep="")
if (tolower(tools::file_ext(paste0("data/",f))) %in% AllowExtensions) {
sourcecode = scan(paste0("data/",f),
what=character(),
blank.lines.skip = FALSE,
quiet=TRUE,
sep="\n"
)
sizes[nrow(sizes)+1,] = list(file=f,
width=max(nchar(sourcecode)),
height=length(sourcecode)
)
} else { cat(": skipped.")}
cat("\n")
cnt=cnt+1
}
hist(sizes$width, breaks=seq(from=0, to=max(sizes$width), by=10))
abline(v=80, col="red")