發表文章

目前顯示的是 3月, 2013的文章

如何看到R pacakge所使用的原始程式碼

圖片
有用R的人都知道 R package就是有很多佛心來著的人 把一些統計的應用方法直接寫好程式 然後再寫一個文件教你怎麼用 要用的時候只要下載安裝到R裡就可以了 可以想成Andriod手機 上網可以下載很多免費的App裝在手機裡 這也是為什麼很多人喜歡用R的原因 免費就算了 還有很多人發展一個新的統計方法之後 會順便把R package也寫好讓大家下載 但是如何看到R package裡面的原始程式碼呢 只要在R裡面下<package name>:::funtion 例如 我想看box-cox方法到底是怎麼寫出來的,就可以打MASS:::boxcox.default MASS就是package的名稱,boxcox.default就是方法的名字 出現的畫面如下 那如果要查不是在package裡面的呢? 直接打function名稱就好 例如迴歸的建模指令lm

T-SQL CURRENT_TIMESTAMP

圖片
在SQL裡面,只要新增一列新的資料,就自動加上當時的系統時間 CREATE TABLE Test ( Time time(0) DEFAULT CURRENT_TIMESTAMP, Date Date DEFAULT CURRENT_TIMESTAMP, ) 或是在設計那個頁面,預設值填上(getdate())

'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上

'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上 這個錯誤訊息一直出現 後來雖然我用64位元的匯入匯出精靈把excel匯進SQL  但是用SSIS封裝的時候又不行了 又是一樣的錯誤 我就一直耗在這裡 又google到一篇網誌http://kennycarol.pixnet.net/blog/post/27188076#comment-30043635 他用了2007 Office system 驅動程式:資料連線元件之後就解決了 下載網址 http://www.microsoft.com/downloads/zh-tw/confirmation.aspx?displaylang=zh-tw&FamilyID=7554f536-8c28-4598-9b72-ef94e038c891 好神奇的東西啊 讓我用了之後瘦了十公斤 國字臉也變瓜子臉 整個人好清爽呀 是說為什麼微軟可以這麼掉漆 一直叫我去下載 Microsoft.ACE.OLEDB.12.0又一直出現一樣的錯誤 為什麼我還要灌舊的資料連線元件才可以解決啦 真的很氣A 順帶一提 我的電腦Microsoft.ACE.OLEDB.12.0是灌在x64的的資料夾裡 2007 Office system 驅動程式預設是幫我灌在x86也就是32位元的 資料夾裡

請叫我海鮮大師

圖片
海鮮大師的新魚缸

64位元與32位元傻傻分不清此

圖片
昨天想要把 EXCEL 匯入到 SQL 然後可以產生一個 SSIS 封裝 我就可以丟到 SQL Agent 讓它固定時間自動匯入 明明就是一個簡單到不行 三分鐘就可以做完的事 我搞了二個小時 因為一直出現錯誤訊息 說我的電腦沒有 'Microsoft.ACE.OLEDB.12.0' 明明我就裝了 裝好了再移移好了再裝 它還是一直鬼打牆 最後我連 SQL 都整個移掉 想要重灌 干 才發現我的 SQL 是 32 位元版的 老師的電腦是 64 位元的 我也不能灌 現在電腦什麼都沒有了 我真的是好傻好天真哪 後來今天看到這篇文章 http://technet.microsoft.com/zh-tw/library/ms140052.aspx http://www.dotblogs.com.tw/ricochen/archive/2010/07/21/16668.aspx  這篇也註記一下 好像有一個人拿棍子從我的頭打下去 還說 ” 不就是 EXCEL 32 位元跟 64 位元的問題嗎 ” 馬的 好氣 ---------------------------------------------------------------------------------------------------------------- 後續 3/22 電腦重灌了SQL 2012 當我選擇匯入和匯出資料64位元時,資料可以匯入 但是當我在資料庫上面按右鍵選擇匯入時 SQL內建可能是開啟32位元的匯入與匯出精靈,選擇好要匯入的Excel檔之後 又說我的電腦沒有 'Microsoft.ACE.OLEDB.12.0' 然後我又用64位元匯入和匯出資料精靈,又可以匯入了

使用R做ARL的蒙地卡羅模擬

