[程式] type mismatch (STATA)

看板Statistics作者 (meimeili0403)時間14年前 (2012/01/25 16:45), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
[軟體程式類別]: STATA [程式問題]: 資料處理 [軟體熟悉度]: 低(1~3個月) [問題敘述]: 大家好 我需要根據廠商所屬的產業和省份去計算一些指數 所以為了將來計算上的方便 需要先去製造產業三位碼變數和區域二位碼變數 我在製造產業三位碼時沒有遇到什麼問題 但在製造區域二位碼時卻出現type mismatch 請大家幫我看看到底是哪裡出錯 [程式範例]: 我在製造產業三位碼時 所使用的code是: gen sic4 = cic gen sic3 = int(cic/10) 在製造區域二位碼時 我想邏輯應該是差不多的 但因為我原始資料的廠商區域代號除了2005年外其餘皆是6碼 而2005年的資料則有12碼 所以我打算將code寫成: gen dq2 = int(dq/10000) if year==1998 | year==1999 | year==2000 | year==2001 | year==2002 | year==2003 | year==2004 | year==2006 | year==2007 replace dq2 = int(dp/10000000000) if year==2005 但實際在跑時 跑到gen dq2那行就出現type mismatch 不知道這是出於什麼原因? 我該如何改寫呢? PS. 在data editor裡 我dq那一欄的數字式紅色的 不知道是否有影響? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.173.211.81 ※ 編輯: meimeili0403 來自: 1.173.211.81 (01/25 16:46)

01/25 16:54, , 1F
紅色表示那欄是字串而非數值 所以不能用int取值
01/25 16:54, 1F

01/25 16:55, , 2F
help substr
01/25 16:55, 2F

01/26 13:12, , 3F
已解決~謝謝:)
01/26 13:12, 3F
文章代碼(AID): #1F7y4x2w (Statistics)