计算R中数据框中值<1的负逆
Calculation the negative inverse of values <1 in a dataframe in R
我是使用 R 的初学者,如果这是一个愚蠢的问题,我深表歉意。
我有一个数据框,其中有一列包含 7000 个值。我想计算该列中所有 <1 的值的负逆(-1/值),同时保持所有值 >= 1 不变。
最简单的方法是什么?
假设您的数据名为 df
并且有一个名为 values
的列,您可以这样做:
ifelse(df$values < 1,
-1 / df$values, #negative inverse of all <1
df$values) #keep others the same
也许你可以像下面那样尝试replace
replace(v, v<1,-1/v[v<1])
或更数学的方法
(1 - 2 * (v < 1)) * v^(1 - 2 * (v < 1))
您还可以在条件为 TRUE
:
的地方子集化并替换向量
v[v < 1] <- -1 / v[v < 1]
我是使用 R 的初学者,如果这是一个愚蠢的问题,我深表歉意。 我有一个数据框,其中有一列包含 7000 个值。我想计算该列中所有 <1 的值的负逆(-1/值),同时保持所有值 >= 1 不变。
最简单的方法是什么?
假设您的数据名为 df
并且有一个名为 values
的列,您可以这样做:
ifelse(df$values < 1,
-1 / df$values, #negative inverse of all <1
df$values) #keep others the same
也许你可以像下面那样尝试replace
replace(v, v<1,-1/v[v<1])
或更数学的方法
(1 - 2 * (v < 1)) * v^(1 - 2 * (v < 1))
您还可以在条件为 TRUE
:
v[v < 1] <- -1 / v[v < 1]