楼主: superyxo
855 2

[问答] 问个比较复杂的问题,情各位帮忙 [推广有奖]

  • 2关注
  • 1粉丝

硕士生

64%

还不是VIP/贵宾

-

威望
0
论坛币
91 个
通用积分
1.0005
学术水平
7 点
热心指数
2 点
信用等级
2 点
经验
9870 点
帖子
93
精华
0
在线时间
199 小时
注册时间
2007-8-28
最后登录
2021-4-15

楼主
superyxo 发表于 2018-9-25 22:16:11 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

请各位帮忙看一下,我的问题如下,首先我的数据如下
id <- rep(letters[1:3],5)
year <- seq(2001,2005)
ceo <- sample(LETTERS, 15, replace = T)
cfo <- sample(LETTERS, 15, replace = T)

df <- data.frame(id,year, ceo, cfo)

df <- arrange(df,id,year)

数据大概是这个样子:
WeChat Screenshot_20180925220529.png

我想做的是在这个数据里加进一列,dummy,如果某年某个id的cfo恰巧是另一个id相同年份的ceo,那么dummy为1,其他情况为0。我上边举得这个数据的例子不太好,数据里没有这种情况。如果把上边数据改一下,2005年id c的cfo是H,那么2005年id c这一行的dummy应该是1,因为同一年,2005年这一年id b的ceo恰巧是H。2004年id a这一行的dummy也是0,因为同一个id同一个年份ceo和cfo一样,dummy不算1,必须是和同一年份其他id的ceo相同才算1.


二维码

扫码加我 拉你入群

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

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

关键词:请各位帮忙 我的问题

回帖推荐

沙发
fdsasdfddsa 发表于 2018-9-26 15:18:41
  1. check=function(row){
  2.   select=subset(df,id!=row["id"] & year==row["year"] & ceo==row["cfo"])
  3.   if(dim(select)[1]==0) return(0) else return(1)
  4. }
  5. dummy=apply(df,1,check)
  6. cbind(df,dummy)
复制代码
已有 3 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
刘彦楼 + 100 + 5 精彩帖子
superyxo + 5 + 1 + 1 + 1 精彩帖子
cheetahfly + 10 热心帮助其他会员

总评分: 经验 + 100  论坛币 + 15  学术水平 + 1  热心指数 + 6  信用等级 + 1   查看全部评分

藤椅
superyxo 发表于 2018-9-27 10:49:13
fdsasdfddsa 发表于 2018-9-26 15:18
谢谢!就是这个!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 14:56