2020-09
30

PQ里的IF要怎么加呢

By xrspook @ 9:35:06 归类于: 烂日记

昨天在设计某个Power Query查询的时候,我遇到了个问题。只需要做一个非常简单的IF判断,但貌似是不能直接用IF处理步骤。那些不过是非常简单的东西而已,如果符合这个条件,用这个步骤,如果不符合这个条件,用另外的步骤。我之所以被拦在那里,大概是因为我还没搞清IF使用的场景关系。判断步骤从理论上说再普通不过了。我该怎么做到这个呢?之所以有这个困惑,因为IF的判断,在举例子的时候,大都用在添加列这个功能里面。如果符合这个条件,就添加这种,否则就是另外一种,当然你也可以添加一大堆筛选。我正在开始构思这篇东西的时候,突然意识到,我要处理的实际上是一个列表。既然是一个列表,在后面引用的时候我就没必要把所有东西都摊开,我在前面就做好判断,后面直接一个判断好的列表扔过去就可以了。有些步骤我进行了排序,但是实际上排不排都无所谓,因为最后这些东西会到达数据透视表。月份参数必须排序,理论上那个参数不仅仅要排序,而且还应该以日期的数据格式展示出来。昨晚上我发现同样引用同一个数据表,如果我在展开的时候,不加以说明,反而会得出正确的东西。如果纯粹用可视化的操作,会有画蛇添足的效果。我的数据必须得用我想要的方式表达出来,如果默认的东西不对,我应该改到对为止。这一次我运气好,我没有解释某一列到底是什么东西,系统读对了,但有些时候情况不是这样的。当然,也会有我昨天下午遇到的那种情况,系统默认的不太靠谱。最终,我忍耐了那个不太靠谱,但是。既然有了晚上的的经历,系统默认画蛇添足的部分根本不应该存在。

一开始我只想实现某个功能,但在实现某个功能的过程中,我发现以前我的那种分类有点想太多了,因为根本没有必要。那些东西都是独立的存在。与其进行二级分类,不如多做几个一级分类。一级分类的非重复计算实际上用的都是一个模板。既然是模板,我当然可以用外部引入数据的方式实现动态筛选。关于非重复计算这种东西,加入了模型的数据透视表能轻而易举地做到,但经过这段时间的摸索以后,我发现Power Query只要能打开,基本上不会出错,但是Power Pivot我搞不懂为什么会出错,为什么会卡机。那个东西卡机的概率我感觉太高了,之所以有这么高的概率,也可能因为我用得比较少。有时我只是写了个非常简单的度量值,出来了以后,度量值不知道为什么选不上,不知道为什么选上了以后电脑就弹出了某些界面,关掉了以后Power Pivot的选项卡就消失了,但是你依然可以进入。关掉Excel,再次打开,Power Pivot的选项卡没有了,你得在加载项那里把那勾去掉,再重新加回去。实在说不准为什么会这样。如果不把那个曾经导致问题的文件的模型删掉,打开那个工作簿的时候永远存在这种问题,其它工作簿不也会被连累。删掉那个错误后,还得重启电脑才能解决问题。很久以前Power Query也是Excel的插件,但后来,那个东西已经不再是独立的选项卡,而直接内嵌到软件了,而Power Pivot在Microsoft 365里依然是个选项卡,依然要借助COM加载下。这就意味着这个东西还没有到非常成熟的地步。所以或许某一天我要玩Power Pivot的时候,我不在Excel里面玩,而会跑到Power BI里折腾。因为起码那样的话,我就不用烦恼Excel的加载项老是消失这个问题了。

越研究就越知道自己什么都不知道。

2017-06
21

加工跑偏

By xrspook @ 8:34:10 归类于: 烂日记

