[原创][R语言]股票分析实战[7]:时间转换 与 股票涨幅计算

[简介]

常用网名: 猪头三

出生日期: 1981.XX.XX

QQ联系: 643439947

个人网站: 80x86汇编小站 https://www.x86asm.org

编程生涯: 2001年~至今[共22年]

职业生涯: 20年

开发语言: C/C++、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python

开发工具: Visual Studio、Delphi、XCode、Eclipse、C++ Builder

技能种类: 逆向 驱动 磁盘 文件

研发领域: Windows应用软件安全/Windows系统内核安全/Windows系统磁盘数据安全/macOS应用软件安全

项目经历: 磁盘性能优化/文件系统数据恢复/文件信息采集/敏感文件监测跟踪/网络安全检测

[序言]

在股票数据分析中, 有时需要把"年/月/日"时间转换为"周内第N天" 和 计算收盘价的涨幅 这2个是非常有用的的技巧, 对统计分析很有帮助.

[转换代码1: "年/月/日"时间转换为"周内第N天"]

假如有一个数据框stock_demo包含一个Date列, 内容是整型的时间数字, 比如:

20231229

20231228

20231227

20231225

20231222

20231221

20231220

20231219

20231218

20231215

R 复制代码
# 针对Date列转换为周内第几天, 并追加新的数据列DW
stock_Date <- as.Date(as.character(stock_demo$Date), format = "%Y%m%d")
stock_Days <- as.integer(format(stock_Date, "%u"))

# 把"周内第几天"的数据重新绑到stock_demo
stock_demo$Days <- as.character(stock_Days)

[转换代码2: 计算收盘价的涨幅]

假如有一个数据框stock_demo包含一个C列, 内容是浮点型的收盘价, 比如:

2.47

2.38

2.34

2.36

2.39

2.44

2.42

2.46

2.46

2.50

2.53

2.50

2.51

2.48

2.43

2.51

R 复制代码
# 针对收盘价计算涨幅, 并追加新的数据列RC
# 计算涨幅之后, 由于行数不匹配, 因此需要NA进行扩充
c_Rise <- with(stock_demo, round(((C[-length(C)] - C[-1]) / C[-1])*100, 2))
c_Rise <- c(c_Rise, rep(NA, nrow(stock_demo)-length(c_Rise)))
C_Rise_Int <- as.integer(c_Rise)
stock_demo <- cbind(stock_demo, RC = c_Rise)
stock_demo <- cbind(stock_demo, RCI = C_Rise_Int)

# 整理新的数据框(去掉包含由NA的行)
stock_Data <- na.omit(stock_demo)

[结尾]

这2个代码技巧, 都是高频率的, 希望对大家都有帮助.

相关推荐
PersistJiao1 小时前
在 Spark RDD 中,sortBy 和 top 算子的各自适用场景
大数据·spark·top·sortby
2301_811274311 小时前
大数据基于Spring Boot的化妆品推荐系统的设计与实现
大数据·spring boot·后端
Yz98761 小时前
hive的存储格式
大数据·数据库·数据仓库·hive·hadoop·数据库开发
青云交1 小时前
大数据新视界 -- 大数据大厂之 Hive 数据导入:多源数据集成的策略与实战(上)(3/ 30)
大数据·数据清洗·电商数据·数据整合·hive 数据导入·多源数据·影视娱乐数据
武子康1 小时前
大数据-230 离线数仓 - ODS层的构建 Hive处理 UDF 与 SerDe 处理 与 当前总结
java·大数据·数据仓库·hive·hadoop·sql·hdfs
武子康1 小时前
大数据-231 离线数仓 - DWS 层、ADS 层的创建 Hive 执行脚本
java·大数据·数据仓库·hive·hadoop·mysql
时差9531 小时前
Flink Standalone集群模式安装部署
大数据·分布式·flink·部署
锵锵锵锵~蒋2 小时前
实时数据开发 | 怎么通俗理解Flink容错机制,提到的checkpoint、barrier、Savepoint、sink都是什么
大数据·数据仓库·flink·实时数据开发
二进制_博客2 小时前
Flink学习连载文章4-flink中的各种转换操作
大数据·学习·flink
大数据编程之光2 小时前
Flink入门介绍
大数据·flink