R_Language 板


LINE

- 问题: [问题类型]: 程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来) [软体熟悉度]: 入门(写过其他程式,只是对语法不熟悉) [问题叙述]:      BaseLine.csv:https://goo.gl/Zdq00K TmpCalcuBusNo._V0.csv:https://goo.gl/SWmaUh 如题,手边有两个经过整理的资料集「BaseLine.csv」「TmpCalcuBusNo._V0.csv」 两资料集内分别有4个相同的栏位名称: Gobackx, From, Toward, Bus_No 我想把「BaseLine.csv」的「Tmp_TravelTime」栏位资料merge过去TmpCal那个csv 然後另存成新资料集「TimeCalcu_temp」,所使用的程式码如下: TimeCalcu_temp <- merge( TmpCalcu_BusNo._V0, BaseLine, by = c("Gobackx","Toward","From","Bus_No") ,all.x = TRUE) 档案是有照我想要的方式merge起来了,如新资料集第一笔所示: Gobackx Toward From Bus_No => Tmp_TravelTime 0 五权学士路口 莒光新城 12 => 27 回头去找「BaseLine.csv」确认, 根据上述 Gobackx, Toward, From, Bus_No找到对应资料:BaseLine.csv第854笔 该笔资料之 Tmp_TravelTime = 27 无误 但是可以发现另存成的新资料集 TimeCalcu_temp 的 Tmp_TravelTime 出现大量NA值 我想知道是否 merge 函数使用有误,致无法得出我想要的结果呢? 还请板上大大协助run一下资料集看看问题出在哪里,先谢谢大家了!!!! [程式范例]: [环境叙述]: 请提供 sessionInfo() 的输出结果, 里面含有所有你使用的作业系统、R 的版本和套件版本资讯, 让版友更容易找出错误 [关键字]: merge 选择性,也许未来有用 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.113.136.217
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1486202506.A.4DF.html ※ 编辑: joson4921 (140.113.136.217), 02/04/2017 18:04:33
1F:→ celestialgod: all.x = TRUE 出错吧 02/04 20:04
2F:→ celestialgod: 你保留全部的左表,没有mapping到的当然是NA 02/04 20:04
3F:→ joson4921: 不是这样的,以新建的资料集第4874笔来说,该笔资料Gobac 02/04 21:05
4F:→ joson4921: Gobackx=0,Toward=大东纺织(振兴路),From=莒光新城, 02/04 21:06
5F:→ joson4921: Bus_No=3,根据这些资料去找BaseLine是可以找到对应的 02/04 21:08
6F:→ joson4921: Tmp_TravelTime=1723,而且仔细一看会发现BaseLine里面 02/04 21:09
7F:→ joson4921: 当Gobackx=0,From=莒光新城,Toward=大东纺织(振兴路)时 02/04 21:11
8F:→ joson4921: Bus_No栏位=3~62都有资料,但新增的资料集里面全是NA 02/04 21:12
9F:→ joson4921: 我也搞不懂为什麽会这样,左表map出来17.4万笔资料里面 02/04 21:15
10F:→ joson4921: 有9万笔资料是NA...而且随便抓都是BaseLine有的资料,又 02/04 21:17
11F:→ joson4921: 不是不存在的资料,真的很抱歉再麻烦板上大大看看哪里出 02/04 21:18
12F:→ joson4921: 问题,拜托了!!谢谢!! 02/04 21:18
13F:→ celestialgod: http://imgur.com/a/vAavf 我读起来是正常的阿 02/04 21:38
14F:→ celestialgod: http://imgur.com/scBLZvc 看起来也没naY 02/04 21:41
15F:→ celestialgod: Y是多打得 02/04 21:41
16F:→ celestialgod: Note: 我的data.table是 1.10.1 02/04 21:42
17F:→ celestialgod: R是MRO 3.3.1,windows 10 64bit 02/04 21:42
18F:→ joson4921: 了解…待会再确认看看版本有没有影响@@ 02/04 23:34
见鬼了... http://imgur.com/IJ25uLX 下面是用我原本的程式去读 TmpCalcu_BusNo._V0, BaseLine 这两个资料集 上面是仿照c大的直接读取我传给c大的csv 明明都是那两个data.table的东西 为什麽c大读我输出的csv就可以,结果我自己直接读的就不行 ... ...所以我就敲了class()进去试,结果 http://imgur.com/C2lryP7 c大输入用的DT2跟DT1是同样的格式: > class(DT2) [1] "data.table" "data.frame" > class(DT1) [1] "data.table" "data.frame" 我的 TmpCalcu_BusNo._V0 跟 BaseLine 的格式是: > class(TmpCalcu_BusNo._V0) [1] "data.table" "data.frame" > class(BaseLine) [1] "grouped_df" "tbl_df" "tbl" "data.frame" 所以问题是出在格式不对吗-.- 然後刚刚试着用as.data.frame(BaseLine)去转,可是class()出来发现格式没有变 ...所以是我的BaseLine产生过程有问题吗? 附上BaseLine产生的程式码如下: http://imgur.com/qrP8Ntq 救命... ※ 编辑: joson4921 (1.161.166.207), 02/05/2017 01:01:58 ※ 编辑: joson4921 (1.161.166.207), 02/05/2017 01:02:38
19F:→ Wush978: 用 as.data.frame 或直接 class(BaseLine) <- "data.fram 02/05 02:01
20F:→ Wush978: e" 看看呢? 02/05 02:01
http://imgur.com/aBkpMic 有试着用W大的方法去改了,指定进去之後BaseLine确实变成了"data.frame" 但後面merge起来的结果并没有因此改变,无法做到先把资料输出成csv再读入一样的结果 ...我只剩下输出成csv再读入做後续运算这条路了吗-.-||| ※ 编辑: joson4921 (1.161.166.207), 02/05/2017 02:35:20
21F:→ celestialgod: BaseLine <- as.data.table(BaseLine) ? 02/05 02:43
22F:→ celestialgod: 我猜问题是因为是merge.data.table跟 02/05 02:44
23F:→ celestialgod: merge.data.frame这两个method有一些不同 02/05 02:44
24F:→ celestialgod: 所以没办法完全相容,在某些点上出问题了 02/05 02:44
25F:→ celestialgod: 先试试看都转成data.table看看吧 02/05 02:44
26F:→ celestialgod: 或是 直接用 setDT(BaseLine) 02/05 02:44
27F:→ celestialgod: 然後再试一次 02/05 02:45
http://imgur.com/hDUlltU 上图第一个结果是 BaseLine <- as.data.table(BaseLine) 第二个结果是 BaseLine <- setDT(BaseLine) 两个都转成 [1] "data.table" "data.frame" 了,但程式跑出来还是存在NA 0.0 ※ 编辑: joson4921 (140.113.136.220), 02/05/2017 11:58:50
28F:→ joson4921: 暂时就先输出再读入吧,虽然我还是不了解哪边出了问题@@ 02/05 14:28
29F:→ joson4921: 谢谢楼上大大们出手协助,谢谢!! 02/05 14:28







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP