我有一个 35=S(报价消息;“标签=值”)的 csv/日志文件,我需要将费率提取到适当的 CSV 文件中以进行数据挖掘。这不是严格的 FIX 相关,它更多是关于如何清理数据集的 R 相关问题。
原始消息如下所示:
190=1.1204 ,191=-0.000029,193=20141008,537=0 ,631=1.12029575,642=0.000145,10=56
190=7.20425,191=0.000141 ,537=0 ,631=7.2034485,10=140 , ,
190=1.26237,191=0 ,537=1 ,10=068 , , ,
Run Code Online (Sandbox Code Playgroud)
我首先需要获得一个看起来像这样的中间数据集,其中对齐了相同的标签。
190=1.1204 ,191=-0.000029,193=20141008,537=0,631=1.12029575,642=0.000145,10=56
190=7.20425,191=0.000141 , ,537=0,631=7.2034485 , ,10=140
190=1.26237,191=0 , ,537=1, , ,10=068
Run Code Online (Sandbox Code Playgroud)
反过来,这将需要转换为:
190 ,191 ,193 ,537,631 ,642 ,10
1.1204 ,-0.000029,20141008,0 ,1.12029575,0.000145,56
7.20425,0.000141 , ,0 ,7.2034485 , ,140
1.26237,0 , ,1 , , ,068
Run Code Online (Sandbox Code Playgroud)
我正在用 awk 开发一个 bash 脚本,但我想知道我是否可以在 R 中做到这一点。目前,我最大的挑战是到达中间表。从中间到决赛桌,我想到将 R 与 tidyr 包一起使用,特别是函数“separate”。如果有人可以提出更好的逻辑,我将不胜感激!