R での修正方法: ggproto オブジェクトを一緒に追加できない
R で発生する可能性のあるエラーは次のとおりです。
Error: Cannot add ggproto objects together.
Did you forget to add this object to a ggplot object?
このエラーは通常、 ggplot2パッケージを使用してビジュアライゼーションを作成しようとしたときに、構文のどこかにプラス記号 ( + ) を追加し忘れた場合に発生します。
このチュートリアルでは、このエラーを修正する方法を正確に説明します。
エラーを再現する方法
R に、10 日間の店舗の売上と顧客の総数を示す次のデータ フレームがあるとします。
#create data frame
df <- data. frame (day = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
sales = c(8, 8, 7, 6, 7, 8, 9, 12, 14, 18),
customers = c(4, 6, 6, 4, 6, 7, 8, 9, 12, 13))
#view data frame
df
day sales customers
1 1 8 4
2 2 8 6
3 3 7 6
4 4 6 4
5 5 7 6
6 6 8 7
7 7 9 8
8 8 12 9
9 9 14 12
10 10 18 13
ここで、10 日間ごとの売上と顧客を視覚化する折れ線グラフを作成するとします。
library (ggplot2)
#attempt to create plot with two lines
ggplot(df, aes(x = day))
geom_line(aes(y = sales, color = ' sales ')) +
geom_line(aes(y = customers, color = ' customers '))
Error: Cannot add ggproto objects together.
Did you forget to add this object to a ggplot object?
ggproto オブジェクトを一緒に追加できないというエラーが表示されます。
エラーを修正する方法
このエラーを修正する方法は、最初の行の末尾にプラス記号 ( + ) を追加するだけです。これは、最初に行うのを忘れたことです。
library (ggplot2)
#create plot with two lines
ggplot(df, aes(x = day)) +
geom_line(aes(y = sales, color = ' sales ')) +
geom_line(aes(y = customers, color = ' customers '))

結果は、その 10 日間の総顧客数と売上高を示す 2 本の折れ線グラフになります。
最初の行の末尾にプラス記号 ( + ) を使用したため、今回はエラーが発生していないことに注意してください。
追加リソース
次のチュートリアルでは、R の他の一般的なエラーを解決する方法について説明します。
R での修正方法: dim(X) は正の長さでなければなりません
R での修正方法: 名前が以前の名前と一致しない
R での修正方法: 長いオブジェクトの長さが短いオブジェクトの長さの倍数ではありません
R での修正方法: コントラストは 2 レベル以上の因子にのみ適用できます。