2024-09
16

然后去了内分泌科

By xrspook @ 10:18:21 归类于: 烂日记

昨天说到我做好了一切准备,去中山一院的妇科复诊,但是却没有得到我想要的结果。从妇科离开的时候,我的心情是不好的,与其说是因为没有得到我想要的结果心情不好,不如说是因为某些人的回复跟我料想的南辕北辙,让我感到很失望。门诊结束交费,做完B超等待B超结果的时候,我就决定要再挂一个号。至于是内科,还是内分泌科,直到我挂号那一刻,我才决定好。我去挂号的时候,内科那个上午的号已经没有了,但是内分泌科的号还有。最早的号是10:30~11:00,所以我就赶紧挂了。我从中山一院妇科大楼离开的时候才9点出头,所以我到隔壁的瑞幸磨了一点时间,然后才去中山一院本部的门诊大楼。

之前我去中山一院门诊大楼的次数不多,印象最深刻的是两次是去那里看耳鼻喉科做了两次鼻内镜。还有就是在做巧囊手术之前,去那里的其中一栋楼里做CT,最后那一次是几个月之前,我拿着无偿献血A证要在妇科大楼那边返还10块钱的普通门诊挂号费,但是他们无法做到,所以给我开了个单,叫我去本部的1楼某个收费窗口把那10块钱拿回来。除此以外,我再也没有对中山一院的门诊有任何的印象。

内分泌科挂完号以后,我只知道那在门诊大楼的3楼。我知道中山一院的内科肯定很大,肯定分了很多专科,但具体内分泌专科的诊室在哪里,不知道。一开始我只是想去了解一下诊室在哪里,结果发现地上有不同颜色的标记,黄色的是抽血标记,红色的是某些诊室的标记,内分泌科一直出现在红色的标记上。沿着那个红色的标记,拐了好多个弯,进入很多个走廊,到达很多个大厅以后,我发现原来中山一院有个代谢中心,那个地方是一个跟内分泌相关科室的集合体,候诊大厅之前有一个抽血大厅,到达那里的时候已经是早上10点多,但是所有抽血窗口都是在工作,抽血大厅也坐满了病人。为什么会这样呢?非常容易理解的就是那里很大一部分估计是糖尿病的病人,糖尿病的抽血空腹的时候吃药以后都要抽。除了糖尿病以外,其它代谢疾病估计都得进行抽血验尿之类的操作。我猜就是因为这样,居然要把抽血区域设置在那个地方。

我挂的号是10:30~11:00,但实际上我10:15左右就被叫进去了。虽然病人很多,但是估计医生也很多,所以叫号速度我感觉挺快。去看内分泌科之前,我把这么多年来体检尿酸结果又翻了出来,截了个图。历年的尿酸结果给了医生,这两年下来我自测的尿酸结果也给了医生,我把为什么要过来看内分泌科,妇科那边的事情也告诉了医生。因为我一开始就跟医生说了,之所以我要过来,是因为妇科那边觉得我尿酸持续高跟他们没有关系,内分泌这边的医生也就不好意思再把皮球踢给妇科。内分泌医生知道我正在做的是什么治疗,那实际上是一个内分泌控制,制造一个绝经状态。要做到这样,就要抑制雌激素,女性的尿酸之所以通常要比男性低,因为有雌激素的保护,所以当雌激素被抑制以后,我的尿酸高是正常的,同时雌激素也会影响钙的吸收。我跟内分泌科的医生说,碳酸钙D3片上的禁忌症写着高尿酸血症,所以我补钙应该怎么办?内分泌科医生的反应是,其实也没那么禁忌。我问医生,我要补钙应该使用什么钙剂的时候,医生给出的是用枸橼酸钙或者柠檬酸钙,因为这两种钙剂有碱化尿液的作用。简化尿液就可以促进尿酸的排出。内分泌医生说现在我的尿酸水平可以不用吃药,但如果我有需求的话,也可以开给我,于是我就再直接问她,那么我的尿酸高到什么程度才要来看内分泌科。她给我的数值是520。最后我在内分泌科没有开药,问完就可以直接离开了。我终于知道了我该怎么做,我应该补充什么钙剂,还有就是当我尿酸到达什么程度的时候我需要去看医生。如果我真的担心补钙跟高尿酸会有不良后果,她建议我可以去检测尿钙,也可以直接去做泌尿系统的B超。

一个早上,我完成了两个科室的看诊,完成了一个妇科B超的检查,一切都很顺利。之所以会这么顺利,是因为平时需要排队久等的项目居然都不用等,比如妇科门诊的缴费,还有妇科B超的排队。妇科门诊的缴费我试过不用排队,但是妇科B超我从来没有试过刚完成了报到就被医生马上叫进去。

一个早上没花多少时间,花了很多钱,跑了很多地方,但总算我的疑问都有了答案。

2024-09
15

不知道,与妇科无关

By xrspook @ 10:29:05 归类于: 烂日记

去妇科复诊前我就已经做好一切准备。一开始我就问医生,他们有没有研究过在进行这个唯散宁长期管理的过程之中性激素变化与尿酸变化的关系。估计接诊的综合医生被我吓到了。通常他们不干这种事,在我所了解到的那些子宫内膜异位症研究之中,绝大多数研究的都是这个药物控制跟病人某些疼痛相关感受,又或者是某些性激素变化。但这跟血压血糖尿酸这些最基本的健康相关因素却好像没怎么报道过。既然孕妇、尤其是高龄孕妇在怀孕过程之中很有可能会出现这三种高,当孕期结束了以后,这三种高又会消失。绝经的女性,也会同时会有这种三种高的症状,为什么我这个长期使用孕激素抑制雌激素的病人就不会遇到这种问题呢?

医生觉得我的高尿酸跟我吃的药没什么关系。的确唯散宁的说明书上没有说它会导致尿酸高。唯散宁制造的是一个假怀孕的状态,所以我跟医生说,有些孕妇在怀孕过程之中尿酸会高,生产之后尿酸又会恢复正常,我长期处在这个唯散宁的阶段,我该怎么办呢?妇科医生居然回答,有些孕妇不会尿酸高。正常的人还不会生病呢,医生之所以存在是,因为有些人就是那么的糟糕,就是会生这样那样的病。我继续跟妇科医生说,我是高尿酸血症,我要补钙,但是碳酸钙D3片说明书上写高尿酸血症是禁忌症之一。妇科医生居然说那么你就暂时不要吃嘛,接着我就跟她说,我高尿酸已经好多年了,十几年了,接着妇科医生居然说,其实吃这个唯散宁你也可以不额外补钙。吃唯散宁到底要不要补钙呢?说明书和相关的资料上说好像相比于其它治疗方式,唯散宁导致的钙质损失是比较少的,但是孕妇为什么要额外补钙呢?为什么绝经以后的更年期妇女要额外补钙呢?因为她们的雌激素相对而言降低了,钙的吸收就不那么好了。既然唯散宁实际上是模仿这两种效果,我真的可以不补钙吗?我马上就40岁了,如果要补钙,就应该赶紧抓住这最后的窗口期尾巴。当我把尿酸周期性的波动数据展示给妇科医生的时候,她没有兴趣。她没想过要跟我解释为什么那个周期性会如此明显,周期幅度的大小可能是她没办法判断的,但周期性的长短,以及为什么周期性会出现,我感觉如果是有研究过或者有某些数据支撑的话,是可以有解释答案的,但这个医生直接选择视而不见。所以我直接就放弃了,开了B超,开了药,我赶紧继续往后的操作。

在等待就诊之前我就看到某个科室的某个医生就是一开始建议我补钙的那个医生,这一天她有出诊。出诊的是盆底专科,当我做完B超拿回去给医生看完以后,我到那个建议我补钙的那个医生那里。我在门口站了一下,发现她的诊室没有就诊患者,也没有等待就诊的患者。所以我就进去,想咨询一下作为一个高尿酸血症的巧囊术后患者我应该如何补钙?她冷冷地跟我说,妇科不干这种事,我要去找内科。她不想回答我的问题,在我转身即将离开的时候,我又想到了另外一个血尿酸会周期性波动的问题,这个是不是跟雌激素和吃唯散宁有关?她重复了之前的那句话,血尿酸的问题我去问内科。

我不太满意,第一个综合医生的答复,而之前这个我已经看过两次的妇科医生,我希望在她那里得到一些建议,但结果是更让我觉得撞墙。她不回答我的问题,我觉得可以理解,但是她把这些明明跟妇科相关的东西都推给内科。为什么要这样?之前的热心跟这一次遇到的冷冰冰,区别难道就在于我之前我是看诊被叫进去了,是节假日门诊20块钱的挂号费,而这一次我想免费咨询吗?如果不是之前两次都看过这个医生,我不会知道其实她应该可以回答我的某些问题,这一次如此直接的回绝,让我觉得我不应该对这个医院的医生抱有任何的幻想和好感。

我是一个研究型的患者,但他们只是在为工作而工作。

2024-09
14

升级VBA抓取方案

By xrspook @ 19:26:21 归类于: 烂日记

