Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >R条件函数/循环检查数据帧中的值

R条件函数/循环检查数据帧中的值
EN

Stack Overflow用户
提问于 2014-02-28 21:29:25
回答 2查看 1.9K关注 0票数 0

我正在尝试编写代码,以检查df中的1值是否大于同一df中不同行/列中的另一个值。

我有以下样本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Date GSPC.Open GSPC.High GSPC.Low GSPC.Close
2014-02-28 2014-02-28   1855.12   1867.92  1847.67    1859.45
2014-02-27 2014-02-27   1844.90   1854.53  1841.13    1854.29
2014-02-26 2014-02-26   1845.79   1852.65  1840.66    1845.16
2014-02-25 2014-02-25   1847.66   1852.91  1840.19    1845.12

我希望创建一个循环或函数来检查GSPC.Open是否大于或等于前一天的GSPC.Close。我会想象这些代码看起来像

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (df$GSPC.Open >= df$GSPC.Close[1]) {
    df$GSPC.AboveOpen = 1
}

但我保留一个长度>1的错误。

如果当前的打开值大于或等于前一天的关闭值,则我希望该函数创建一个填充w/离散值的列df$GSPC.AboveOpen。

我怎么写这段代码?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-01 05:33:19

我不建议在这里使用循环。您使用的是时间序列-因此,使用适当的时间序列方法(如lag)。

此代码将当前的打开与前一天的关闭进行比较,如果打开的值更高(或等于),则给出1,否则给出0

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(quantmod)

getSymbols('^GSPC',src='yahoo',from='1990-01-01')

GSPC$AboveOpen<-(GSPC[,"GSPC.Open"]>=lag(GSPC[,"GSPC.Close"],1))

万一你还想处理单一股票数据:请记住,.Close.Open (至少来自雅虎)不会被分割和调整股息。.Adjusted是调整后的收盘点。

票数 1
EN

Stack Overflow用户

发布于 2014-02-28 21:47:14

试试这个:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df$GreaterThanPreviousClose <- NA

for (i in 2:nrow(df)){
df[i,6] <- df[i,2] >= df[i-1,5]
}

也许这会加快速度

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
compare <- function(i){
 Larger <- df[i,2] >= df[i-1,5]
 return(Larger)
}

df$GreaterThanPreviousClose <- sapply(1:nrow(df),compare)
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22110558

