作者keeochange (一块两毛五)
看板R_Language
标题[问题] 购物篮的物品转换
时间Sat May 27 17:13:54 2017
[问题类型]:
程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
[软体熟悉度]:
新手(没写过程式,R 是我的第一次)
[问题叙述]:
不好意思又来拜托各位大神,昨天问了如何把购物篮转格式後成功的跑了初次分析,
但现在又有了新的问题,由於购物篮中同一件物品的名称不一定相同,所以跑出来
的结果非常不准确,打算再从资料上下手。
目前的构想是利用grep把关键字抓出,然後重新赋值给这些资料,再回传到原本的
资料中,
例如:
Names=grep("台湾啤酒",Data) #搜寻台湾啤酒关键字
DataT=Data[Names,] #取出子集
DataT$品名=1000 #将"台湾啤酒"改成代号1000
然後我写到这边就卡住了,不知道该用甚麽函数将改好的资料放回原先的资料中,
这是我粗浅的想法,如果神人们有更好的作法,还烦请不吝赐教。
谢谢大家
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.119.120.6
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1495876437.A.755.html
※ 编辑: keeochange (140.119.120.6), 05/27/2017 17:31:57
1F:→ jojojen: 转成transaction前直接用revalue换掉? 05/27 17:47
2F:推 locka: Data[grep("台湾啤酒",Data),"品名"] <- 1000 05/27 17:59
3F:→ locka: 这样会新增一个叫做品名的栏位 不知道是不是你要的? 05/27 18:01
Revalue我试过了,好像不太行,因为很多资料不会乖乖写台湾啤酒
那L大的感觉不错 ,我试试看
※ 编辑: keeochange (140.119.120.6), 05/27/2017 18:09:42
4F:推 jojojen: ok, 那应该用case_when + regex 05/27 18:37
6F:→ jojojen: en/ 05/27 18:37
谢谢JOJO大,case_when十分好用
※ 编辑: keeochange (140.119.121.6), 05/29/2017 17:40:14