我想從數據集創建一個包含單詞和單詞頻率的列表。我做到了,並保存在名爲「mylist」的val中。現在我想根據單詞的頻率對列表進行排序,並從具有較高頻率的10個單詞中創建條形圖。無法對列排序R
但我沒有成功排序。我嘗試了很多方法來將「mylist」的類型更改爲data.frame或date.table,但仍保留列表的頻率列。 爲了總結我有包含它的DT var是一個有2列的列表x-包含字和類型是字符。 第2列是'v' - 包含頻率,它是一個列表。 我沒有成功按頻率排序。 請幫助我。
library(ggplot2)
libary(MASS)
#get the data
data.uri = "http://www.crowdflower.com/wp-content/uploads/2016/03/gender-classifier-DFE-791531.csv"
pwd = getwd()
data.file.name = "gender.csv"
data.file = paste0(pwd, "./", data.file.name)
download.file(data.uri, data.file)
data = read.csv(data.file.name)
#manipulate the data
data <- data[data$X_unit_id < 815719694,]
print(data$X_unit_id)
#get all female has white sidebar
female_colors <- subset(data, data$gender=="female")
female_colors$fav_number
#get all male fav_numbers
male_colors <- subset(data, data$gender=="male")
male_colors$fav_number
text_male = subset(data, data$gender=="male")
text_male = text_male$text
print(text_male[1])
print(length(text_male))
v <- text_male[1:length(text_male)]
print(v)
print (v[1])
count_of_list = 0;
x = list()
for (i in v) {
# Merge the two lists.
x <- c(x,unlist(strsplit(i," ")))
}
count = 0;
mylist = list()
for (word in x){
for (xWord in x){
if (word == xWord)
count = count + 1;
}
key <- word
value <- count
mylist[[ key ]] <- value
count = 0;
}
libary(data.table)
require(data.table)
DT = data.table(x=c(names(mylist)),v=c(mylist))
DT
您能否提供一個最簡單的例子,即只有數據集(例如dput())和您試圖對其進行排序的代碼?這太難以解決了。編輯:如果你需要一些幫助,[這裏是一個很好的指導,做一個最小的,可重複的例子](http://stackoverflow.com/a/5963610/5805670)。 – Laterow