全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
2674 3
2017-12-01
大家好,现在碰到一个问题,请教大家:
求向量中的元素截止到自己本身的计数,如
x <- c("a","a","a","b","b")
想得到a,b在向量的截止到自己本身时的计数,得到如下结果:
a 1
a 2
a 3
b 1
b 2
想用R语言,应该用什么函数或怎样编程,谢谢大家了。
二维码

扫码加我 拉你入群

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

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

全部回复
2017-12-1 16:21:35
for(i in 1:length(x)){
    y[i]=sum(x[1:i-1]==x[i])+1
}
v<-cbind(x,y)
v

二维码

扫码加我 拉你入群

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

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

2017-12-1 16:37:59
GOD.M.W 发表于 2017-12-1 16:21
for(i in 1:length(x)){
    y=sum(x[1:i-1]==x)+1
}
非常感谢,另有一个疑问,为什么要-1,+1,
这样可行吗:
for(i in 1:length(x)){
    y=sum(x[1:i]==x)
}
二维码

扫码加我 拉你入群

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

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

2017-12-1 16:56:09
华大 发表于 2017-12-1 16:37
非常感谢,另有一个疑问,为什么要-1,+1,
这样可行吗:
for(i in 1:length(x)){
1:i-1是比较现在这个数与之前的数有多少个相等;+1是这个数的频数加1.
你这个是不行的,x不能和单个数比,可以用%in%,而且y返回的值是一样的。
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群