2017-03-26 5 views
-4

データフレームtripsの「性別」の列に女性、男性、N/Aの数を数えようとしています。しかし、私は代わりに行の数だけ返しています。女性のため性別と一意のIDでカウントする方法R

library(dplyr) 
count(trips, vars = "gender") 
# A tibble: 1 × 2 
# vars  n 
# <chr> <int> 
#1 gender 286858 


head(trips) 

trip_id | start_time | stop_time | duration | bike_di | gender | birthyear 
1  | 10:00  | 11:00  | 3600 | BD-215 | Male | 1960 
1  | 10:30  | 11:00  | 1800 | BD-715 | Female | 1960 
1  | 10:45  | 11:00  | 900 | BD-615 | Male | 1960 
1  | 10:50  | 11:00  | 600 | BD-315 | Female | 1960 
+0

再現可能な例を示してください。あなたが試したことを示してください。 http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –

+0

編集リンクを押します。 –

+1

多分あなたは 'table(trips $ gender)'だけを必要とします。 –

答えて

0

ここにはdplyrソリューションがあります。私は性別がNAである行を追加しました。

trips <- read.table(text="trip_id start_time stop_time duration bike_di gender birthyear 
1  10:00  11:00  3600 BD-215 Male 1960 
1  10:30  11:00  1800 BD-715 Female 1960 
1  10:45  11:00   900 BD-615 Male 1960 
1  10:45  11:00   900 BD-615 NA 1960 
1  10:50  11:00   600 BD-315 Female 1960",header=TRUE, stringsAsFactors=FALSE) 

trips %>% 
group_by(gender) %>% 
summarise(gender_count=n()) 

# A tibble: 3 x 2 
    gender gender_count 
    <chr>  <int> 
1 Female   2 
2 Male   2 
3 <NA>   1 
0

は、入力します。男性の

sum(trips$gender=='Female') 

がNAの場合

sum(trips$gender=='male') 

を入力し、それが唯一の性別欄に、またはすべての列にありますか?タイプ:

あなたは各列にNAsの数を取得します。

うまくいけば助けてください。

関連する問題