都说现在已经是自媒体的时代,一个人就可以成为一个信息的发布点,其实很早以前就已经是这样,只不过那个时候发布点不一定位于浏览量很高的论坛或者门户网站之类。每一个blog都是一个自媒体,尤其是那些原创的。必须承认,无论从前还是现在很多东西都是抄来抄去了,我不知道为什么要这样。起码当我自己写blog的时候,我不用想我写出来的东西有没有依据,我是不是纯粹在吸引眼球编故事。起码对我来说如果东西写出来了,我是自己心理那一关不可能过不去。很多的blog并不是自己在默默地耕耘,而是在东拼西凑的把各路东西拉过来。如果那只是图片或视频也就算了,算是一个聚合吧,但如果那发布的是文字,而且还有点新闻意味的非常容易就会误导人。从前我会发布一些教程,非常详细,而之所以这样是因为所有那些都是经过我自己亲身去试验的,起码在我写文章的那一刻那套方法是可行的。至于在过了几年或者十几年以后还能不能用。当然就得另当别论。即便可能教程最原始核心的理念不是我自己创造的,但起码那套东西我自己用过,我自己觉得可行很好。现在我越来越少发那些东西了,因为那需要大量的精力和时间去做支撑,而我现在越来越懒了。学生时代真好!

除了自媒体,还有全媒体的说法,一个新闻发布出来,通过网络的共享,刹那间就可以传遍全世界,可以通过文字途径,可以通过图片的途径,也可以通过视频的途径。同一条新闻,可以在这个电视台那个电视台同时播放。从理论上说,这的确节约了非常多的人力成本,但这样真的好吗?全世界都一个模样,为什么还得分电视台A和电视台B呢?如果ABC电视台都是一样的,那不如纳入一个旗下算了,但再往深处想,如果电视台都是一个爹妈的,那岂不是全世界就只有一个电视台,那不是形成垄断了吗?没有市场竞争就没有进步,这是显然的,而且他们只会遵循一个价值观,非常有可能会越走越偏。

什么信息是可信的?从前我没考虑过这个问题,因为通常来说都可以。但现在我必须得考虑这个问题了。报纸上的东西就一定对了吗?主流杂志上面的东西就一定对了吗?电视上说的东西就一定是对了吗?再深一层,教科书上的东西是不是一定就没问题?如果这些都只能回答都必须得具体情况具体分析,不能尽信,那么就更加不用说社交网络或者各大网站上发布的种种了。为什么会这样?几年前因为ADR要来中国,所以某个体育杂志的编辑找我说要用我曾经翻译过的各种消息组合出一篇介绍的文章,我答应了。如果信息源是我,我当然很自信,因为不确定的东西我不会写出来,我不懂的东西我也不会乱写,而且我必须确信我收到的消息是正确的。如果只是在我的材料上加工,估计不会有什么问题,但实际上就发生了问题。那个编辑完稿以后发给了我一份,我看完以后几乎跳起来了。因为她居然把职业摔角的冠军说成是拿奖杯或者奖牌的,知情人士都知道这是扯淡,因为职业摔角的冠军拿的都是冠军腰带。我马上把这个消息反馈给她,她说她已经把文章提交给上面,可能已经拿去印了。这种错误我当然不会犯。她为什么会犯这种错误肯定是因为她对这项体育娱乐一点都不了解。她不清楚最基本的规则,也不怎么关注这项运动,甚至可能她连一场摔角比赛或者节目都没看过。她到了那个杂志社,领导分配给她这项工作,于是她就做了。幸好,他们最终出版并把杂志寄给我的时候这个错误改过来了,是她上头改的。也正是因为那个上头,小编才会找到我,可能那个领导已经关注我一段时间了,他在这方面肯定有点懂。最底层的材料是正确的,但是加过程出错了,这种事发生在我身上,也可能发生在其它地方。

现在的人真累啊,看了消息以后还得多一层判断,这到底是不是真的呢?这真的程度有多少?

2015-12
7

分贝开关

By xrspook @ 12:59:25 归类于: 烂日记

