Categories
日常应用

ODBC(Teradata)和R连接常见问题

以前总结了一些R、SAS和TD彼此之间数据导入导出的办法,可是实际使用中还是会碰到各种各样的问题...问的人多了,就多少攒出一些FAQ放在了内部的wiki上。

还有一些问题估计大家都会遇到,所以也摘到blog上来好了。一开始用英文写的,简单翻译一下,不全翻译了。首先是通过RODBC连TD的一些常见问题,不知道是不是通用于其他ODBC driver...

  • Q: I cannot load RODBC on my own computer (not on R servers)... what can I do?
    A: Try to debug in these steps -1)  Check if you have installed the 64-bit version of Teradata ODBC driver on your 64-bit OS. If not, download and install these three packages here: http://downloads.teradata.com/download/connectivity/odbc-driver/windows(保证R、操作系统和ODBC driver位数一致,如果是64位的操作系统就装一套儿64位的吧...上面那个link是64位TD ODBC Driver的下载地址)。2)  Open your 64-bit ODBC administrator and configure the TD server DNS. (在新的ODBC中配置server地址) 

    3)  Close and re-open R again. (重启R,这步一定不能省)
    4)  If you still have problems, use R 2.*** instead of R 3.0+ (R 3.0以上版本有时候会莫名其妙报错,如是,改用2.15+版本吧。)

  • Q: How can I call R in the command line (to schedule a recurring job)? (怎么run batch job?)
    A: You can call RScript directly in your command line. If failure, you need to add R's path to your system environment variable - PATH. e.g. C:\Program Files\R\R-2.15.2\bin (设一下环境变量)
    Pay attention to its parameters. Also, you can save the log. A sample command is as follows - (命令行类似如下)

    Rscript --no-save --no-restore --verbose "/home/Liyun.Chen/R/recurring/recurring_dashboard_by_week.r" > outputFile.log 2>&1

    (记得存个log)

暂时就是这些...做个存档好了。

Categories
读书有感

说说最近读的书吧 [3rd week, March]

在过了两周每天只是等待的日子之后,觉得人生还是不能太过被动和消沉。记得刚开学的时候去图书馆搬回来几本书,放了那么就也该好好读读了。寒假最后还是成功的消灭了《凯恩斯传》,刹那间那叫做成就感啊。这本书对我的影响之大并非一言一语可以表述的清,总欲提笔写一番感受却总也不知道应该从何下笔,也就一直没有写下来。

前几天睡觉前翻了翻《国富论》,猛然间发现自己手里的那本商务印书馆版的居然是王亚南翻译的。读了一些,不禁感觉确实是大师风范。不过或许《国富论》并不适合睡觉前翻翻,一是心情难免有些浮躁,精神也不够振奋;二是容易越看越兴奋以至于彻夜无眠。大一的时候老师就说学经济的学生必看的有《国富论》《通论》以及马歇尔的《经济学原理》。可怜《国富论》我只读过节选,《通论》几乎没有读过,马歇尔那本更是觉得遥远。大三的时候老师又问我们,有谁看过这三本书,刹那间觉得无地自容。已然三年,这些经典著作却也觉得依旧那么遥远。哦,这里我或许漏了一本《资本论》,只是不知道为什么我觉得马克思的东西一定要在对实际世界有了很深的理解和感悟之后才能去读,否则就是隔雾看花,不知道他到底想表述什么。我学的太少,理解不了,也便不想如斯为难自己。系里有几位老师在此方面颇有造诣,只是无缘聆听教诲,或许有些遗憾。只愿亡羊补牢,为时未晚,在大四毕业之前能静下心来读个一章半节的,或许也好。

前几天写了好多关于社会网络分析的东西,中文的英文的都有,毕业论文也大致拟定在这个范围内。只是一时间感觉理解尚有差距,不知道怎么和以往学习的经济学知识良好的沟通起来,所以只感觉一片迷茫,不知道论文从何下手、如何选题切入。从网上搜了搜,国内的相关著作甚少,社会学方面的也不多,仅存几本可以作为基础了解的书。只从图书馆找到了一本《社会网络分析法》,立刻跑到遥远的却也风景如画的老校区借了出来。其实曾经在老校区那边住了十余年,只是那时尚未进入大学校门,小时候只知道去操场玩耍而已。后来上了大学,家也搬了,离老校区就很远了,去的次数也少了。其实,老校区有哲社学院、法学院、政管学院等很多人文学科的院系,所以老校区图书馆里面珍藏的人文巨著很多。只可惜,临近大学毕业才深深的体悟到自己人文科学知识的欠缺,欲所有弥补,却也不能急在一时,只有就近下手。说起来,那日在老校,坐在哥特式教堂后面路边的石阶上,绿茵茵的草坪将冬日的阴霾一扫而空。随手翻起刚借出来的书,调皮的春风着急的翻页,使得我顾不上吹散的发丝,狼狈的按住书页。而在那时那刻,却似乎第一次觉得自己是在读大学。这种自由的吸取知识的味道,在这四年中被考试压迫的罕有。突然间似乎多多少少明白钱学森对中国大学的那种批评,不只是表面态度那么简单。

