楼主: as931260115
8538 9

[数据管理求助] 关于stata批量导入excel表格的问题! [推广有奖]

  • 3关注
  • 0粉丝

本科生

34%

还不是VIP/贵宾

-

威望
0
论坛币
1609 个
通用积分
0.0600
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
849 点
帖子
71
精华
0
在线时间
87 小时
注册时间
2015-4-7
最后登录
2019-12-17

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我有四个excel一起放在一个文件夹里面,我想一次性把他们导入到stata里面,所以我又根据论坛的里给的提示写了下面的代码
cd G:/bank
foreach file in 2012s04 2013s04 2014s04 2015s04 {
import excel "`file'",sheet("Sheet2") firstrow
save `file'.dta,replace
clear
}

但是运行结果是,stata并没有输入这些数据,因为变量里面是空的,但是G:\bank文件夹却多了四个dta文件,求问各位这是怎么回事!
二维码

扫码加我 拉你入群

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

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

关键词:excel表格 Excel表 EXCEL Stata 批量导入 Stata

沙发
andruw 在职认证  发表于 2015-5-28 00:33:38 |只看作者 |坛友微信交流群
  1. cd G:/bank
  2. foreach file in 2012s04 2013s04 2014s04 2015s04 {
  3. import excel "`file'",sheet("Sheet2") firstrow
  4. save `file'.dta,replace
  5. clear
  6. }

  7. use 2012s04.dta, clear
  8. foreach file in  2013s04 2014s04 2015s04{
  9. append using `file'.dta
  10. }
  11. save pooled_file.dta, replace
复制代码
已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
挖藕妹儿 + 1 + 1 + 1 观点有启发
SpencerMeng + 10 + 1 观点有启发

总评分: 论坛币 + 10  学术水平 + 1  热心指数 + 2  信用等级 + 1   查看全部评分

使用道具

藤椅
zj20000101 发表于 2015-5-28 01:07:02 来自手机 |只看作者 |坛友微信交流群
as931260115 发表于 2015-5-28 00:07
我有四个excel一起放在一个文件夹里面,我想一次性把他们导入到stata里面,所以我又根据论坛的里给的提示写 ...
因为你清空了内存

使用道具

板凳
yijushi 发表于 2015-5-28 06:11:30 来自手机 |只看作者 |坛友微信交流群
复制粘贴

使用道具

报纸
as931260115 发表于 2015-5-28 12:38:32 |只看作者 |坛友微信交流群
andruw 发表于 2015-5-28 00:33
这个好像可以啊,还有可以告诉我为什么之前那个代码不行吗?谢谢你啦

使用道具

地板
as931260115 发表于 2015-5-28 12:41:27 |只看作者 |坛友微信交流群
zj20000101 发表于 2015-5-28 01:07
因为你清空了内存
因为有clear?

使用道具

7
as931260115 发表于 2015-5-28 12:54:23 |只看作者 |坛友微信交流群
andruw 发表于 2015-5-28 00:33
这个如果直接用一个文件夹里面的全部文件应该怎么写代码呢?

使用道具

8
andruw 在职认证  发表于 2015-5-28 14:43:25 |只看作者 |坛友微信交流群
as931260115 发表于 2015-5-28 12:54
这个如果直接用一个文件夹里面的全部文件应该怎么写代码呢?
这个不清楚。我的理解是,必须一个一个文件加载到内存。

使用道具

9
蓝色 发表于 2015-5-28 18:29:52 |只看作者 |坛友微信交流群
你的了解stata导入数据的方式以及每句命令的含义。

stata每次在内存中只能存在一个数据集
导入一个新的,必须把原来的清空,
你的程序,每次循环最后都是clear,都是清空内存,当然,也就没有数据

使用道具

10
jericho77 发表于 2017-4-6 17:35:54 |只看作者 |坛友微信交流群
andruw 发表于 2015-5-28 00:33
超级感谢!!!!

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-10-6 20:18