0%

最近找shiny resource,发现shiny的shinyWidgets拓展包使用着非常不错,能给shiny各个控件润色不少,记录下一些有趣的功能

示例概览可以看官方文档:Widgets available

Function reference包含了shinyWidgets包所有的函数,点击后可查看具体某个函数的示例

为了方便后续的使用,我对一些函数的大体功能做了整理,便于个人使用

Read more »

最近由于工作上的需求重新整理了下Shiny资料,以及在网上找了些新的东西学习了下,一些个人觉得蛮适合shiny学习的资料在此分享一下。。。后续还会整理下实用的Shiny extend packages

Read more »

Odds ratio(OR)从字面上可看出,是两个odds的ratio,其用于:

在病例对照研究(case-control study)中,分析暴露风险因素与疾病(或者用药)的关联程度;主要是反映暴露与疾病之间关联强度的指标,OR常适用于病例对照研究,也可以运用于前瞻性的研究(当观察时间相等时)

与其相似的有个指标relative risk(RR),其可以理解为risk ratio,用于:

在队列研究(cohort study)中,分析暴露因素与发病的关联程度;主要是反映暴露与发病(死亡)关联强度的最有用的指标,RR适用于队列研究或随机对照试验。

Read more »

偏态分布(Skewed distribution)是指频数分布不对称,集中位置偏向一侧。若集中位置偏向数值小的一侧,称为正偏态分布;集中位置偏向数值大的一侧,称为负偏态分布。 偏态分布只有满足一定的条件(如样本例数够大等)才可以看做近似正态分布

对于偏态分布的资料可看:The Skew-Normal Probability Distribution

Read more »

摘抄整理自:《Mastering Shiny》 中的第7章 "User feedback"

为了让用户对于shiny app正在运行的功能有更好的了解,我们希望能以message或者其他输出形式对其进行说明解释,这个是属于Feedbac

Read more »

这是一本online版的shiny book, 《Mastering Shiny》,按照作者Hadley Wickham(真大神也。。)的说法,将于2020年在O'reilly系列中出版

Shiny is a framework for creating web applications using R code. It is designed primarily with data scientists in mind, and to that end, you can create pretty complicated Shiny apps with no knowledge of HTML, CSS, or JavaScript

Read more »

这是我整理的关于Spotfire的第三篇文章,主要记录下如何在Spotfire中安装Spotfire Statistics Services服务;由于网上相关资料比较少,而官方文档有些细节没写清楚,因此折腾了好久,因此记录下大致的过程。。。希望能帮助到大家,节省点时间哈(虽然用Spotfire的人真的不多)~

Read more »

上篇 Spotfire ironpython示例小结 主要整理了关于Spotfire中关于如何使用Ironpython来拓展Spotfire使用范围,即通过脚本来控制分析及展示的过程

这篇文章主要整理下关于Spotfire中TERR脚本使用注意事项,TERR是一个集成在Spotfire中的一个R版本,代码的函数以及R包的用法大部分都跟Open R(常见的R版本)一样,唯一需要注意的是如何将其结果输出到Spotfire的一些文档属性或者可视化图形中

Read more »

Spotfire是一个比较人性化的可视化软件,在药企(大外企)数据临床数据管理可视化方面应用较好

Spotfire除了自带的一些常用操作功能外,其内嵌了ironpython和TERR;以下是这段时间来整理的,关于一些功能的ironpython的实现

Spotfire-Ironpython主要社区: https://community.tibco.com/wiki/ironpython-scripting-tibco-spotfire

Read more »

平时常见的数据属性类型有连续和分类,然后在输入ML algorithms之前一般会转化为numerical matirx;除了上述两类数据外,还有一种是文本型数据,我们也需要通过一定的方法将其转化为numerical matirx

Read more »

