R_Language 板


LINE

[问题类型]: 请把以下不需要的部份删除 程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来) [软体熟悉度]: 请把以下不需要的部份删除 入门(写过其他程式,只是对语法不熟悉) [问题叙述]: 请简略描述你所要做的事情,或是这个程式的目的 大家好 我想问问大家如果遇到这样的内容 会怎麽用R写? 我在网路上查到aggregate可以针对不同的groups 算出组平均 例如 group X1 A obs1 obs2 X2 B obs1 obs2 用 aggregate就可以把A和B的分组平均算出 我也想用这方法 但我需要的要再多一个步骤 我现在有6248个观测值 他们来自175个不同的LotID 每个LotID的样本个数(就是观测值个数)在20,32,50和80之间 我要根据不同的样本数随机抽样15,20,25,和35 我的做法是 先用table查看每个LotID有多少观测值 然後建立一个栏位叫做Osize 就可以告诉我每个对应的LotID的本来的size 然後再建立一个新栏位NSize 根据Osize放入我预计要抽样的数目 然後建立index=sample(Osize, Nsize, replace=FALSE) 这会是每一个LotID我要取的index value 现在就是我要怎麽把个别的LotID分离出来(不一定要放到不同的栏位 但要分开取平均) 我目前的做法是用loop for (i in 1:nrow(Data)) 这让我从row1跑到最後一个6248 row (if indentical(Data$LotID[i],Data$LotID[i-1])==TRUE) ##这就告诉我第i row 会开始新的LotID 但我困难点在於如何把i这row之前的那i-1得到数值并根据其数量来取样呢? 所以我就设定 for(j in 1:175) 因为总共有175个LotID 假设Observation这个栏位是我要的观察值 A <- as.vector(Data$Observation) A <- as.numeric(A) ##我把观测值全部抓出来变成一个数列似乎对我个人比较好懂 Data$mean <- mean(Data$Observation[i:i+j*Osize[i]]) 因为如果以i为21列来看 如果前面i-1是20个数值 且都属於同一个LotID 那我就是要从这20个值当中 取出15个(因为Osize=20 Nsize=15) 但我的困扰在於j是跟着LotID i是跟着观测值 两者其实有关系 但我的写法似乎没办法把两者牵在一起 aggregate求组平均的算法很容易 aggregate(Data$Observation, Data$LotID,summarize, mean) 大这是这样 以上是我凭记忆打的 不确定 所以如果可以把观测值根据随机取样的样本先分好 再用aggregate去取平均 是一种做法 但感觉直接根据要娶随机的size去直接取平均似乎是更简易的方式 但我目前只会写loop 不知道大家有没有什麽建议? 感谢大家了 [程式范例]: [环境叙述]: 请提供 sessionInfo() 的输出结果, 里面含有所有你使用的作业系统、R 的版本和套件版本资讯, 让版友更容易找出错误 [关键字]: 选择性,也许未来有用 -- --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 68.180.87.229 (美国)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1562119714.A.431.html
1F:→ andrew43: 其实aggregate()是可以自定义function的。 07/03 13:38
2F:→ andrew43: http://www.ideone.com/kJ2B0d 07/03 14:31
3F:→ andrew43: 若想要连抽出项目的id都要知道,需要再改写。 07/03 14:31
4F:→ AmigoSafin: 谢谢A大~我用aggregate解决了 感恩!! 07/06 23:02
5F:→ AmigoSafin: 这是A大您写的吗?太感激了!!厉害! 07/06 23:05
6F:→ andrew43: 这东西叫匿名函数,很实用。google: R+匿名函数 07/06 23:18







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灯, 水草

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

TOP