gpt4 book ai didi

R 检查数据帧中的行对

转载 作者:行者123 更新时间:2023-12-04 22:25:28 25 4
gpt4 key购买 nike

我有一个数据框保存有关这样的选项的信息

> chData
myIdx strike_price date exdate cp_flag strike_price return
1 8355342 605000 1996-04-02 1996-05-18 P 605000 0.002340
2 8355433 605000 1996-04-02 1996-05-18 C 605000 0.002340
3 8356541 605000 1996-04-09 1996-05-18 P 605000 -0.003182
4 8356629 605000 1996-04-09 1996-05-18 C 605000 -0.003182
5 8358033 605000 1996-04-16 1996-05-18 P 605000 0.003907
6 8358119 605000 1996-04-16 1996-05-18 C 605000 0.003907
7 8359391 605000 1996-04-23 1996-05-18 P 605000 0.005695

其中 cp_flag 表示某个选项是看涨期权或看跌期权。有什么方法可以确保每个日期都有一个看涨期权和一个看跌期权,并删除不存在的行?我可以用 for 循环来做,但有没有更聪明的方法?

最佳答案

获取具有 P 的日期和具有 C 的日期,并使用 intersect 查找同时具有两者的日期。

keep_dates <- with(x, intersect(date[cp_flag=='P'], date[cp_flag=='C']) )
# "1996-04-02" "1996-04-09" "1996-04-16"

仅保留在 keep_dates 中出现日期的行。
x[ x$date %in% keep_dates, ]
# myIdx strike_price date exdate cp_flag strike_price.1
# 8355342 605000 1996-04-02 1996-05-18 P 605000
# 8355433 605000 1996-04-02 1996-05-18 C 605000
# 8356541 605000 1996-04-09 1996-05-18 P 605000
# 8356629 605000 1996-04-09 1996-05-18 C 605000
# 8358033 605000 1996-04-16 1996-05-18 P 605000
# 8358119 605000 1996-04-16 1996-05-18 C 605000

关于R 检查数据帧中的行对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3420950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com