需求:在分析数据时需要对数据记录的格式进行统一。
例如:股票代码格式为000000,由于数据记录问题,部分股票代码被错误记录,比如 “000002” 被错误记录为“2”。
错误的记录使得数据无法得到正确的归类,需要将代码前面补0,使所有的代码能够统一为同样的 “000000” 格式。例如在“2”前面补0,变成 “000002” ;在 “100” 前面补0,变成 “000100” 。
解决:
使用 stringr 编程包 使用 str_pad
str_pad(string, width, side = c("left", "right", "both"), pad = " ")
string
- 字符
width
- 字符串长度
side
- 添加字符的位置(left,right)
pad
- 需要填充的字符 (optional,默认为空格)
实战:
在Symbol中的字符串的左边补0,使被错误记录的股票代码补充为 “000000” 的6个字符的长度。
> DT$Symbol<-as.character(DT$Symbol)
> str(DT$Symbol)
> DT$Symbol<-str_pad(DT$Symbol,6,side="left","0")
关于 str_pad 的更多信息: