0

forループ内でRの複数の箱ひげ図をプロットしようとしてdata.frame[column]いますが、次を返すため、を使用してデータセット内の列を参照できません:

Error in model.frame.default(formula = e[1] ~ e[2]) : invalid type (list) for variable 'e[1]'

次のコードは、私が得ているのと同じエラーを返します。

x <- rnorm(20)
y <- rnorm(20)
e <- data.frame(x, y)
boxplot(e[1] ~ e$y)

助言がありますか?私は本当にここで立ち往生しています。

4

2 に答える 2

1

ここには 2 つの問題があります。

1. @Sven Hohenstein が指摘したように、boxplot呼び出しでは data.frame 列を正しく参照する必要があります。

2. x ~ y ではなく、2 つのボックスプロット (x と y) を並べて表示する必要があると思います。例えば:

# All these commands are equivalent:
boxplot(e$x, e$y)
boxplot(e[[1]], e[[2]])
boxplot(e[, 1], e[, 2])

# Probably not what you want:
boxplot(e$x ~ e$y)
boxplot(x ~ y, data=e)
于 2012-11-08T19:52:27.993 に答える
1

xデータ フレームの列にアクセスするには、次dfを使用します。

df[[x]]

また

df[ , x]
于 2012-11-08T19:31:32.930 に答える