質問

私はCSVに日付を持っています、そしてこれが私がこの問題に遭遇したのは、CSVからStataに日付を変換するときに、私が欠損値を取得しています。私は通常:

私はExcel、 'xdate' から変数を持っています

gen stata_date=日付(XDATE、 "MDY")

通常は機能しますが、このデータセットの場合、私はすべての欠損値を取得しています。

Excelのフォーマットカテゴリは日付で、タイプは* 3/14/2001です。奇妙なことに、フォーマットをカスタムmm / dd / yyyyに変更したとき(私が今すぐカスタムに行くとき、それはm / d / yyyyに進みます)そして私の.doを再実行して、私は完全に翻訳されたが、スタットを再起動して実行するとき。このマニュアルの変更なしでは、すべての欠落の値を取得します。

任意のアイデア?

役に立ちましたか?

解決

追加された:2012-10-13 - 他のStataユーザーは、date()関数の "mdy"が "mdy"であるべきだと指摘しました。

このエラーを修正しても問題を解決しない場合は、CSVファイルを調べて、給紙しているものを見つけてください:

clear
set obs 1
gen xdate = "3/14/2001"

split xdate, p("/")
.

•String Dateに "/"以外の文字以外の文字がある場合は、不平を言う。それらが何であるかを見るために、ニックコックスの-charlist-コマンド(SSCから)をお勧めします。

•XDATE1、XDATE2、およびXDATE3は、月、日、年にする必要があります。-tab-と-codeBook-を調べることができます。エラーを修正した後、日付を作成する耐圧的な方法は次のとおりです。

gen xmonth = real(xdate1)
gen xday = real(xdate2)
gen xyear = real(xdate3)
gen newdate=mdy(xmonth,xday,xyear)
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top