## list()列表
```{r}
findwords <- function(tf){ #tf short for:text file
txt <- scan(tf,"") #读取文本文件,空格间隔的英文内容,汉字不适用
print(txt) #输出文本列表
wl <- list() #创建word(单词)列表list --wl
for (i in 1:length(txt)){ # 循环读取txt内单词
wrd <- txt[i]
wl[[wrd]] <- c(wl[[wrd]],i) # wl[[wrd]是个单词位置,把位置向量存起来
}
return(wl)
}
#orders the output of findwords() by word frequwncy
freqwl <- function(wordlist){
freqs <- sapply(wordlist,length)
return(wordlist[order(freqs)]) #order()按位次排序,sort() 按值排序
}
x <- findwords("tf.txt")
# names(x) #显示列表标签名,提取x中的单词
# unlisted(x) #获取列表的值
# unname(x) #去掉列表元素名
#sort(names(x)) #列表标签名(单词)排序
#提取词频较高的10%单词作图
#----------------------------
snyt <- freqwl(x)
nword <- length(snyt)
freqs <- sapply(snyt[round(0.9*nword):nword],length)
barplot(freqs)
```
## 列表应用lapply() & sapply()
```{r}
lapply(list(1:6,20:36),median) #输出中位数1:6,20:36列表
sapply(list(1:6,20:36),median) #输出中位数1:6,20:36矩阵