如何下载到stata几个excel表每一个表代表一个特定年份的数据集

ig9co6j1  于 2023-04-13  发布在  其他
关注(0)|答案(1)|浏览(95)

我是新来的stata,这是我第一次使用它:(我有数据集的公司在科威特市场经营10年,从2013年到2022年,每年在不同的excel文件.所以我有总共10 excel文件,我把它们保存在一个文件夹,文件夹浴“C:\Users\noura\OneDrive\Desktop\project excel”excel文件名:2013年2014年2015年2016年2017年2018年2019年2020年2021年2022
因此,我如何可以导入10个excel文件到Stata,并确保Stata正在阅读的数据,因为继续从2013年到2022年。
我应该使用什么代码?
我尝试了几个代码,但没有工作

// Set the working directory to the folder where your Excel files are saved
cd "C:\Users\noura\OneDrive\Desktop\project excel"

// Loop over each year and import the corresponding Excel file into Stata
foreach file of varlist 2013/2022 {
   import excel "`file'.xlsx", firstrow clear
   gen year = "`file'"
   append using "`file'.xlsx"
}

// Sort the data by year
sort year
oxiaedzo

oxiaedzo1#

你非常接近一个解决方案。做得好,因为这是你第一次使用Stata。
代码中的问题是

import excel "`file'.xlsx", firstrow clear

清除当前内存中的所有数据。因此,在每次循环中,您都要删除所有以前的年份。在我对示例代码的修改中,我设置了一个临时文件,用于在每次循环结束时保存数据。然后将年份数据附加到该数据集。

// Set the working directory to the folder where your Excel files are saved
cd "C:\Users\noura\OneDrive\Desktop\project excel"

clear
tempfile allyears
save `allyears', emptyok

// Loop over each year and import the corresponding Excel file into Stata
foreach file of varlist 2013/2022 {
   import excel "`file'.xlsx", firstrow clear
   gen year = "`file'"
   append using `allyears'
   save `allyears', replace
}

// Sort the data by year
sort year

相关问题