【发布时间】:2013-06-07 17:35:01
【问题描述】:
我想从列中获取唯一元素。这似乎是直截了当的。这两种方法都有效,但我没有得到我想要的对象类型:
userlist <- as.list(somebigdf$username)
userlist <- unique(userlist)
或
userlist <- unique(somebigdf$username)
当我遍历时,我没有得到名字:
for(i in 1:length(userlist)){
cat(names(userlist[i]), '\n')
}
返回空格。
for(i in userlist){
cat(i, '\n')
}
返回整数。
上面的函数只是一个例子。我将使用它,但也会在 if-else 函数中匹配返回的名称。
对象类型似乎是整数或扩展的 data.frame,每个名称都有很多值 - 这不是我想要的。我真的想要一个字符串列表,类似于 userlist = c(the results from unique)。
编辑 -
此代码将正确地遍历名称:
for(name in unique(somebigdf$username)){
cat(name, '\n')
}
【问题讨论】:
-
我想你对
names这个函数感到困惑。我不认为它做你认为它做的事。尝试删除它。 -
unique返回用户名中字符串的每个唯一值的字符向量。names返回列的名称.. -
我很困惑。你用你的编辑回答了你自己的问题。有什么问题?
-
嗯,是的,不是的。我完成了我打算做的事情 - 但我没有得到所提出问题的答案 - 我如何从唯一创建一些对象(列表、数据框等)然后遍历它?我很高兴结束这个问题,但是当答案似乎与问题不完全一致时,我看到人们变得非常敌对。
-
“我如何从唯一创建一些对象(列表、数据框等)然后遍历它”但这正是你所做的!