2014-01-14 94 views
1

我试图导入具有混合了大写和小写字母的变量名称的Excel工作表。我希望Stata以小写形式阅读它们,但是当我将case(lower)选项放入时,Stata会返回option case() not allowedStata:当从Excel导入时将变量重命名为小写

这是我试图把在:当我不使用case()选项

import excel "/Users/p/D/B/File name/", sheet("Sheet1") firstrow case(lower) 

import命令工作正常。有人能告诉我我做错了什么吗?

+0

您的文件名实际上是否以正斜杠结尾?我从来没有见过这个。您使用的是什么Stata版本?导入excel是一件新事物。它看起来也像你使用Mac?这个问题的很多方面。否则,首先要做的就是打开跟踪并准确查看错误发生的位置。或者发布你的文件和真实的代码,这些代码不适合你,并且我们可以提供更好的帮助。 – SOConnell

+0

你没有给我们一个可重复的例子,没有人独立尝试设计一个。 –

回答

4

我很难重现你的问题,但低于是使用各种case()选项(基本上是从help import excel)工作的例子:

clear all 
set more off 


*----------------- Create data ----------------------------- 

* Load example Stata data base 
sysuse auto 
keep make price headroom length turn 

* Change variable names to experiment 
rename (headroom length turn) (HEADRoom LENGTH turN) 

* Create example Excel file 
export excel auto, firstrow(variables) replace 


*----------------- Importing ------------------------------- 

* Import just as it is 
import excel auto.xls, firstrow clear 
describe 

* Import with upper case 
import excel auto.xls, firstrow case(upper) clear 
describe 

* Import with lower case 
import excel auto.xls, firstrow case(lower) clear 
describe 

注意他们都做工精细。变量名称相应地转换为大写/小写。变量标签没有,但这是预期的。从help import excel我们:

第一行中的原始名称存储未修改的可变 标签。

case()只有影响变量名称。

你还别说:当我不使用case()选项

import命令工作正常。

假设这是真的。然后,导入后的变量名转换为小写,你可以尝试

rename _all, lower 

详见help rename group。 (但是,像我发现,在case()选项的作用。)

最后,如果是可变标签你后,你可以使用的东西改变他们像

foreach varr of varlist _all { 
    label variable `varr' "`varr'" 
} 

这只是将变量名到标签,为所有变量。因此,在所有变量名都转换为小写字母后运行,会为您提供小写的变量标签。有关详细信息,请运行help label

+0

非常感谢@Roberto Ferrer。是的,因为某些原因,当我在我的stata(mac上的stata 12se)中包含case()选项时,它会读取(不允许使用case选项)。无论如何,当我使用重命名_all,lower命令它完美的作品。谢谢! – Pcarlitz

+0

我试着创建你的示例数据,就像你做的一样,但又是stata所说的选项case()不允许 – Pcarlitz

相关问题