楼主: renliting
13078 9

如何用stata拆分数据 [推广有奖]

  • 1关注
  • 10粉丝

已卖:79份资源

讲师

59%

还不是VIP/贵宾

-

威望
0
论坛币
563 个
通用积分
0.4800
学术水平
3 点
热心指数
5 点
信用等级
3 点
经验
14395 点
帖子
620
精华
0
在线时间
407 小时
注册时间
2008-10-27
最后登录
2023-4-17

楼主
renliting 发表于 2012-10-15 20:23:58 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
假如有一个36*10的数据库,即有36行10列,我想把第一列的36行数据每4行拆成一列,从而拆成9列;以后各列采用同样的方法拆分,最后形成4*90的数据结构。
1                                            1   2   3            
1                                            1   2   3
1                                            1   2   3
1                                            1   2   3
2
2       拆分以后变成   
2
2
3
3
3
3

不知道如何用stata实现?求高手指导~

二维码

扫码加我 拉你入群

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

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

关键词:Stata tata 如何用 数据结构 求高手 如何

冷峻的外表下有颗理性的心。

沙发
yddd726 发表于 2012-10-15 20:25:29
学习之

藤椅
空山空语 在职认证  发表于 2012-10-15 20:36:33
reshape 说不定可以,类似把wide 改为 long
等待

板凳
大白菜2012 发表于 2012-10-16 01:27:51
clear

input year var

1        7
1        7
1        7
1        7
2        7
2        7
2        7
2        7
3        7
3        7
3        7
3        7
4        7
4        7
4        7
4        7
5        7
5        7
5        7
5        7

end

bys year:gen id=_n
reshape wide var, i(id) j(year)

l

元芳,侬怎么L00K?

报纸
renliting 发表于 2012-10-16 14:10:32
大白菜2012 发表于 2012-10-16 01:27
clear

input year var
我的数据是36行*2000列的矩阵,需要把每一列拆分成9列,变成4行*18000列的矩阵。用您的方法是不是有点太麻烦了?本人小菜鸟,求指点~
冷峻的外表下有颗理性的心。

地板
大白菜2012 发表于 2012-10-16 22:56:48
renliting 发表于 2012-10-16 14:10
我的数据是36行*2000列的矩阵,需要把每一列拆分成9列,变成4行*18000列的矩阵。用您的方法是不是有点太麻 ...
看这个,

clear

input year var

1        7
1        7
1        7
1        7
2        7
2        7
2        7
2        7
3        7
3        7
3        7
3        7
4        7
4        7
4        7
4        7
5        7
5        7
5        7
5        7

end


bys year: gen id=_n

forval x=1/5 {
preserve
keep if year==`x'
rename year year`x'
rename var var`x'
sort id
save temp`x',replace
l
restore
}

use temp1,clear
forval x=2/5 {
qui mmerge id using temp`x'
drop _merge*
erase temp`x'.dta
}

order id

l

元芳,侬怎么L00K?

7
renliting 发表于 2012-10-18 15:14:03
大白菜2012 发表于 2012-10-16 22:56
看这个,

clear
谢谢楼上,太详细了~
冷峻的外表下有颗理性的心。

8
sungmoo 发表于 2012-10-19 17:05:12
g i=mod(_n+3,4)+1
g j=int((_n+3)/4)
reshape wide v*, i(i) j(j)

9
wgh0216 发表于 2012-10-19 19:37:43
两位大侠太全面了

10
renliting 发表于 2012-10-22 12:29:30
sungmoo 发表于 2012-10-19 17:05
g i=mod(_n+3,4)+1
g j=int((_n+3)/4)
reshape wide v*, i(i) j(j)
感谢指点,辛苦了~
冷峻的外表下有颗理性的心。

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-5 19:52