Rでデータフレームを部分抽出後、ベクトルや行列に変換する

例えば↓こんな感じで、各市町村の人口データがあったとします。 city <- c("A市", "B町", "C村", "D市") male <- c(95, 49, 26, 45) female <- c(99, 51, 24, 55) df <- data.frame(city, male, female) df city male female 1 A市 95 99 2 B町 49 51 3 C村 26 24 4 D市 45 55 で、人口や男女比を比較するために、それぞれの市町村に対してグラフを描いてみようとしたとします。 じゃあ、1行ごとにループで回しながら、barplotあたりを使って、グラフを描いてみようとしまして、↓こんな風にスクリプトを書くと(iがループのカウンタだと思ってね)、 # i行目の男女人口を棒グラフにしたい・・・ barplot(df[i, c("male", "female")]) barplot.default(df[i, c("male", "female")]) でエラー: 'height' はベクトルか行列でなければなりません なんでだ?と思って、切り出される部分をチェックしてみると、 df[i, c("male", "female")] male female 1 95 99 class(df[i, c("male", "female")]) [1] "data.frame" 構成要素としては、2つの数値の並びになっているもの、型がデータフレームなもんだから、barplotにそのまま渡すとエラーになってしまうのね。ちなみに、円グラフのpie...