无论是SQL方案还是数据透视表方案,我都是用4个类似的脚本,一款做出来了以后,调整部分的内容,生成其它三款,所以一开始的时候抓取数据我有4个宏,其实里面的内容大多相同。汇总数据,我也有4个宏,SQL有4个,数据透视表也有4个。因为SQL跟数据透视表作用是相同的,所以它们分别搭配4个抓取数据的宏各自组成两个文件。就实现功能来说,这两个文件从形成的那一刻起,已经可以起作用,但是我能不能更进一步呢?

数据抓取用的是最基本的VBA,就只是把数据区域选了一下,然后去掉表头,最后搭配我想要的表头输出。我没有在那个地方就进行筛选,因为之前已经说过,VBA自带的AutoFilter功能不太好用。一开始我没想过要用数据透视表,如果到了SQL,一句where可以把正向的反向的或的且的,想怎么加就怎么加,只是一句话的事情而已。既然在一开始数据抓取单元格层面那么难做筛选,那么我到SQL里做筛选就可以了。后来,因为我又做了数据透视表方案,数据透视表方案可以对字段进行筛选,但关键是如果我抓取了那个数据里面不含有我要排除的内容,又或者我抓取的数据全部字段都要被排除掉,无论是哪一款,都会出错,所以如果用同样的抓取方式,到了数据透视表的那个宏里面,我就需要进行复杂的循环和判断。嵌套一层又一层的公式,再加一层又一层的判断。虽然也能实现我想要的东西,但那样做很麻烦。在做出数据透视表方案的那天晚上,我就在想,在一开始的抓取的宏里面,我能不能直接把筛选这个步骤给做了呢?

要在数组里面进行数据筛选,想想都知道肯定可以实现,但是我想到需要嵌套那些数字就觉得很烦,所以我就翻出了多年以前我用来合并某些数据表的宏。在那里我发现自己用的是把全部数据都粘贴到一起,然后做一个行的删除。当时做的行删除很简单,只要匹配一个字段就行了,我现在的行删除,需要匹配的字段可能会有很多,所以我就把那些需要删除的字段都先放在一个数组里面,然后再利用之前那一天从网上抄回来的那招Application.match方案。在一句if里面就能实现查找某个元素在不在某个数组里,如果在的话就把行删掉。之前写的那个宏的确就这么简单,因为需要删掉的那个部分隔好多行才会出现一次。现在我需要处理的那些数据,说不准我需要删掉的那些行是隔一些才出现,还是下一个就又得删掉,所以在删掉之后,我又赶紧做了一个减法操作,让程序重新测试那一行到底需不需要删除。

在一开始数据抓取阶段,我就把数据范围确定了,把需要例外的数据全部删除,所以后面的SQL跟数据透视表我就可以轻松地直接进行操作,尤其是数据透视表,操作变得简单明了。

因为一开始我不是大神,我只能摸着石头过河,逐渐的磨练自己。

2024-09
13

VBA里搞数据透视表

By xrspook @ 8:17:52 归类于: 烂日记

因为我知道我要实现的那个功能,SQL可以做,数据透视表也可以做。就写代码的熟练程度来说,SQL我肯定更熟悉,VBA的数据透视表有很多参数,我搞不懂到底是什么,反正要实现那个功能,通常是录制一个宏,然后看着办,有需要的数据保留下来,不需要的数据直接删掉。录制的宏通常都很啰嗦,里面有非常多没有必要存在的东西。在不了解数据透视表在VBA里的参数的前提下,先进行一个录制显然是比较靠谱的步骤。但有些东西靠录制是录制不出来的,比如某些字段我需要进行筛选,我只知道有些东西是不能出现的,但我没办法确定可以出现的是什么,所以那一堆不能出现的东西都是反参数。在录制宏的时候,你只能看到什么就反选什么,但关键是这个数据源跟那个数据源的那些参数是不一样的。不一样我只能设定一堆反参数,只要它们是其中一个,就不能显示,但实际上这样的反参数让VBA的数据透视默认不出现你就得兜一个大圈,套上好几层公式实现。最终,在我调试的时候发现的确那些嵌套的公式能把那些反参数都排除在外,但如果数据源里所有数据都是反参数的一部分,那么就会报错,于是我又得在外面加一层捕捉错误的判断。真的是非常折腾。为什么之前我考虑的是SQL而不是数据透视表,反参数是其中一个点,另外一个点是排序。在SQL里,使用自定义序列排序是非常简单的事情,但是数据透视表的字段该如何排序呢?兜了一大圈我发现也就只能真的在Excel里面增加自定义序列,但如果我想用即弃呢,于是还得出了一招VBA先增加自定义序列,排序完以后再把自定义序列删除掉。这个操作在ExcelHome的教程里有,他们教的是在VBA里面,对单元格或者数组排序,不是针对数据透视表的,但实际上原理一样。

