2017-09-18 3 views
3

私は最近、3つの異なるデータフレームを要約する簡単なRスクリプトを作成しました。 RおよびR Studioの最新バージョンにアップデートしてから、私はdplyrで要約機能をデータフレームの1つのみ(他の2つは問題ありません)で使用していたときに、これまで見たことのない出力を実行しています。また私には馴染みのない一連の警告が表示されます。更新に先立って、私は、データフレームのいずれにも問題なく書かれたとおりにスクリプトを実行したことに注意してください。は、na.rm = TRUEのときに-infを返すように要約します

問題とデータフレームがVO2と呼ばれ、次のようにそのが設定されています

Name  Sex  VO2 
AthleteA M   50 
AthleteA M   52 
AthleteA M   NA 
AthleteB M   49 
AthleteB M   56 
AthleteB M   47 
AthleteC M   42 
AthleteC M   NA 
AthleteC M   41 
AthleteD M   NA 
AthleteD M   NA 
AthleteD M   NA 

私は実行するコードは次のとおりです。

Test.Summary.VO2 = VO2 %>% group_by(Name, Sex) %>% 
summarise(Best.Score = max(VO2, na.rm=TRUE)) 

このコードは、以下の要約を生成します。

Name  Sex  Best.Score 
AthleteA M  52 
AthleteB M  56 
AthleteC M  42 
AthleteD M  -Inf 

-Infの値は、出力ではまったく新しいものです。私はなぜそれが現れているのかを理解することはできません。

前述のように、私は2番目のデータフレームと全く同じレイアウトを持ち、同じタイプのサマリを実行します。ここではすべて正常に動作します。 NA.rm = TRUEで要約すると、NAケースを-Inf値で置き換えることなく、NAケースを削除します。

View(Test.Summary.VO2) 

私は警告メッセージ、次の一連の受信:これはもう少し珍しいなる

は、私が使用してデータフレームを表示するときにということで、スクリプトの後半で

There were 38 warnings (use warnings() to see them) 
warnings() 
Warning messages: 
1: Unknown or uninitialised column: 'Quad'. 
2: Unknown or uninitialised column: 'Quad'. 
3: Unknown or uninitialised column: 'Quad'. 
4: Unknown or uninitialised column: 'Quad'. 

をI "Quad"という新しい変数を生成します。しかし、上記の警告は、環境をクリアしても表示され、R Studioを再起動します。私は.csvファイルの名前を変更し、別のデータフレーム名を使用してインポートしようとしました。これは、スクリプトの後半で生成される列「Quad」が環境のどこかにぶら下がっているかのようです。

ここで何が起こっているのか本当に迷っています。

StackのRエキスパートの一人が、この問題を解決するためのアイデアを私に提供してくれることを願っています。

ありがとうございました。

答えて

3

?max参照してください:

数値空のセットの最小値と最大値をInfのと-Infを+で推移を保証する、例えば、分(X1、分(×2))=(この順番で!) = min(x1、x2)。長さ(x)== 0(必要に応じて欠損値を取り除いた後)のときは、数値のx max(x)== -Infおよびmin(x)== + Inf。ただし、pmaxとpminは、na.rm = TRUEの場合でもすべての並列要素がNAであればNAを返します。

グループDにNA以外の値がないため、maxは空のセットの値を返します。

関連する問題