[解決済み】エラー:'dimnames' [2]の長さが配列の範囲と等しくない [終了しました]
2022-01-01 11:13:48
質問
完璧に動作していた私のRコードを少し変更しましたが、3つの代わりに7つのクラスタがあります。
layout(matrix(c(1, 1, 2, 2, 3, 3, 4, 4, 5), ncol=1))
# main plots
par(mai=rep(0.5, 4))
fcm <-c(14.0,14.1,13.0,14.2,14.7,13.8,14.0)
gk <-c(12.1,12.5,12.2,12.0,11.5,12.0,11.4)
gg <-c(14.0,14.1,13.3,12.8,12.0,12.2,12.0)
data1 <- rbind(fcm,gk,gg)
colnames(data1) <- c(6,7,8,9,10,11,12)
fcm <-c(2.65,2.55,2.4,2.45,2.45,2.5,2.45)
gk <-c(2.45,2.55,2.4,2.3,2.2,2.35,2.1)
gg <-c(2.6,2.65,2.5,2.35,2.4,2.4,2.2)
data2 <- rbind(fcm,gk,gg)
colnames(data2) <- c(6,7,8,9,10,11,12)
fcm <-c(8.8,6.5,6.6,8.2,8.0,8.4,9.0)
gk <-c(12.7,11.0,11.1,10.5,10.7,10.0,9.5)
gg <-c(2.1,2.1,1.8,2.0,2.0,1.9,1.8)
data3 <- rbind(fcm,gk,gg)
colnames(data3) <- c(6,7,8,9,10,11,12)
fcm <-c(0.47,0.53,0.45,0.39,0.40,0.47,0.48)
gk <-c(0.45,0.51,0.34,0.40,0.42,0.42,0.44)
data4 <- rbind(fcm,gk)
colnames(data4) <- c(6,7,8,9,10,11,12)
barplot(as.matrix(data1),ylim=c(0,20),main="P wave",
xlab="number of clusters", ylab="traveltime rms(ms)",
col=c("red", "black", "green"), beside=TRUE)
barplot(as.matrix(data2),ylim=c(0,2),main="MT",
xlab="number of clusters", ylab="MT functions",
col=c("red", "black", "green"), beside=TRUE)
barplot(as.matrix(data3),ylim=c(0,20),main="XBI",
xlab="number of clusters", ylab="index value",
col=c("red", "black", "green"), beside=TRUE)
barplot(as.matrix(data4),ylim=c(0,0.6),main="NCE",
xlab="number of clusters", ylab="index value",
col=c("red", "black"), beside=TRUE)
par(mai=c(0,0,0,0))
plot.new()
legend(legend = c("fcm","gk","gg"), fill = c( "red", "black", "green"),
"center", horiz=TRUE)
しかし、その後、私は
Error in `colnames<-`(`*tmp*`, value = c(6, 7, 8, 9, 10, 11, 12)) :
length of 'dimnames' [2] not equal to array extent
問題はrbindにあります。私は3つのベクトルを組み合わせていて、それぞれのベクトルには7つの要素があります。
解決方法は?
もう1つ、列名を指定する必要があります。あなたのデータには8つのカラムがあり、例えば、次のようになります。
> length(fcm)
[1] 8
または
> ncol(data1)
[1] 8
または行列を表示することによって行います。
> data1
# [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#fcm 14.0 14.1 13.0 14 2.0 14.7 13.8 14.0
#gk 12.1 12.5 12.2 12 0.0 11.5 12.0 11.4
#gg 14.0 14.1 13.0 3 12.8 12.0 12.2 12.0
の間に
> length( c(6, 7, 8, 9, 10, 11, 12))
[1] 7
で試すことができます。
colnames(data1) <- c(6:13)
あなたのデータだと、こうなりますね。
fcm <-c(14.0,14.1,13.0,14,2,14.7,13.8,14.0)
gk <-c(12.1,12.5,12.2,12,0,11.5,12.0,11.4)
gg <-c(14.0,14.1,13,3,12.8,12.0,12.2,12.0)
data1 <- rbind(fcm,gk,gg)
colnames(data1) <- c(6:13)
となります。
> data1
6 7 8 9 10 11 12 13
fcm 14.0 14.1 13.0 14 2.0 14.7 13.8 14.0
gk 12.1 12.5 12.2 12 0.0 11.5 12.0 11.4
gg 14.0 14.1 13.0 3 12.8 12.0 12.2 12.0
というエラーメッセージが表示されます。
関連
-
[解決済み】knitrのドキュメントでinstall.packagesが失敗する。"ミラーを設定せずにCRANを使おうとしている"
-
[解決済み] 変数の型(リスト)が無効です
-
[解決済み】lis[[i]]のエラー:1つ未満の要素を選択しようとした場合
-
[解決済み】「次のオブジェクトは 'package:xxx' からマスクされています」とはどういう意味ですか?
-
[解決済み】Rのメモリ管理/サイズn Mbのベクトルを割り当てられない
-
[解決済み】R ggplot2 で scale_x_discrete を使用する。
-
[解決済み】Rの整数オーバーフローとは何ですか、そしてどのように起こるのですか?
-
[解決済み】Rで文字ベクトルから引用符を削除する
-
[解決済み】R: predict() の数値 'envir' 引数が長さ1でない。)
-
[解決済み】各グループの上位3要素を計算する際に「数値型、論理型、複合型でのみ可能な演算」を回避する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】基本 - T-検定 -> グループ化因子は正確に2水準でなければならない
-
[解決済み] 不適合な配列のコードエラー
-
[解決済み】添え字付き代入でNAを使用することはできません
-
[解決済み】値を置き換えようとすると、"データフレームの添え字の割り当てで欠損値は許可されない"
-
[解決済み】ggplotのエラー。関数型オブジェクトのスケールを自動的に選択する方法がわかりません。
-
[解決済み】ロジスティック回帰 - eval(family$initialize) : y 値は 0 <= y <= 1 である必要があります。
-
[解決済み】「Error in stripchart.default(x1, ...) : invalid plotting method」エラーを回避する方法は?
-
[解決済み】Rで文字ベクトルから引用符を削除する
-
[解決済み】二項演算子への非数値引数【非公開
-
[解決済み】 eval(expr, envir, enclos) でのエラー : オブジェクトが見つかりません。