R语言 非常简单的条形图

ttisahbt  于 2023-01-03  发布在  其他
关注(0)|答案(2)|浏览(165)

首先,我必须为我的无知道歉,因为我相信这是一个非常简单的问题,但我对R非常陌生。我的问题是我有一个数据框,看起来像这样:

countrydes       Insured

USA               4500
CANADA            4500 
USA               7500
CANADA            7600

我所要做的就是按国家合计保险价值的总和,并生成一个条形图。

countrydes        Insured 

USA                12000       
Canada             12100

非常感谢。

oxosxuxt

oxosxuxt1#

这就可以了:

# Define your data
dfr <- data.frame(
   countrydes=rep(c("USA", "CANADA"), 2), 
   Insured=c(4500, 4500, 7500, 7600))
# Sum by country
totals <- with(dfr, by(Insured, countrydes, sum))
# Plot the answer
barplot(totals)

(As Etiennebr提到,您可以使用aggregate代替by,在这种情况下,您需要强制countrydes成为列表。)

kqlmhetl

kqlmhetl2#

你可以简单地将每个数据框分别求和,我们将数据框命名为df:

USA <- sum(df[df$countrydes=="USA",]$Insured)
CANADA <- sum(df[df$countrydes=="CANADA",]$Insured)

但是使用aggregate(),您可以在一行中处理所有国家。

aggsumcount <- aggregate(x=df$Insured,by=list(df$countrydes),FUN=sum)

相关问题