1. ホーム
  2. r

[解決済み] R qqplot の引数 "y" が見つからないエラー

2022-02-15 06:17:21

質問

私はRの比較的新しいユーザーですが、次のようなエラーメッセージに悩まされています。 qqplot . サンプルデータは一番下にあります。 私は qqplot 方位データ、つまりコンパスの方向のようなものです。 このあたりを調べてみたところ ?qqplot Rのドキュメントですが、どちらにも理解できる解答が見当たりません。 関数の構文がわからないのか、データの形式がわからないのか、おそらくその両方でしょう。 まず、データを1列の値として、つまり "Azimuth"列だけ読み込むことを試みました。

azimuth <- read.csv(file.choose(), header=TRUE)
qqplot(azimuth$Azimuth)

は次のようなエラーを返します。

Error in sort(y) : argument "y" is missing, with no default

そこで、対応する傾斜角を方位角のデータと一緒に入れてみたところ、同じエラーが発生しました。 また、試してみました。

qqnorm(azimuth)

が、これは次のようなエラーを返しました。

Error in xy.coords(x, y, xlabel, ylabel, log) : 
'x' and 'y' lengths differ

データフレーム "azimuth"。

    Azimuth        Altitude
23.33211466    -6.561729793
31.51267873     4.801537153
29.04577711      5.24504954
23.63450905     14.03342708
29.12535459     7.224141678
20.76972007     47.95686329
54.89253987     4.837417689
56.57958227     13.12587996
13.09845182    -7.417776178
26.45155154     31.83546988
29.15718557     25.47767069
28.09084746     14.61603384
28.93436865    -1.641785416
28.77521371     17.30536039
29.58690392    -2.202076058
0.779859221     12.92044019
 27.1359178     12.20305106
23.57084707     11.97925859
28.99803063     3.931326877

dput() のバージョンです。

azimuth <- 
structure(list(Azimuth = c(23.33211466, 31.51267873, 29.04577711, 
23.63450905, 29.12535459, 20.76972007, 54.89253987, 56.57958227, 
13.09845182, 26.45155154, 29.15718557, 28.09084746, 28.93436865, 
28.77521371, 29.58690392, 0.779859221, 27.1359178, 23.57084707, 
28.99803063), Altitude = c(-6.561729793, 4.801537153, 5.24504954, 
14.03342708, 7.224141678, 47.95686329, 4.837417689, 13.12587996, 
-7.417776178, 31.83546988, 25.47767069, 14.61603384, -1.641785416, 
17.30536039, -2.202076058, 12.92044019, 12.20305106, 11.97925859, 
3.931326877)), .Names = c("Azimuth", "Altitude"), class = "data.frame", row.names = c(NA, -19L))

解決方法は?

どうやら qqplot 関数は2つの入力パラメータを受け取ります。 xy を以下のように設定します。

qqplot(x, y, plot.it = TRUE, xlab = "your x-axis label", ylab="your y-axis label", ...)

上記のように呼び出したとき、あなたは1つのベクトルしか与えなかったので、Rはそのベクトルに文句を言いました。 y 引数が不足しています。 入力データセットをチェックし、どのような xy を呼び出すためのものであるべきです。 qqplot .