[解決済み] R データフレームの特定の列に対する Apply() 関数
2023-03-21 21:19:05
質問
データフレームにapply関数を使用したいのですが、最後の5列だけに関数を適用したいです。
B<- by(wifi,(wifi$Room),FUN=function(y){apply(y, 2, A)})
これはAをyの全列に適用します。
B<- by(wifi,(wifi$Room),FUN=function(y){apply(y[4:9], 2, A)})
これはyの4〜9列目だけにAを適用したものですが、Bのトータルリターンは最初の3列を切り取ってしまいます...。私はまだそれらをしたい、私はちょうどそれらに適用されるAを望んでいない。
wifi[,1:3]+B
は、私が期待/望んでいたことをしません。
どのように解決するのですか?
data.frameの例と関数の例(すべての値に+1するだけ)を使っています。
A <- function(x) x + 1
wifi <- data.frame(replicate(9,1:4))
wifi
# X1 X2 X3 X4 X5 X6 X7 X8 X9
#1 1 1 1 1 1 1 1 1 1
#2 2 2 2 2 2 2 2 2 2
#3 3 3 3 3 3 3 3 3 3
#4 4 4 4 4 4 4 4 4 4
data.frame(wifi[1:3], apply(wifi[4:9],2, A) )
#or
cbind(wifi[1:3], apply(wifi[4:9],2, A) )
# X1 X2 X3 X4 X5 X6 X7 X8 X9
#1 1 1 1 2 2 2 2 2 2
#2 2 2 2 3 3 3 3 3 3
#3 3 3 3 4 4 4 4 4 4
#4 4 4 4 5 5 5 5 5 5
あるいは、さらに
data.frame(wifi[1:3], lapply(wifi[4:9], A) )
#or
cbind(wifi[1:3], lapply(wifi[4:9], A) )
# X1 X2 X3 X4 X5 X6 X7 X8 X9
#1 1 1 1 2 2 2 2 2 2
#2 2 2 2 3 3 3 3 3 3
#3 3 3 3 4 4 4 4 4 4
#4 4 4 4 5 5 5 5 5 5
関連
-
[解決済み] R:自然対数を使った方程式をnlsで使う
-
[解決済み] PandasでDataFrameの行を反復処理する方法
-
[解決済み] 列の値に基づいてDataFrameから行を選択するにはどうすればよいですか?
-
[解決済み] Pandas DataFrameからカラムを削除する
-
[解決済み] Pandasのデータフレームで複数の列を選択する
-
[解決済み] データフレームの行を複数の列でソート(並び替え)する。
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み] 関数のソースコードを見るにはどうしたらいいですか?
-
[解決済み] pandas が他の列の値に基づいて新しい列を作成する / 複数の列の関数を行単位で適用する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
DEG解析で'row.names'に重複した名前を付けられない場合の解決法
-
[解決済み] Rの%*%の意味 [重複]について
-
[解決済み] Rで複数行のコメントを持つことは可能ですか?[重複している]。
-
[解決済み] R:自然対数を使った方程式をnlsで使う
-
[解決済み] リストやデータフレームの要素にアクセスするためのブラケット[ ]とダブルブラケット[[ ]]の違いについて
-
[解決済み] ベクトル中のある要素のインデックスを求めるR関数はありますか?
-
[解決済み] ggplot2 の棒グラフで棒を並べる
-
[解決済み] ggplot2 を使って 2 つの変数を同じグラフに線でプロットする
-
[解決済み】エラー:Rで関数が見つかりませんでした。
-
[解決済み] 2つの単語の最初の文字を大文字にします。