如何用新值替换 R 数据框中的特定值?

要将 R 数据框中的特定值替换为新值,我们可以使用 ifelse 函数,其中新值将放置在条件之后,如果列值与条件不匹配,则将放置相同的列。例如,如果我们有一个名为 df 的数据框,其中包含具有 20 个值的列 x,其中一些值为 5,如果我们想用 2 替换 5,那么我们可以使用命令 df$x<-ifelse(df$x ==5,2,df$x)

示例

考虑以下数据框 -

ID<-1:20

x<-rpois(20,2)

df1<-data.frame(ID,x)

df1

输出结果
   ID  x

1  1   2

2  2   2

3  3   2

4  4   4

5  5   2

6  6   2

7  7   2

8  8   2

9  9   1

10 10  2

11 11  0

12 12  2

13 13  4

14 14  4

15 15  4

16 16  0

17 17  2

18 18  3

19 19  0

20  20 3

用 3 替换列 x 中的值 2 -

示例

df1$x<-ifelse(df1$x==2,3,df1$x)

df1

输出结果
   ID  x

1  1   3

2  2   3

3  3   3

4  4   4

5  5   3

6  6   3

7  7   3

8  8   3

9  9   1

10 10  3

11 11  0

12 12  3

13 13  4

14 14  4

15 15  4

16 16  0

17 17  3

18 18  3

19 19  0

20 20  3

示例

S.No<-1:20

y<-rpois(20,5)

df2<-data.frame(S.No,y)

df2

输出结果
   S.No y

1  1   4

2  2   5

3  3   5

4  4   7

5  5   9

6  6   6

7  7   2

8  8   3

9  9   1

10 10  4

11 11  9

12 12  3

13 13  3

14 14  6

15 15  8

16 16  6

17 17  4

18 18  5

19 19  8

20 20  3

将 y 列中的值 4 替换为 0 -

示例

df2$y<-ifelse(df2$y==4,0,df2$y)

df2

输出结果
   S.No y

1  1   0

2  2   5

3  3   5

4  4   7

5  5   9

6  6   6

7  7   2

8  8   3

9  9   1

10 10  0

11 11  9

12 12  3

13 13  3

14 14  6

15 15  8

16 16  6

17 17  0

18 18  5

19 19  8

20 20  3

以上是 如何用新值替换 R 数据框中的特定值? 的全部内容, 来源链接: utcz.com/z/338802.html

回到顶部