![](/img/trans.png)
[英]R: How to combine duplicated rows from multiple columns based on unique values in a single column and merge those unique values by |?
[英]Change values in multiple columns with unique value and merge into single column (R)
假設我有一個包含 3 個變量的 4 行數據集 (ds),如下所示:
ds
x1 x2 x3
1 0 0
0 0 1
0 1 0
0 0 1
如何將每列的“1”更改為唯一值並將它們合並為一列?
所以,第一步:
x1 x2 x3
1 0 0
0 0 3
0 2 0
0 0 3
然后,第二步(創建x4
):
x1 x2 x3 x4
1 0 0 1
0 0 3 3
0 2 0 2
0 0 3 3
我有比這更多的變量,我只是想知道如何最大限度地減少我寫的行數,所以它不像 10+ 行。
你可以這樣做:
df <- read.table(text="x1 x2 x3
1 0 0
0 0 1
0 1 0
0 0 1", header=TRUE, stringsAsFactors=FALSE)
df <- df*col(df)
df$x4 <- rowSums(df)
x1 x2 x3 x4
1 1 0 0 1
2 0 0 3 3
3 0 2 0 2
4 0 0 3 3
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.