[问题] 如何内容资料转置成字段名称来计算

楼主: frojet (飞稷)   2019-03-18 17:11:46
[问题类型]:
程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
[软件熟悉度]:
入门(写过其他程式,只是对语法不熟悉)
[问题叙述]:
我有一组近5万笔资料,格式如下
每笔"门诊序号"就是一次看诊纪录,"处置代码"为某个药品代号
每个病人看诊,都会开立1~5种不等药品。
https://i.imgur.com/UXNj7M6.jpg
原始资料如左图,但我想转换资料排版(如右图)
将药品代号转换成每一个字段,
根据原资料有开立该药品,则在该栏成 注记成 Yes
方便我后续能统计特定药品使用频率
[程式范例]:
不知道如何写?
[环境叙述]:
windows 10
R version 3.4.4
[关键字]:
作者: locka (locka)   2019-03-18 17:55:00
所以所有药品(1:n)要变成字段X2到Xn是吗?门诊序号会不会重复?
楼主: frojet (飞稷)   2019-03-18 18:11:00
门诊序号不会重复如果能把上百个药品名称都转换各别字段是最棒的。 不过我这里目前分析需求,其实只要抓出其中六个药品来对应统计(如我图上 绿色 和红色的药品)是目前要分析的项目
作者: andrew43 (讨厌有好心推文后删文者)   2019-03-18 19:25:00
melt() 和 dcast(),见 https://ideone.com/T623mF
作者: cywhale (cywhale)   2019-03-18 22:29:00
看起来适用melt, dcast来解,这类问题应该提供部分资料较方便解答...,只有img, 里头资料又很特殊,很难自动产生题外话前日再用dcast使用自订fun.aggregat意外踩到一bug后来查到issue https://goo.gl/C1kiax
楼主: frojet (飞稷)   2019-03-19 04:23:00
谢谢各位,是说 我要如何提供一小部分资料?各位通常会建议上传至那个网站,供人下载
作者: tcn1john (momo)   2019-03-19 14:35:00
如果先把处置代号paste起来合并成一栏,再用grep抓药名不知道如何?
作者: andrew43 (讨厌有好心推文后删文者)   2019-03-19 23:11:00
云端空间随便一个都可以,把敏感资料保护或隐敝好就行
作者: tcn1john (momo)   2019-03-20 00:58:00
新手练习一下: https://pastebin.com/Dc7L4WwU
作者: andrew43 (讨厌有好心推文后删文者)   2019-03-20 08:42:00
回楼上,这不太稳健,要确定pattern只会抓到完整名才行
作者: Meng24 (OnFire)   2019-03-20 13:16:00
我想到很土法炼钢的方式XD新建一个字段名称是药品名的字段然后用中括号选出你的处置代码中有药品的门诊号码 再将这些门诊号码的药品名字段填入yes就好了

Links booklink

Contact Us: admin [ a t ] ucptt.com