有一份孕期胎动自我监测,如下图所示。为了查看和打印方便,数据表设计成一周三行的格式,有孕周、日期和胎动三个字段。
想要把它转换成3列多行的形式,以便绘制折线图。
尝试用WPSAI写公式,看能不能一步到位整理出来。
添加图片注释,不超过 140 字(可选)
第一次
指令:将左侧第11行到第55行的数据整理为3列多行的形式,3列的字段分别为孕周、日期和胎动。
生成的公式=INDEX($B$10:$H$54,3*INT((ROW(A1)-1)/7)+1,MOD(ROW(A1)-1,7)+1)
似乎用单一公式难以实现,但WPS为AI设定的规则是用单一公式实现,最终给出的结果也不太对。
添加图片注释,不超过 140 字(可选)
第二次
用单一公式难以实现,所以我加了“可生成辅助列,多步实现。”
指令:将左侧第11行到第55行的数据整理为3列多行的形式,第1列为孕周,第2列为日期,第3列为胎动。可生成辅助列,多步实现。
添加图片注释,不超过 140 字(可选)
以下它的部分思考过程。
好的,我需要解决用户的问题,将左侧第11行到第55行的数据整理成三列:孕周、日期、胎动。并且允许生成辅助列,分步实现。
首先,我得仔细分析用户提供的表格结构。用户提供的表格内容看起来是一个孕期胎动记录表,从第10行开始,每个孕周占据三行:孕周行、日期行、胎动行。
例如,第10行是孕周26到26+6,第11行是对应的日期,如2月6日到2月9日,第12行是胎动次数。接下来的孕周27、28等也是类似的结构,每个孕周占据三行,然后重复这个模式直到第55行。
……
需要计算每个数据点在原始表格中的行和列。例如,孕周的数据在行号10,13,16,...每隔3行,而每个孕周行有多个列(B到H)。
……
例如,原始数据中孕周从第10行开始,每隔3行。
每个孕周行有从B到H的列(即列2到列8)。因此,可能需要调整列号的计算。例如,假设结果表格从第1行开始,那么ROW()返回当前行号。对于第1行,对应的原始孕周行是10,列是2(B列),然后依次循环。每个孕周有7天的数据,因此每7行换到下一个孕周行(即每隔7行,原始行增加3)。因此,辅助计算:孕周行的起始行是10,每隔3行。每个孕周有7天的数据,对应7列(B到H)。因此,对于结果中的第n行,对应的孕周索引为INT((n-1)/7),从而原始孕周行号为10 + 3*INT((n-1)/7)。对应的列号为2 + MOD(n-1,7)。
……
因此,公式中的列参数应为2 + MOD(...),因为B列是列2。综上所述,最终的公式应为:
孕周列(I11):=INDEX($A:$H,10+3*INT((ROW()-11)/7),2+MOD(ROW()-11,7))
日期列(J11):=INDEX($A:$H,11+3*INT((ROW()-11)/7),2+MOD(ROW()-11,7))
胎动列(K11):=INDEX($A:$H,12+3*INT((ROW()-11)/7),2+MOD(ROW()-11,7))
但需要确认行数的计算是否正确。例如,当ROW()=11时,ROW()-11=0,INT(0/7)=0,因此孕周行是10+0=10,列2+0=2(B列),即B10的内容是26,正确。日期行是10+3*0 +1=11,列2,即B11是2月6日。胎动行是10+3*0 +2=12,B12是60。正确。当ROW()=12时,MOD(12-11,7)=1,列2+1=3(C列),孕周行10+3*0=10,C10是26+1,日期行11+3*0=11,C11是2月7日,胎动12行C列56。正确。当ROW()=18时,ROW()-11=7,INT(7/7)=1,MOD(7,7)=0,因此孕周行10+3*1=13行,列2+0=2(B列),即B13是27,日期行13+1=14行,B14是2月10日,胎动行13+2=15行,B15是48。正确。因此,这些公式应该可以正确提取数据。因此,用户需要在I11输入孕周公式,J11日期,K11胎动,然后向下填充即可生成所有记录。
它完全理解了我的意思,但不知为何数据的起始行识别错误,不是第10行,而是第11行。因此最后给出的三个公式,需要修改一下才行。
孕周列(I11):=INDEX($A:$H,11+3*INT((ROW()-11)/7),2+MOD(ROW()-11,7))
日期列(J11):=INDEX($A:$H,12+3*INT((ROW()-11)/7),2+MOD(ROW()-11,7))
胎动列(K11):=INDEX($A:$H,13+3*INT((ROW()-11)/7),2+MOD(ROW()-11,7))
然后用修改过的公式分别充填,就正确了。但它不能自动充填到位,需要手动下拉,观察数据才能知道到没到位。
添加图片注释,不超过 140 字(可选)
总结
1.我想第一次尝试时的错误,也是发生在这个第10行的识别错误。
2. AI写公式,可以记录历史指令,但不记录思考过程。
3.不启用深度思考,WPSAI无法理解复杂指令
4. AI写公式还是不能追问
5. WPS好像给AI写公式设置了生成单一公式的规则。但有些问题单一公式无法搞定,得分步生成几个公式,才能解决。
以上首发于WPS社区
创作者俱乐部成员
创作者俱乐部成员