仅更改特定行上的列值R

仅更改特定行上的列值R,r,dataframe,R,Dataframe,我在R中有一个数据帧,我需要清理一个特定的列,但不是所有的行。例如,对于具有 df$score > 100 我想把它除以10,然后替换原始值 如何在R中执行此操作?以mtcars为例,您可以这样执行: mtcars$mpg <- ifelse(mtcars$mpg > 100, mtcars$mpg/10, mtcars$mpg) mtcars$mpg 100,mtcars$mpg/10,mtcars$mpg) 以mtcars为例,您可以这样做: mtcars$mpg &l

我在R中有一个数据帧,我需要清理一个特定的列,但不是所有的行。例如,对于具有

df$score > 100
我想把它除以10,然后替换原始值


如何在R中执行此操作?

以mtcars为例,您可以这样执行:

mtcars$mpg <- ifelse(mtcars$mpg > 100, mtcars$mpg/10, mtcars$mpg)
mtcars$mpg 100,mtcars$mpg/10,mtcars$mpg)

以mtcars为例,您可以这样做:

mtcars$mpg <- ifelse(mtcars$mpg > 100, mtcars$mpg/10, mtcars$mpg)
mtcars$mpg 100,mtcars$mpg/10,mtcars$mpg)

使用
data.table
,我们可以为那些与“i”中设置的条件匹配的行指定适当的位置

library(data.table)
setDT(df)[score>100, score := score/10]

使用
data.table
,我们可以为那些与“i”中设置的条件匹配的行指定适当的位置

library(data.table)
setDT(df)[score>100, score := score/10]