You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用APL从温度数据中筛选出气温最高的日期?

使用APL筛选气温最高的日期

已有的代码实现了华氏温度到摄氏温度的转换,并生成了包含日期和对应摄氏气温的表格:

days ← 'Monday' 'Tuesday' 'Wednesday' 'Thursday' 'Friday' 'Saturday' 'Sunday'
      temp ← 7 1 1 ⍴78 80 89 82 79 89 73
      Centigrade ← (5÷9) × {(⍵ - 32)} 
      AverageTemp ← days,⍪(+/÷≢)⍤1⊢Centigrade temp
      AverageTemp
┌─────────┬───────────┐
│Monday   │25.55555556│
├─────────┼───────────┤
│Tuesday  │26.66666667│
├─────────┼───────────┤
│Wednesday│31.66666667│
├─────────┼───────────┤
│Thursday │27.77777778│
├─────────┼───────────┤
│Friday   │26.11111111│
├─────────┼───────────┤
│Saturday │31.66666667│
├─────────┼───────────┤
│Sunday   │22.77777778│
└─────────┴───────────┘

要筛选出气温最高的日期,只需在现有代码基础上添加以下步骤:

maxTemp ← ⌈/AverageTemp[;2]  ⍝ 获取最高气温值
      hottestDays ← AverageTemp[AverageTemp[;2] = maxTemp; 1]  ⍝ 筛选出气温等于最高值的日期
      hottestDays
┌─────────┬─────────┐
│Wednesday│Saturday │
└─────────┴─────────┘

代码说明:

  • ⌈/AverageTemp[;2]:对AverageTemp的第二列(气温数据)取最大值,得到最高气温。
  • AverageTemp[;2] = maxTemp:生成布尔数组标记气温等于最高值的行。
  • AverageTemp[..., 1]:根据布尔数组筛选对应行,并提取第一列的日期数据。

内容的提问来源于stack exchange,提问作者bRaNdOn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 03:04:59