2013-05-02 93 views
0

我有一個.txt文件中的數據,其中變量由符號|第一行包含變量名稱。我已成功insheeted數據爲:在Stata中爲分隔數據中的特定變量插入一個

insheet using "filename.txt", delim("|") clear 

但是,我想insheet只有一個變量從數據集。當我嘗試insheet在只有一個變量,我曾嘗試:

insheet variable using "filename.txt", delim("|") clear 

不幸的是,它不工作,以及使用中的.txt的降至版本,我收到一個錯誤:

too few variables specified 
error in line 2 of file 

中的.txt如下所示:

V1|V2 
123|456 

注意,有更多的變量和多行,但我已經減少了它易於說明。另外,.txt格式化後每行都會自動返回。

我將不勝感激您提供的任何幫助來完成此任務。請讓我知道是否有任何進一步的信息可以提供,以使問題更清楚。

回答

0

對於我來說很難說爲什麼這不起作用,但insheet是舊代碼,看起來比其他導入命令稍微脆弱一點。

你試過import excel

難道這不是問題嗎insheet everything和drop你不想要什麼?

您是否想用filefilter|更改爲空格或逗號?

+0

謝謝你的評論。一些.txt文件對我來說太大了,無法弄清楚如何在stata中打開。無論如何,我不需要.txt中的所有變量,所以我希望我只能記下我需要的變量。所以,爲了迴應你的第二個建議,我看不到這條路線。我從來沒有使用過import或filefilter,所以我會研究你的第一個和第三個建議。不,我正在編輯最初的帖子,以反映.txt的外觀。 – user1690130 2013-05-02 18:21:26

+0

我猜測經過一些實驗後,用'insheet'指定一個varlist總是需要與文件中的變量一樣多的名字。也就是說,'insheet'不允許選擇性地輸入一些變量。這是一個猜測。我認爲你需要看別的地方。或者,預處理(使用Awk,Perl,...)可以刪除所需的一列。 – 2013-05-02 18:35:27

+0

我想我有點困惑,因爲正如我上面寫的,在其他數據集中,當我不需要分隔符()時,我已經使用「Filename.txt」成功完成了插頁v1。你知道這樣的預處理可能在perl中完成嗎? – user1690130 2013-05-02 18:39:57

0

Stata命令insheet沒有此選項。使用insheetkeep varname