这本《社会网络分析法》写的很简单,毕竟是导论性质的,又是从事社会学研究的人士所撰写,省略了很多数学细节,因此颇为易懂。尤其是看惯了经济学书籍里面堆满的公式,此书仅以插图简单说明的表述反而更觉得清晰一些。最有意思的是因为涉及到很多分析软件的使用,会时常提及一些计算机尤其是数据库的东西。看着那些熟悉的架构,一下子想起来自己大一大二的时候自学数据库的那段日子。那个时候却不是觉得未来能有什么用处,只是想随便考个试,应付一下写程序的任务,加之一种自娱自乐的心情罢了。估计打死也想不出在若干年后,居然会帮我轻松的跳过一些关卡,却也是始料未及,唯有偷笑。想到这里,再想想那时所受的那些辛苦和耻笑,却也云淡风轻了。这本书看得很快,因为其中和经济、管理交叉的东西有不少。而我平时比较关注微观的文章,对劳动经济学和管理学习惯关注的那些问题较为熟悉,所以很多东西看到社会学家的分析方法,在熟悉之余时常有拍腿称妙之感。不知不觉,已然读了一半了。或许不够精细,却有助于我去理解社会学家如何看待问题。

还有几本书是从新校图书馆顺手牵来的:一本是《图论导引》,也不知道写的怎么样只是想看看作为了解只用,毕竟上学期运筹学图论学的少了些;还有一本是夏道行的《泛函分析第二教程》,垂涎已久,看到就抢了出来。只是上学期泛函考成那样,无脸见人,这书也多少缺乏一些打开的勇气了。说起来,本来这学期应该好好去听听实变的,因为我现在特别想建立一种“概率是一种测度”的观念。这个概念很早有之,却一直不甚清晰,大概是不够熟悉的缘故。因为此次的社会网络分析中我多少想引入一些不确定性的分析,自然离不开概率。虽然不学实变只看概率上的东西也能做,但是不免觉得缺少了一环逻辑上的思维层次。若是再因为理解不够犯下什么错误,便更是不容饶恕的了。

Categories
事儿关经济

数据库规范与SQL应用[3rd week, July]

以前也说过,这个暑假过得相当的“充实”,每天白天8节课(其实我也是三天打渔,两天晒网),晚上回到家练习练习做饭,然后就打开本本开始忙碌的工作。一边看无尽paper,一边绞尽脑汁的搜数据,遇到问题开始到处请教,日子倒也颇为充实。

记得春天的时候写那篇关于FDI的破文章的时候狠狠的感慨了一番国内统计年鉴质量之差,大部分时间都耗在搜集数据上(尤其是把某些图片格式的数据手动输入到数据库里)了,实在是让人哭笑不得。这次写论文用到一些微观数据,其中一部分是鼎鼎大名的中国营养健康调查(China Health and Nutrition Survey,简写CHNS),虽然下载下来的都是SAS格式,但是借助stat transfer还是很容易就转到stata格式了(我算是被“威逼”+“利诱”彻底背叛SPSS了)。然后接下来,我就无语了,开始面对如山的变量……把问卷下下来,又把变量说明下下来,一个个对照着理解……好痛苦啊。

然后需要筛选变量了。按照欣欣姐屡次的提醒,乖乖的开始写do file。其实我还是习惯直接在命令行里面输入……

郁闷的就是对Stata的命令实在是太陌生了,不得不一次次的help。drop...keep...merge...一个个看下来,花了不少时间。开始残念那个叫做SQL的东西,开始回忆当时老老实实学习数据库的日子……怎么也是标准的计算机学院教材训练出来的,还是对于SQL最熟悉,虽然时日已久开始淡忘……

网上搜了搜,好像SAS支持SQL但是Stata并不支持SQL查询和操作,唉。虽然stata各种简单的函数简化了许多操作,但是至少应该保留一个sql接口供习惯sql的人来使用嘛。SQL多好啊,简单的语句组合就那么万能无敌……标准的数据库操作语言啊~

其实stata终归还是一个统计分析软件,并不是数据库管理软件,也就是说它的任务是“分析”而不是“管理”数据。但是我实在是不知道怎么把数据整理好再交给stata分析,只能在stata里面整理了。实在是为难stata,也为难我了。呜呼!

我想,当初要是考虑留下一个sql窗口,会方便许多吧。不知道是为了简化操作还是什么的,非要单独出来一些函数。唉。

也没什么好办法了,相比于借助其他DMS(Data Management System,数据管理系统)整理好再转到stata格式,我还是直接在stata里面操作好了。或许后者效率还是稍稍高些吧,毕竟原理都一样。只是期待,某些约定俗成的标准和规范,应该更为广泛的传承和延续,节省大家的时间,专注于研究而不是无谓的浪费在过程之中。

无论如何,我还是希望尽快的弄完数据这块,专心于经济分析中。