这个增自定义序列和减自定义序列到底是怎么确认呢?原来Excel还会对自定义序列给一个序号,所以在增自定义序列的时候,你就得把这个序号记下来,在减的时候把那个序号写上去。我不知道为什么其他人说数据透视表的自定义序列好像怎么排都不是自己想要的效果,但就我个人的经验来说,只要你在Excel里增加了自定义序列,当你刷新数据,默认对某个已经自定义过的字段进行升序,那就是你定义的那个顺序,不需要在设置里面搞一大通。但实际上我也搞不懂,手动设置里很麻烦的东西到底是什么。为什么数据透视表里面的排序就不能像普通表格排序那样那么的直观。我要以什么字段排序、以什么标准排序是系统默认的还是自定义序列。当然,数据透视表里还得考虑一个问题,就是有可能是套叠了多个汇总条件的,如果你自定义的是最后一层条件,首先限制你的是前面的那些所有条件,所以你想最后的那个自定义序列完全按照你的想法排列,你只能把它放到最前面。数据透视表跟SQL比起来,我感觉运行速度会慢一点,可能因为我里面判断设置的东西比较多,所以需要闪那么一下才能结束,但是SQL虽然我已经有意识地关注结尾这个问题,但测试频繁以后,SQL是会出现一些莫名其妙的事故,当你把所有东西关掉再打开就正常了。相比之下,数据透视表不会这么神经。

用不同的方法实现同样的事情,得出一样的结果,这种感觉很好。在探索这个的过程中,会让我体会到二者的优劣,以后选择的时候,我就可以更有底气地数出1234。

2024-09
12

不完整的错

By xrspook @ 8:09:45 归类于: 烂日记

上一篇说到了数据汇总的问题。这个周一我就是按照上周五设定的那个步骤去做。在做的过程中,几乎没有发现什么问题,但是当我做完所有,一个个表格验证的时候却发现不知道为什么有些表格 SQL抓取的数据不完整,VBA从原始表格筛选、抓取的数据没有问题,但关键是SQL从本地的文件里提取到的那些数据不完成。第一次发现这个问题的时候,我看到的是为什么汇总数不一致。当我把SQL回退到第1步的时候发现第1步获取的数据就已经不完整。明明有50行数据,实际上只能提取到42行,重复多次依然是那个效果,但是偶然当我把文件关掉重开以后又好了。所以这个有时发生,有时不发生,到底是什么情况呢?当我打开VBA文件,一个一个测试的时候,发现前几个还好,后面就会出状况,可能是数据不完整,也可能是弹出一些莫名其妙的错误,但只要你把所有Excel都关掉,再重新打开又没有问题了,但是在测试几个以后,又会出现这样这样那样的状况。用VBA+ADO+SQL整理输出数据我已经实施过很多遍,之前从来没有遇到过这种神奇的状况。最后当我打开VBA脚本,无意之间拉到最后,居然发现cnn没有close,也没有初始化。cnn是个非常牛逼的东西,但是那个玩意也要耗费巨大的资源,在我出现数据状况的时候,我没有观察过我电脑的性能到底如何了,会不会CPU或者内存甚至二者都有点状况了。因为一次又一次的验证数据就意味着我得一次又一次调用cnn,光是打开又不关闭,最后就会出现奇奇怪怪的事情。当我把所有脚本都加上了结尾以后。从头到尾10个表以上的数据,一次性搞完,期间不会出现状况,所以多么神经质的行为才会导致了这种弱智事情呢?以前我倒真的从未试过这样。有过这样的经历以后就让我明白到cnn打开和关闭都必须是一个闭环,在一个宏里就得实现到位。如果某个宏被卡住了,半路停在那里,估计那个cnn是不正常的,当我又再次启动其它,只会让错误不断积累,最终导致崩溃,又或者是得不到我想要的东西。

写程序可以很快,但是调试却非常耗时间。这大概是所有码农都必须面对的事情,但实际上更多的人只顾写,只顾实现,而不考虑全盘,不尽可能地用全面数据测试,最终的结果就是使用的时候出现各种各样的未知情况。我不知道其他人到底是如何调试的,反正我真觉得调试的过程比写脚本更费神,因为要考虑所有的情况,哪怕某些条件可能非常极端,几乎不会碰到,但即便那样,一个健壮的程序应该依然能捕捉到那个错误,然后给出对应的反馈。比如我抓取不到数据了,我就应该弹框告诉人家我抓不到,因为有些操作的抓取数据以后才能进行,所以既然能判断抓不到数据,后面的也就不用继续了。

调试程序是一个很磨人的过程,这个过程重复多了,人自然而然就会向完美靠拢,即便我们一定不能成为完美的那个。

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