如何将R中单个变量的值更改为一个范围,该范围取决于原始变量的值?

如何将R中单个变量的值更改为一个范围,该范围取决于原始变量的值?,r,statistics,subset,bioinformatics,data-analysis,R,Statistics,Subset,Bioinformatics,Data Analysis,所以我有CpG位点的数据,还有一列定义了它们的染色体位置(例如10000) 如何更改这些值,以便在依赖于原始值的范围内获得值。例如,10000将是+/-500(9500-10500) 我将对每个变量使用相同的参数,不管它的值是多少 我试过了 df$upstream <- df$value - 500 df$downstream <- df$value + 500 df$upstream我在工作期间和工作期间使用了这样的数据集,为了实现这一点,我使用以下方法在我的数据集上创建新列(如

所以我有CpG位点的数据,还有一列定义了它们的染色体位置(例如10000)

如何更改这些值,以便在依赖于原始值的范围内获得值。例如,10000将是+/-500(9500-10500)

我将对每个变量使用相同的参数,不管它的值是多少

我试过了

df$upstream <- df$value - 500
df$downstream <- df$value + 500

df$upstream我在工作期间和工作期间使用了这样的数据集,为了实现这一点,我使用以下方法在我的数据集上创建新列(如注释中所述):


希望有帮助

听起来您需要根据固定值的公式创建下限和上限列(范围)。例如,
df$lower我不清楚您的输入和预期输出。是否要模拟该范围内的随机值?是否要生成字符串
“+/-500(9500-10500)”
?是否要为上限和下限添加列?是否需要包含该范围内每个整数值的
列表
列?它始终是+/-500范围,还是有一些确定范围的逻辑?您尝试了什么,在哪里遇到了问题?MFerris99,欢迎使用堆栈溢出。我看到你的问题得到了否决票,但我认为如果你能更新它以回应Gregor Thomas,它会被否决,也许更重要的是,会给你清晰、有用的答案。@Gregor Thomas抱歉,我对R和编程一般来说都是新手。我尝试了建议的“df$upstream”,我不知道什么是
genomebrowser
,但如果它能与列表列一起工作,我会感到惊讶?你能更具体地说明你想要什么样的输出吗?它可以是一个
列表
-类列,每一行都包含上下界向量——但不要因为我的建议就要求这样做。它可以是一个
字符
类列,带有字符串
“+/-500(9500-10500)”
,或者是一个更简单的字符串,如
“9500-10500”
,或者。。。我不知道。请确切地告诉我们你想要什么,我们可以帮助你到达那里。是的,这就是我要找的,谢谢!好的,如果您认为答案对其他人有效,您可以验证答案;)
df$upstream = df$position - 500
df$downstream = df$position + 500