【发布时间】:2020-09-29 17:18:05
【问题描述】:
我有一个使用splitstackshape 包拆分的数据框。拆分后,我无法继续对多个列进行分组并绘制条形图。代码如下,
library(tidyverse)
library(splitstackshape)
df <- data.frame(countries=(c("England","Australia,Pakistan", "India,England","Denmark", "",
"Australia, Pakistan, New Zealand, England", "United States, England,Pakistan")))
data_split <- splitstackshape::cSplit(df, "countries", ",")
data_split
输出如下,
countries_1 countries_2 countries_3 countries_4
1: England <NA> <NA> <NA>
2: Australia Pakistan <NA> <NA>
3: India England <NA> <NA>
4: Denmark <NA> <NA> <NA>
5: <NA> <NA> <NA> <NA>
6: Australia Pakistan New Zealand England
7: United States England Pakistan <NA>
通过上述输出,我希望绘制一个条形图,其中包含按降序排列的国家/地区的频率。示例输出如下, bar chart showing frequency of countries in descending order
【问题讨论】:
-
也许从
tidyr包(tidyr.tidyverse.org/reference/separate_rows.html)中使用separate_rows更直接,然后ggplot与geom_bar(stackoverflow.com/a/37622400/997979)一起使用
标签: r ggplot2 grouping bar-chart multiple-columns