如何在R資料框中為二元列建立順序索引值,並將0賦給FALSE值?


為了在R資料框中為二元列建立順序索引值,並將0賦給FALSE值,我們可以按照以下步驟操作:

  • 首先,建立一個包含二元列的資料框。

  • 然後,使用rle函式以及sequence和lengths函式來建立順序索引列。

示例

建立資料框

讓我們建立一個如下所示的資料框:

x<-sample(c(TRUE,FALSE),25,replace=TRUE)
df<-data.frame(x)
df

輸出

執行上述指令碼後,會生成以下輸出(由於隨機化,此輸出可能因您的系統而異):

    x
1  TRUE
2  TRUE
3  TRUE
4  FALSE
5  TRUE
6  TRUE
7  FALSE
8  TRUE
9  TRUE
10 TRUE
11 FALSE
12 FALSE
13 TRUE
14 FALSE
15 TRUE
16 FALSE
17 TRUE
18 TRUE
19 FALSE
20 FALSE
21 FALSE
22 FALSE
23 FALSE
24 FALSE
25 TRUE

建立順序索引列

使用rle函式以及sequence和lengths函式為資料框df中的x列建立順序索引列:

x<-sample(c(TRUE,FALSE),25,replace=TRUE)
df<-data.frame(x)
df$Index<-with(rle(df$x),sequence(lengths)*df$x)
df

輸出

    x  Index
1  TRUE  1
2  TRUE  2
3  TRUE  3
4  FALSE 0
5  TRUE  1
6  TRUE  2
7  FALSE 0
8  TRUE  1
9  TRUE  2
10 TRUE  3
11 FALSE 0
12 FALSE 0
13 TRUE  1
14 FALSE 0
15 TRUE  1
16 FALSE 0
17 TRUE  1
18 TRUE  2
19 FALSE 0
20 FALSE 0
21 FALSE 0
22 FALSE 0
23 FALSE 0
24 FALSE 0
25 TRUE  1

更新於:2021年11月11日

瀏覽量:155

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.