【发布时间】:2017-12-12 17:11:42
【问题描述】:
我有一个包含几个字符列、一个日期列和一个字符串列的数据框。
其中一列是城市列表,我想知道哪些城市出现在我的数据集中最多。我使用了table(dataframe$city),但它给了我每个城市的列表(包括只出现一次或两次的城市)。
如何根据城市在数据中出现的次数过滤我所在城市的结果以仅显示排名前四分之一的城市?
这里是输入示例:
id price city
1 $0.8 los angeles
2 $0.8 new york
3 $0.5 new york
4 $0.6 new york
5 $0.9 los angeles
6 $0.1 houston
7 $0.7 chicago
8 $0.8 new york
9 $0.7 new york
10 $0.0 new york
11 $0.5 new york
12 $0.1 new york
13 $0.9 new york
14 $0.3 los angeles
15 $0.9 los angeles
16 $0.9 los angeles
17 $0.8 los angeles
18 $0.5 miami
19 $0.9 boston
20 $1.0 newton
21 $0.2 san mateo
22 $0.3 milbrae
当我执行table(dataframe$city) 时,我会得到每个城市的列表以及它出现的次数。如果我只想要一个显示高于平均水平的城市列表(如纽约和洛杉矶)怎么办?
【问题讨论】:
-
如果您提供带有示例输入和所需输出的reproducible example,会更容易为您提供帮助。
-
只需将您的 table() 结果保存到一个对象中并对其进行排序。使用 base,soy 可以使用 df[order(variale_to_be_sorted), ] 对其进行排序
标签: r