[解決済み] 条件文(`if`)に基づいてデータフレーム内の値を置き換える
2022-05-02 09:55:25
質問
以下のRデータフレームで、以下の時間をすべて置き換えたい。
B
が現れると
b
.
junk <- data.frame(x <- rep(LETTERS[1:4], 3), y <- letters[1:12])
colnames(junk) <- c("nm", "val")
が提供します。
nm val
1 A a
2 B b
3 C c
4 D d
5 A e
6 B f
7 C g
8 D h
9 A i
10 B j
11 C k
12 D l
私が最初に試みたのは
for
と
if
のような文があります。
for(i in junk$nm) if(i %in% "B") junk$nm <- "b"
の値をすべて置き換えています。
junk$nm
で
b
. なぜこうなるかはわかるのですが、元の値がjunk$nmの場合だけ置き換えるようにすることができないようです。
B
.
注意:私は、この問題を解決するために
gsub
しかし、Rを学ぶという意味で、私のオリジナルのアプローチを動作させる方法を知りたいのです(可能であれば)。
どのように解決するのですか?
nmを文字に変換してから変更する方が簡単です。
junk$nm <- as.character(junk$nm)
junk$nm[junk$nm == "B"] <- "b"
EDIT: そして、もし本当にnmを要因として維持する必要があるのなら、最後にこれを追加してください。
junk$nm <- as.factor(junk$nm)
関連
-
データボックス内の行/列の削除/追加を行うR言語
-
[解決済み] R および RStudio のコンソールをクリアする関数
-
[解決済み] データフレームの行を複数の列でソート(並び替え)する。
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み] require()とlibrary()の違いは何ですか?
-
[解決済み] リストをデータフレームに変換する
-
[解決済み】data.table vs dplyr:一方がうまくできない、またはうまくできないことを行うことができますか?
-
[解決済み】サブセットされたデータフレーム内の未使用の因子レベルを削除する
-
[解決済み】データフレームから特定の列を抽出する
-
[解決済み】自作関数を書くときにRの省略機能を使うには?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
R言語のエラーメッセージと関連する解決策
-
SocketTimeoutExceptionです。読み込みがタイムアウトしました
-
R言語 - マトリックス
-
[解決済み] R および RStudio のコンソールをクリアする関数
-
[解決済み] Rで複数行のコメントを持つことは可能ですか?[重複している]。
-
[解決済み] 情報を損なわずに因数を整数値に変換するには?
-
[解決済み] 非常に大きなテーブルをデータフレームとして高速に読み込む
-
[解決済み】安定したマッピングを持つggplot2のカテゴリ変数に色を割り当てるには?
-
[解決済み】エラー:Rで関数が見つかりませんでした。
-
[解決済み] [Solved] data.frameのカラムをベクトルに変換する?