楼主: K&B
3165 4

[问答] R中如何将一列向量按照中间大然后向两边递减排序 [推广有奖]

  • 0关注
  • 0粉丝

高中生

52%

还不是VIP/贵宾

-

威望
0
论坛币
997 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
112 点
帖子
6
精华
0
在线时间
54 小时
注册时间
2013-5-5
最后登录
2016-9-23

楼主
K&B 发表于 2014-12-3 21:40:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
R中如何将一列向量按照中间大然后向两边递减排序
二维码

扫码加我 拉你入群

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

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

关键词:如何

沙发
qoiqpwqr 发表于 2014-12-4 06:27:21
怎么个向两边递减?
举个简单例子?

比如你有1,2,3,4,5
你是想要2,4,5,3,1?

藤椅
512002855 发表于 2014-12-9 16:51:18
这么神奇的需求,只能自己编程实现了

板凳
K&B 发表于 2015-1-7 09:22:51
qoiqpwqr 发表于 2014-12-4 06:27
怎么个向两边递减?
举个简单例子?
怎么编这个程序,多谢了

报纸
jiangbeilu 学生认证  发表于 2015-1-7 10:21:31
给你提供个思路,分成奇偶数来考虑。给你提供一个奇数的例子:
先把数按照降序排列,然后,最大的数是第一个,接下来,你只需用以2为间隔的等差数列提取,然后用c函数连接起来就可以得到你需要的函数了。
  1. x=1:9
  2. y<-sort(x,dec=TRUE)
  3. k=(length(x)-1)/2
  4. c(y[seq(2*k,2,-2)],y[1],y[seq(3,(2*k+1),2)])
复制代码

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

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