在肿瘤研究中,bioinformatics是一个很好的用于寻找biomarker的方法,其中会涉及到两个概念:预后生物标记物(prognostic biomarker)和预测生物标记物(predictive biomarker);最近在一个biomarker探索性研究中把两者搞混了,经推荐看了一篇文章(预后因素?预测因素?一字之差,谬之千里),以及结合研究数据才把两者搞清楚,因此粗略的做个记录

Read more »

处理缺失值常用的方法:

  • 直接移除缺失值的行
  • 以均值/中位数等方法填充
  • 以一些常数(-1/-999/etc.)代替
  • 重构,比如以通过模型来预测缺失值
  • 选择一些能处理缺失值的模型,比如XGBoost和CatBoost

Scikit-learn整理了几种方法,对应了上述的思路

Read more »

Pipeline

Pipeline可以用来简化构建变换和模型链的过程

Pipeline的好处:

  1. 构建好Pipeline后,只需要一次fitpredict,即可避免对每一个estimators都调用一遍fittransform
  2. 如果使用grid search,即一次历遍所有estimators的参数
  3. 避免测试集的信息泄露到交叉验证训练集中(典型的就是在做交叉验证前做了scale,这样会leaking statistics)
Read more »

为了评价模型在新数据上的泛化性能,我们一般除了训练集外,还需要测试集;有时为了评价不同参数下的模型性能,不能直接在测试集进行测评,而是在两者之间再加个验证集来先进行评估;如果比较成功的话,再在测试集上进行最后的评估

Read more »

记录来自Kaggle的一次playground competition(Categorical Feature Encoding Challenge);备注,Kaggle比赛分类以下几种类型,摘抄自知乎回答

  • Getting Started(面向初学者),非常适合入门级的参赛者用来练手,但没有奖牌或奖金,只能看到自己的排名
  • Playground(面向初学者),项目难度比Getting Started稍难,主要是一些趣味性的比赛,看创意而不是解决具体的研究问题,奖励可能是奖金、荣誉,不能获得奖牌
  • Featured(面向竞赛者),是Kaggle上主要的竞赛类型,为解决商业问题而设立的比赛,奖金高竞争激烈,有金银铜牌奖励,对参赛选手的能力有一定的要求
  • Research(面向竞赛者),致力于解决科研界学术界的前沿问题,偏向于实验性质,较难;竞争没那么激烈,通常也有奖金和金银铜牌,但有的比赛只给荣誉奖励,或者是提供参加顶会的机会
  • Recruitment(面向求职者),赞助商为招聘数据科学家而设立的比赛,奖励就是赞助商提供的工作机会
  • Annual,不是严格意义上的比赛,每年两次,一次是美国大学篮球锦标赛期间的三月机器学习比赛,一次是圣诞节期间的圣诞主题优化比赛
  • Limited participation,通常是私人赛或邀请赛,例如只有master级别及以上才能参加的Master's Competition
Read more »

最近在Kaggle中学习一些关于ML的方法,其提供的 kernel是一个很好的工具,非常类似于Jupyter notebook

kaggle Kernel本质上是一种jupyter笔记本,可以在浏览器中直接运行代码,并提供免费的gpu

但是遇到一个问题:如果某个训练的模型需要跑N个小时,kernel有时会由于一些原因(可能网络,也可能是无法长时间待机)导致断开;待重开打开后,模型又要重新跑了(而且是该notebook里所有代码都要重新跑)。。。

如果将代码拿到本机上跑,则太占用资源(CPU/内存),有时由于配置不够的原因,导致模型训练速度大大拉长。。

这时我才想起来可以在服务器上安装个Jupyter notebook,然后本机远程连接即可,只要网络不出问题,即可长时间的待机运行代码

Read more »

在机器学习模型中,需要人工选择的参数称为超参数。比如SVM的Ckernelgamma,随机森林的n_estimators,人工神经网络模型中的隐藏层层数和每层的节点个数等等

对于各个分类器,各个参数及其对应值都通过get_params()获取

最常用的方法就是网格搜索(grid search),从而获得最佳的cross-validation的score,其中可分为: * GridSearchCV * RandomizedSearchCV

Read more »