楼主: toby3003
4876 19

[问答] 求助----R软件数据集合并!!!!急 [推广有奖]

  • 3关注
  • 0粉丝

本科生

2%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
571 点
帖子
74
精华
0
在线时间
53 小时
注册时间
2012-4-18
最后登录
2019-1-3

楼主
toby3003 发表于 2014-3-19 16:15:24 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
数据集1:
ID
time dose
11 a
21 b
31 c
41 d
数据集2:
IDtime dose
12 x
22 y
32 z
希望合并成:
IDtime dose
1 1 a
1 2 x
2 1 b
2 2 y
3 1 c
3 2 z
怎样编辑好呢,多谢多谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:r软件 数据集 dose time DOS 软件

回帖推荐

风之栖梧 发表于20楼  查看完整内容

楼主,我看了你首先的问题,可以用reshape包来重铸,

jmpamao 发表于18楼  查看完整内容

你的需求是这样吗?把所有有12次随访的 数据集合。 比如 ID1,有1:14次随访,只需要其1:12的数据, ID2 有1:5次的随访,ID5舍弃?再试试看下面的,看看 要多少时间? @zhangyangsmith[/backcolor] 这种形式是text=“复制,粘贴方便”

沙发
toby3003 发表于 2014-3-19 16:49:03
大神们帮帮忙==:我用merge命令貌似搞不定。主要就是要共同项保留,

藤椅
nieqiang110 学生认证  发表于 2014-3-19 18:58:35
data<-rbind(data1,data2)
data<-data[order(data$ID),]

板凳
toby3003 发表于 2014-3-19 22:15:35
nieqiang110 发表于 2014-3-19 18:58
data
貌似不可以的,我只想保留共有的

报纸
jmpamao 发表于 2014-3-19 22:19:23
toby3003 发表于 2014-3-19 22:15
貌似不可以的,我只想保留共有的
ID 共有吗?

地板
jmpamao 发表于 2014-3-19 22:29:08
如果是ID 共有的话,就是保留重复项
  1. data <- rbind(data1,data2)
  2. data <-data[duplicated(data[,1])+duplicated(data[,1],fromLast=T)>0,]
  3. data <- data[order(data[,1]),]
复制代码

7
toby3003 发表于 2014-3-19 23:21:18
jmpamao 发表于 2014-3-19 22:29
如果是ID 共有的话,就是保留重复项
多谢,但是我有点看不懂,有共同id的,>0是什么意思呢?两个duplicated相加是什么意思呢,以前没有用过这条命令,谢谢

8
jmpamao 发表于 2014-3-20 09:12:37
toby3003 发表于 2014-3-19 23:21
多谢,但是我有点看不懂,有共同id的,>0是什么意思呢?两个duplicated相加是什么意思呢,以前没有用过这 ...
duplicated ()判断是否重复,返回的 逻辑值
       1 2 3 4 1 2 3
如: F F F F T T T (重头判断)
      T T T F F F F  (重尾部判断, fromLast=T)
+
-------------------------------
      1  1 1 0 1 1 1  >0  T T T F T T T

具体看帮助吧

9
toby3003 发表于 2014-3-20 10:32:14
jmpamao 发表于 2014-3-20 09:12
duplicated ()判断是否重复,返回的 逻辑值
       1 2 3 4 1 2 3
如: F F F F T T T (重头判断)
多谢您的回答,我想请问一下,按照我这样的编辑,是不是也可以
  1. data<-rbind(data1[match(data2$id,data1$id),],data2)
复制代码

10
jmpamao 发表于 2014-3-20 21:35:52
toby3003 发表于 2014-3-20 10:32
多谢您的回答,我想请问一下,按照我这样的编辑,是不是也可以
要看你数据。。。。1、data1,data2  中 ID 都是独立的,没有重复项
2、data1  中ID 包含  data2中的ID
那么应该没有问题

match一旦不满足着两个条件 应该会出NA

而 duplicated 只需要满足第一个条件






#####下面说的,有点是答非所问####但也不删除了#####
match 如果匹配成功,返回的是 第一个值得 位置
  1. match(c(1,2),c(3,1,1))
  2. >[1]  2 NA
复制代码
c(1,2) 中的1 跟c(3,1,1)匹配, 第二个1匹配OK, 返回被匹配的位置为2,
C(1,2)  中的2匹配不成功,返回NA.
延伸下, %in% 比match 用的多, 其实它的返回值 是判断   match 返回值是否大于0(其实就是看是否有NA),
c(1,2)%in%c(3,1,1)
> [1] T F

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-3 12:09