2017-05-01 13 views
0

このデータフレームでは、手動でカウントすることなく、5年のグループ<で右手の打者の数を見つけようとしています。Rプログラミングの特定の基準を満たす行の数を数えるには?

Status Handed <5 yrs Right <5 yrs Right <5 yrs Left

がどのように私はRの機能を使用するためにそれを行うためにそれを数えるのではなく:ここでは、データのサンプルがですか?

+0

dplyrソリューション:データ%>%filter(ステータス== "5yrs"、Handed == "Right")%>% group_by(手渡し)%>%集計(カウント= n()) –

答えて

1

あなたが試みることができる:

table(df$Handed[df$Status == "<5 yrs"]) 

をそれとも、ステータスカテゴリに基づいて、完全な故障をしたい場合は、あなただけの操作を行います。何かをカウントする

table(df$Handed, df$Status) 
0

標準溶液はsumです。この場合、状態が発生した回数をカウントするため、

sum(df$Handed[df$Status == "<5 yrs"] == "Right") 

sumはあなたの頼りにする必要があります。あなたはすべての可能性、例えばのカウントをしたい場合は

table、ヤニスの答えでデモを行っとしては便利です、table(df$Handed[df$Status == "<5 yrs"])は、左右のカウント(と利きの列に何かを与え、そしてそれはまた、クロス集計を行うと、例えば、with(df, table(Handed, Status))はステータスカテゴリごとに利き手のカウントを与えるだろう。

0
**length(df[df$Status=='<5 yrs' & df$Handed == 'Right',])** 

ここでDFがこれは

またはsqldfパッケージを使用して動作します。使用しているデータフレームの名前です。

**install.packages("sqldf") 
**library("sqldf")** 
**df$Count=1** 
**sqldf("select sum(Count) from df where Status='<5 yrs' and 
    Handed='Right')**** 
+0

それらの '**'は? –

+0

あなたは何も必要ありません**。何らかの理由で、stackoverflow does notはそれらの面白い星なしで答えを提出させます。ちょうど使用する:length(df [df $ Status == '<5 yrs'&df $ Handed == 'Right'、]) –

関連する問題