复制
相关文章
Python 中的条件判断、循环以及循环的终止
条件语句是用来判断给定条件是否满足,并根据判断所得结果从而决定所要执行的操作,通常的逻辑思路如下图;
村雨遥
2022/06/15
2.7K0
Python 中的条件判断、循环以及循环的终止
R中的循环绘图
上面我们将每一张图都单独输出了,下面来介绍如何将其全部组合起来,分别介绍两种R包的方法gridExtra&patchwork
R语言数据分析指南
2022/09/21
4K0
R中的循环绘图
R语言专题3-条件和循环
生信汪一昂
2023/09/17
2460
mysql中条件函数
如果我们需要把未认证(状态为NOT_AUTH)的用户放到前面排序显示,在不影响分页的情况下,我们可以这么写
阿超
2022/08/16
3.4K0
mysql中条件函数
R语言基础笔记-04(字符串、数据框、条件与循环)
ctrl+shift+m,把上一个运算的结果输入为下一个函数的第一个参数,可以省略很多中间变量
我不知道
2023/03/15
8650
R语言中的循环函数(Grouping Function)
R语言中有几个常用的函数,可以按组对数据进行处理,apply, lapply, sapply, tapply, mapply,等。这几个函数功能有些类似,下面介绍下这几个函数的用法。
深蓝studyzy
2022/06/16
1.5K0
PHP | 条件嵌套、循环嵌套、条件循环相嵌套
demo: 假设在发3月工资的时候,不仅判定性别,还要判定男性是否有房,没有房,可以发放住房补贴,对于女性,判定是否怀孕,怀孕还有怀孕补贴:
凌川江雪
2019/03/08
4.2K0
箭头函数中的'this'值
那么 为什么hobby的值输出成功,而name不能够输出呢?是因为lucifer丑吗?其实那只是其中一个因素,还有一个因素就是在ZnHobbies方法中的this已经不属于上一个区块,而这里的this并没有name值。所以 解决办法的其中一个就是在ZnHobbies函数中写入
学前端
2020/04/07
2.2K0
R语言数据库中如何多条件排序
R语言中,如何对数据框的数据根据某个条件进行排序呢?如何根据多条件进行排序呢,类似Excel中的排序效果:
邓飞
2020/08/24
1.7K0
R语言数据库中如何多条件排序
R中重复值、缺失值及空格值的处理
1、R中重复值的处理 unique函数作用:把数据结构中,行相同的数据去除。 #导入CSV数据 data <- read.csv('1.csv', fileEncoding = "UTF-8", stringsAsFactors = FALSE); #对重复数据去重 new_data <- unique(data) 重复值处理函数:unique,用于清洗数据中的重复值。 “dplyr”包中的distinct() 函数更强大: distinct(df,V1,V2) 根据V1和V2两个条件来进行去重 uniq
Erin
2018/01/09
8.2K0
使用R中merge()函数合并数据[通俗易懂]
在R中可以使用merge()函数去合并数据框,其强大之处在于在两个不同的数据框中标识共同的列或行。
全栈程序员站长
2022/07/01
5.3K0
使用R中merge()函数合并数据[通俗易懂]
bash 的条件和循环
本文介绍了bash中的条件语句和循环,包括if、elif、else、case、for和while等语句。作者通过实例介绍了这些语句的使用方式,并提供了参考文章链接,以便读者深入了解。
IMWeb前端团队
2018/01/08
1.3K0
R中的sweep函数
base包中的sweep函数是处理统计量的工具,一般可以结合apply()函数来使用。当我们我们需要将apply()统计出来的统计量代回原数据集去做相应操作的时候就可以用到sweep()。
生信交流平台
2022/09/21
2.7K0
R中的sweep函数
视频中的 I 帧,P 帧,B 帧
视频传输原理 视频是由一幅幅帧图像和一组音频构成的,视频的播放过程可以简单理解为一帧帧的画面按照时间顺序呈现出来的过程。但是在实际应用中,并不是每一帧都是完整的画面,因为如果每一帧画面都是完整的图片,那么一个视频的体积就会很大。这样对于网络传输或者视频数据存储来说成本太高,所以通常会对视频流中的一部分画面进行压缩(编码)处理。 编码器将多张图像进行编码后生产成一段一段的 GOP ( Group of Pictures ) 如下图, 解码器在播放时则是读取一段一段的 GOP 进行解码后读取画面再渲染显示。GO
用户1097444
2022/06/29
3.6K0
视频中的 I 帧,P 帧,B 帧
bash 的条件和循环
原文 条件语句和循环可以统称为流程控制,是一门语言最基础的部分。 bash 的流程控制和大家熟悉的语言非常类似,所以这块上手应该很快。 条件语句 条件这块建议先去瞧瞧《bash 的 Test》。bash 中的条件语句,基础就是 Test 。 if 先来个实例: x=5; if [ $x = 5 ]; then echo 'x equals 5.'; else echo 'x does not equal 5'; fi # 输出: x equals 5. 和我们熟悉的语言非常相似,不妨抽象
用户1097444
2022/06/29
7470
bash 的条件和循环
条件这块建议先去瞧瞧《bash 的 Test》。bash 中的条件语句,基础就是 Test 。
IMWeb前端团队
2019/12/04
9300
[Python从零到壹] 二.语法基础之条件语句、循环语句和函数
在讲诉条件语句之前,需要先补充语句块的知识。语句块并非一种语句,它是在条件为真时执行一次或执行多次的一组语句,在代码前放置空格缩进即可创建语句块。它类似于C、C++、Java等语言的大括号({ })来表示一个语句块的开始和结束。
Eastmount
2021/12/02
7880
[Python从零到壹] 二.语法基础之条件语句、循环语句和函数
Python知识点笔记-条件选择、循环和函数
Python知识点范围:条件选择、循环和函数 条件选择和循环 python的缩进是4个空格,之所以我们的Tab可以,因为友好的编辑器自动为我们转化了,如果是制表符的话会报错的; 函数定义、条件判断、循环条件后要加上冒号; elif是else if的缩写; for … in、while两种循环,break退出循环,continue跳过当前循环; for … in [] 指定循环列表里的内容; for … in遍历集合就是迭代; 索引迭代:for index,name in enumerate(list)。in
小蓝枣
2020/09/22
4750
[Python从零到壹] 二.语法基础之条件语句、循环语句和函数
欢迎大家来到“Python从零到壹”,在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界。所有文章都将结合案例、代码和作者的经验讲解,真心想把自己近十年的编程经验分享给大家,希望对您有所帮助,文章中不足之处也请海涵。
Eastmount
2021/02/20
9020
点击加载更多

相似问题

R数据帧中的条件循环

10

循环数据帧的r函数

11

R条件替换数据帧值

35

循环中的R条件数据帧

246

在R中检查数据帧中的值

214
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文