這是上學期上品質管理的時侯 老師出的作業之一 用任何一種程式語言模擬製程偏移之後 ARL的表現 其實我本來也不會寫 後來在網路上查到有人用C++寫好了 但我不好意思照抄 所以就把C++轉成R 因為品管的老師很喜歡出這個題目 我就放上來解救大家 但是每一個老師的假設都不一樣,所以如果有人要抄的話還是要注意一下 這是假設製程在第100點以後開始偏移,所以前100點是服從N~(0,1),100點以後就看老師要求的偏移量是什麼,去改k的值 a<-0              # 在陣列中 ' 列 ' 的位移 n<-20            # 樣本數 m1<-0           # 原始 mean sigma<-1     # 原始 sigma L<-3               # 管制界線的寛度 K<-1.5           # 偏移程度 m2<-m1+K*sigma                                                   # 計算偏移後的 mean UCL<-m1+L*sigma/sqrt(n)                                     # 計算 UCL LCL<-m1-L*sigma/sqrt(n)                                       # 計算 LCL D<-matrix(0, nrow=200000, ncol=3, byrow=F)   # 宣告一個 200000*3 的矩陣以紀錄樣本點與 xar RL<-matrix(0, nrow=1000, ncol=2, byrow=F)      # 宣告一個 1000*2 的矩陣以紀錄發生警示的樣本點與 xar for(i in seq(1,1000,by=1))     # 開始模擬 { j<-0                                         #j 為記綠 RL   repeat                                     # 產生前 100 次 In cont

球魚會吃藻

圖片
我家有二個魚缸 一個是水族帝寶 一個是水族貧民窟 買回來的球魚 我本來以為他是魚界的男子漢 放在貧民窟應該沒問題 誰知道原來球魚超怕冷 不放加溫棒的話 它們就會一直生病 買回來到現在我已經把他們送進急診室二次了 (海鹽+加溫棒到30度) 什麼魚界的男子漢 根本就是手腳冰冷寒性體質的娘娘腔 水裡應該要放四物幫他們補一下 在無計可施之下只好把他們放到帝寶 帝寶雖然舒適但是有一個問題 就是水面有一種特別的有機質 看起來很像油墨 不知道的人還以為我吃豬腳的時候不小心滴了二滴油下去 查了網路 網友說可以買女王燈回來養 她們會吃這個 然後我就興沖沖的出門去買女王燈 還多買了一隻黃金青苔鼠 可以吃一些藻類 幫忙清魚缸 結果回來發現我水族帝寶怎麼變的超乾淨 水面的油墨都快沒了 小榕上的褐藻也快不見了 仔細觀察我懷疑是球魚做的 他們一直去吸小榕的葉子 還會一直吸水面 吸到油墨都不見了 我從來不知道球魚會這樣耶 還是他們實在是餓過頭了 才會吃一些沒用的草啊 早知道你們會吃我幹嘛去買什麼女王燈啊 還買了超神經質的青苔鼠 整天神經兮兮的 害我整個魚缸被他弄的很緊張 水族帝寶 女王燈 買回來還發現他的尾巴只剩一半 右邊就是那隻神經鼠 金球們在開會 它是櫻桃燈 公的發情的時候整隻是桃紅色

使用VBA記錄股市每分鐘的交易記錄

其實也是一個很簡單的程式,但是看起來就不像是高手寫的,因為一直跳來跳去 假設工作表2是DDE的資料,將DDE的資料每分鐘copy到工作表1 Dim i As Single '宣告變數i Dim Workday As Integer  '宣告變數Workday Private Sub workbook_open() '當這個excel檔案打開時,執行以下程序 Workday = Application.Evaluate("WEEKDAY(TODAY())-1")     '算出今天是一星期中的第幾天,並將數值存入Workday If Workday >= 1 And Workday <= 5 Then   '判斷是否為工作天     If Format(Time, "hh:mm:ss") >= "09:00:00" And Format(Time, "hh:mm:ss") <= "13:31:00" Then   '判斷是否為盤中         Call a  '執行程序a     Else         Application.OnTime TimeValue("00:09:00"), "ThisWorkBook.a"  '如果不是在盤中則等待明天九點開盤     End If End If End Sub Private Sub a() '宣告一個程序a    i = 2    '將i預設為2,因為資料是由第2行開始貼上    Call b   '執行程序b  End Sub  Private Sub b() '宣告一個程序b     Range("Stock200").Rows("2:201").Copy     'Copy範圍"Stock200"中的第2到第201列     工作表1.Cells(i, 1).PasteSpecial xlPasteValues '從工作

如何用VBA算出今天星期幾

最近在做論文的東西要寫VBA 本來二技畢業就發誓不要再寫程式的我 還是逃不開這個魔咒 連在寫這篇文章的時侯還肚子痛 跑去拉屎之後再回來寫 有感於常常在網路上找很多資料,可是有時侯再找就不見了 決定把我寫好的東西記在部落格上 這樣子別人也可以查得到 高手路過可能也可以幫我修改一下 今天寫這個是為了要判斷當天是不是工作天 Sub test() Dim Workday As Integer Dim Response Workday = Application.Evaluate("WEEKDAY(TODAY())-1") 'Application.Evaluate這個好東西可以讓EXCEL裡面的函數執行,weekday()會回傳今天是一個星期的第幾天,-1是因為weekday內定星期日是第一天 Response = MsgBox(Workday, vbYesNo) '為了測有沒有寫對 所以用MsgBox顯示Workday的數字 End Sub