楼主: bqk
2074 7

[求助]matlab能做到這件事嗎? [推广有奖]

  • 0关注
  • 0粉丝

本科生

0%

还不是VIP/贵宾

-

威望
0
论坛币
44 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
611 点
帖子
35
精华
0
在线时间
96 小时
注册时间
2009-10-24
最后登录
2013-5-1

楼主
bqk 发表于 2010-10-20 15:07:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我有一份数据如下面这样



Trade_date  Expr_date  Mid



我想把它整理成像这样


Trade_date  Mid_1  Mid_2 ... Expr_date_1  Expr_date_2 ...



请问各位大大matlab里要怎么做才会从上面那样变下面那样?
二维码

扫码加我 拉你入群

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

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

关键词:MATLAB matla atlab Atl Lab 求助 MATLAB

沙发
liuxin9023 发表于 2010-10-20 15:52:45
用Excel做个分类汇总就出来了 用Matlab太大材小用了

藤椅
lustboy 发表于 2010-10-20 19:30:25
Matlab, 命令reshape可以搞定。

板凳
bqk 发表于 2010-10-21 01:04:43
2.png
1.png
因为mid exp_date的个数不一定
而且数量有34400
所以上面大哥提的方法我也不知道要怎么用…..

希望大哥能指点我一二

报纸
Xaero 发表于 2010-10-21 13:34:23
4# bqk

如果很复杂的话,用Excel做不来的话可以考虑用Matlab,参考:

http://blog.macro2.org/2010-10/谈谈集合操作-unique.html
十年一觉扬州梦。
智不足以Academy,才尚不够Industry,[情无力于Life]。

地板
lustboy 发表于 2010-10-21 21:50:39
最笨的方法,tradedateid = [2-jan-92,2-jan-92,.......];for i=1:n;for j =1:3; if tradedate==tradedatid(i); x1(i,j)=y(j,i);end;end;end

7
yudai2006 发表于 2010-10-22 22:21:23
首先,打开 file --- import data
选择你想要导入的数据以后,一直点击,直至出现下图:
1.png
然后,再点击一下图中的Tab,(必须要点一下!)
最后,导入完成以后,如果数据和你显示的没有太大的出入,
那么直接运行下列命令即可实现:
m=length(textdata(:,1));
trade_data=cell(m/2,3);
exp_data=zeros(m/2,2);
for nn=1:(m-1)
    if strcmp(textdata(nn,1),textdata((nn+1),1))==1
       trade_data((nn+1)./2,1)=textdata(nn,1);
       trade_data((nn+1)./2,2)=textdata(nn,2);
       trade_data((nn+1)./2,3)=textdata((nn+1),2);
       exp_data((nn+1)./2,1)=data(nn);
       exp_data((nn+1)./2,2)=data(nn+1);
    end
end
Only  the Strong  Survive

8
bqk 发表于 2010-10-23 15:29:07
感謝各位前輩的幫忙
我已經試了各位前輩提供的方法
Xaero前輩的方法順利的解決了我的問題
真是太感謝了
沒想到這個函數有這樣的一個用法 太神奇了
至於yudai2006前輩的方法
我試了一下好像有點出錯… 正在試著想辦法了解中

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

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