Date Stata—日期转换

Date Stata—日期转换,date,stata,Date,Stata,我在CSV中有日期,这是我第一次遇到这样的问题,当将日期从CSV转换为Stata时,我会得到缺少的值。我通常使用: 我有一个来自Excel的变量“xdate” gen stata_日期=日期(xdate,“mdy”) 这通常是可行的,但是对于这个数据集,我得到了所有缺少的值 在Excel中,格式类别为日期,类型为*3/14/2001。奇怪的是,当我将格式更改为custom mm/dd/yyyy(当我现在转到custom时,它是在m/d/yyyy上),然后重新运行我的。日期转换是否完美,但当我重新

我在CSV中有日期,这是我第一次遇到这样的问题,当将日期从CSV转换为Stata时,我会得到缺少的值。我通常使用:

我有一个来自Excel的变量“xdate”

gen stata_日期=日期(xdate,“mdy”)

这通常是可行的,但是对于这个数据集,我得到了所有缺少的值

在Excel中,格式类别为日期,类型为*3/14/2001。奇怪的是,当我将格式更改为custom mm/dd/yyyy(当我现在转到custom时,它是在m/d/yyyy上),然后重新运行我的。日期转换是否完美,但当我重新启动Stata并运行。DO时,如果没有此手动更改,我会得到所有缺少的值


有什么想法吗?

新增:2012-10-13–另一位Stata用户指出date()函数中的“mdy”应该是“mdy”

如果修复此错误无法解决问题,请检查CSV文件以了解您正在向Stata提供的内容:

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

split xdate, p("/")
•-split-如果字符串日期中存在“/”以外的任何非数字字符,则会投诉。要了解它们是什么,我推荐Nick Cox的-charlist-command(来自SSC)

•xdate1、xdate2和xdate3应为月、日和年。您可以使用-tab-和-codebook-检查它们。修复任何错误后,创建日期的简单方法是:

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

新增:2012-10-13–另一位Stata用户指出date()函数中的“mdy”应该是“mdy”

如果修复此错误无法解决问题,请检查CSV文件以了解您正在向Stata提供的内容:

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

split xdate, p("/")
•-split-如果字符串日期中存在“/”以外的任何非数字字符,则会投诉。要了解它们是什么,我推荐Nick Cox的-charlist-command(来自SSC)

•xdate1、xdate2和xdate3应为月、日和年。您可以使用-tab-和-codebook-检查它们。修复任何错误后,创建日期的简单方法是:

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

听起来更像是一个Excel问题,而不是Stata问题。您是否在Excel文件中硬编码日期?当以电子表格的形式显示数据时,您应该将它们复制粘贴为值,以摆脱Excel覆盖到数据上的格式层。听起来更像是Excel的问题,而不是Stata的问题。您是否在Excel文件中硬编码日期?您应该将它们复制粘贴为值,以便在将数据显示为电子表格时从Excel覆盖到数据的格式层中解放出来。