[解決済み] dplyrを使用して重複した行を削除する
2022-04-24 10:19:49
質問
私はこのようなdata.frameを持っている - 。
set.seed(123)
df = data.frame(x=sample(0:1,10,replace=T),y=sample(0:1,10,replace=T),z=1:10)
> df
x y z
1 0 1 1
2 1 0 2
3 0 1 3
4 1 1 4
5 1 0 5
6 0 1 6
7 1 0 7
8 1 0 8
9 1 0 9
10 0 1 10
最初の2列をもとに、重複する行を削除したいと思います。期待される出力
df[!duplicated(df[,1:2]),]
x y z
1 0 1 1
2 1 0 2
4 1 1 4
を使った解決策を具体的に探しています。
dplyr
パッケージを使用します。
解決方法は?
備考
:
dplyr
が含まれるようになりました。
distinct
という関数があります。
以下、オリジナルの回答。
library(dplyr)
set.seed(123)
df <- data.frame(
x = sample(0:1, 10, replace = T),
y = sample(0:1, 10, replace = T),
z = 1:10
)
グループ化して、最初の行だけを残すというのも一つの方法です。
df %>% group_by(x, y) %>% filter(row_number(z) == 1)
## Source: local data frame [3 x 3]
## Groups: x, y
##
## x y z
## 1 0 1 1
## 2 1 0 2
## 3 1 1 4
(dplyr 0.2 では、ダミーの
z
という変数が追加され、単に
と書くことができます。
row_number() == 1
)
を追加することも考えています。
slice()
という関数があります。
のように動作します。
df %>% group_by(x, y) %>% slice(from = 1, to = 1)
のバリエーションとか。
unique()
を選択することができます。
を使用します。
df %>% unique(x, y)
関連
-
R LanguageError in hist.default() : 'x' は数値でなければなりません.
-
R言語ダウンロード機能 download.fileとダウンロード解析
-
[解決済み] 重複した行を削除する
-
[解決済み] 先頭と末尾の空白を削除するにはどうしたらよいですか?
-
[解決済み] Rでオブジェクト(変数)が定義されているかどうかを確認するには?
-
[解決済み] [Solved] data.frameで全てまたは一部のNA(欠損値)を含む行を削除する。
-
[解決済み】data.table vs dplyr:一方がうまくできない、またはうまくできないことを行うことができますか?
-
[解決済み】ggplot2によるサイド・バイ・サイド・プロット
-
[解決済み】ティブル(tbl_df)の全行を表示/印刷する。)
-
[解決済み】安定したマッピングを持つggplot2のカテゴリ変数に色を割り当てるには?
最新
-
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言語です。「接続を開くことができません」解決策
-
R - ユークリッド距離の計算を簡単にする方法
-
データボックス内の行/列の削除/追加を行うR言語
-
[解決済み] Rで文字列から文字を削除する
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み] パッケージ 'xxx' は利用できません (for R version x.y.z) 」という警告にどのように対処したらよいですか?
-
[解決済み] コマンドラインからRスクリプトを実行する
-
[解決済み] ggplot2 Rプロットで軸の制限を設定するには?
-
[解決済み] R および RStudio のコンソールをクリアする関数
-
[解決済み】自作関数を書くときにRの省略機能を使うには?