一直以来我都有个这么的想法,可不可以在植物粉碎磨之前加一个分贝仪,按照分贝大小自动停止机器。很多被粉碎的东西国标的要求都是95%可以通过某个规格的筛网就说明某种粉合格,当然了,也有些要求是全部都得通过多少孔径的筛网。跟进口波通的盘式磨和锤式旋风磨不同,国产的植物粉碎磨正在进行磨粉和磨粉结束的声音不非常明显,一直以来,那都是人肉觉得噪音和振动小了,应该可以了去关停机器。为什么就不能把那个结束从手动改成自动呢,实现自动以后相信能缩短不少磨粉的时间,毕竟人的反应是迟钝的,尤其是如果开小差了,那就更加那个。我的思路是用分贝计的读数来控制电源。把粉碎磨的电源插到分贝计上,分贝计另有一条线连接电源。分贝计主要显示3个数据:实时分贝,最高分贝,最低分贝。开始入料磨粉,当样品量满载的时候得出一个最高分贝,当样品磨粉完毕几乎在空转的时候得出一个最低分贝。机器启动后,当实时分贝数达到最高分贝值并持续5秒以上开始进入准备断电模式,当实时分贝数低于最低分贝并持续10秒以上时自动断电。今天我要磨粉12个稻谷样品,到剩下最后3个的时候我才用手机下载了个分贝计。不启动机器时环境的分贝是40-50,启动机器,声音是50-55,当机器满载运转分贝数接近80但很快会看到数据下降,当数据到达60左右,下降幅度大大降低,几乎水平。知道这些数据后就很明白了,就我今天做的稻谷样品而言,最高分贝可以设定为75,最低分贝设定为60即可。这只是稻谷的状况,小麦呢?玉米呢?高梁呢?大豆呢?不同水分/硬度的同品种样品呢?不能确定所有磨粉样品都是这样的数据,但可以肯定,如果机器能够设定最高和最低值一定能适应所有样品。这只是从声音的角度去判断是否磨粉完毕,靠谱的验证方法应该去称量机器认为磨粉完毕后得到的粉是否符合国标的要求。符合国标要求后,那些粉做出来的各种检验结果是否和人肉操作的一致。

3个数字显示器分别显示最高最低和实时分贝,一对上下键设定最高最低值,一个确定键保存设定,一个开始/设定键短按接通电源长按进入设定最高最低分贝模式,一个停止键以防不测。构造非常简单,逻辑编程只是非常简单的一句话。但如果要实施的话该如何去做呢?做这个玩意的成本得多少?上面说的是简单模式,装逼高级模式是内置好各种样品的数据,比如说稻谷是75-60,小麦是80-60,可以手动自定义新的最高最低,也可以用系统已经预设好的各组最高最低值,但这样的话,对显示器的要求就高了,之前只需要非常简单的数字模式,但多了品种的选择就得用点阵的来显示文字,够无聊的。机器做出来是为了优化生活的,这个机器最佳的运行方式是先做一个样品测试,看看设定的数据是否合理后再进行大批量的磨粉。所以如果磨的只是一个样品,最低值设定为50,基本上电源就不会自动切断了,得手动停止,这样就避免了可能磨粉时间太短而出现状况。

智能、数字、自动化的时代,那些那么苦逼低级的判断应该交由程序去处理而不是继续人肉感觉。这明明就很简单,但我们很多时候却只选择安逸地继续保持传统做法。

是时候改变了好吗!

2012-10
8

永不停息的流媒体战役

By xrspook @ 17:53:56 归类于: 烂日记

今天我才学会了Excel的判断句式,因为我需要做一个条件筛选然后公式计算。

最好用switch去实现,但很多个if也无妨。

最简单的if判断句式是这样的“=if(条件,程序1,程序2)”,如果符合条件,程序1,如果不符合条件,程序2。

通常来说,我们用到的是多层判断,对不同区间作不同处理,那么就得用到嵌套的if句式:

=if(条件1,程序1,if(条件2,程序2,if(条件3,程序3,程序4)))

如此类推,多层判断说白了就是用一个if()取代一个单层判断的程序。

如果你知道你自己在做什么,这都很简单,特别当你已经习惯被从前那些神马分段函数折磨得死去活来后。

WWE.COM的视频我还没找到方法下载回来,但这肯定是可行的,据说用Cygwin + rtmp-host.sh就可以。WWE.COM现在的视频(2012-10-08)是brightcove,加了IP筛选。中国呢,不翻是看不到的了,至于其它不是米国的能不能看到这我就不知道鸟。rtmpdump是神器,可以通杀基本上所有流媒体,但从一开始无情的事实就告诉我们最难整的是如何获取流媒体的地址!

今天我用RTMPDumpHelper对付WWE.COM,未果。常规工具通常不怎么凑效的,那些什么跨学科之类的才是神!不过即便是跨学科,实用性也是有一定时间区域的。神经病的我们想看不让我们看到的视频,而且不只是看到,还要下载回来慢慢咀嚼甚至分享出去。回望那么多年来的互联网生涯,基本上每年我都会和视频下载作斗争。流媒体推陈出新,我也换上了一代又一代神兵利器。

看看说明书,琢磨琢磨,我最终会下载到WWE.COM视频的!

2012-07
15

未知的错误让我累了

By xrspook @ 19:20:13 归类于: 烂日记

在研究模板的路上,第一次我对点点感到累了。

我已经开足马力去尝试了,但那些封装好的,却没有说明文档的模块让我摸不着头脑。如果可以不用模块我不会用模块的,我不是一个喜欢走捷径的人,除非非如此不可。模块是一种进步也是一种束缚。第二个就是错误之后反馈出来的信息,这个很重要,但就给你一句“系统内部错误”或者“渲染失败”完全没有进一步为什么,在哪里出错的信息,这叫我如何是好?这让人非常头痛,大概我已经喜欢了php的巨细吧,顺藤摸瓜即便不知道自己为什么会错,但起码会知道自己错在哪里。但点点的这个笼统的信息反馈,让人无可奈何。笼统的信息反馈就意味着用户大事小事都要找工作人员解决,降低了双方的工作效率。

关于标签墙的研究,今天我算是知道了一些。我的模板里用到了2个return,一个是为404和空白页面准备的,那个包含return的函数纯粹就只有XHTML + CSS。这个完全没有问题。一个是为自定义视图tags准备的,这个包含return的函数里面有一个循环,因为这里要调取的是所有我可以读取整个blog的热门标签。但问题来了,根据网页的布局,标签墙应该处于文章的正文处,而网页的头部有标题、描述以及导航,而其中呢,导航栏里就有以循环输出的所有自定义页面链接。也就是说,在第二个循环之前,已经有一个循环了。这么搞的话,自定义视图tags会报出“系统内部错误”。两个循环是互不相干的,都是全局的函数,没有调用和引用,为啥会“系统内部错误”呢?没搞懂。你或许会问,或许不是两个循环的问题呢,但我可以确切告诉你,必须只能是那个问题了,因为只要删掉第一个循环,神马事都木有。点点的工作人员之前提醒我说不要把有return的东西放在网页中间,应该直接放在网页头部,免得影响其它,但无论我放到哪里,只要是有在主体函数之前用循环构建过这样那样的基本框架都会出问题。这是让人很无语的。从语法上说,从道理上说这没有冲突,但谁知道这是不是点点内部的bug呢?因为到现在为止,理论上tags的自定义页面可以不加函数获取信息,实际上还是必须加上limit限制的,否则获取的信息就是0。

YOU CAN’T RUN, YOU CAN’T HIDE, YOU HAVE TO KNOW HOW TO FACE.

就在我写完这篇blog之后,拉肚子回来,在if (dian.data.pages.length > 0 )里面加上了一句“if (dian.data.pages && dian.data.pages.length > 0 )”问题解决了,搞定的意思是再也没有“系统内部错误”,网页能正常显示了,但第一个循环的pages链接都自动消失了。为什么???所以,我真的搞不懂这个定义视图。缺少的东西难道我要手动补回去?给那个pages链接们做一个人肉的hack?

好吧,这又给我上了一课,return不是恶魔,点点的各种判断才是纠结点。

© 2004 - 2024 我的天 | Theme by xrspook | Power by WordPress